google-cloud-container-v1beta1 0.9.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -29,6 +29,8 @@ module Google
29
29
  #
30
30
  # The following parameters are supported.
31
31
  #
32
+ # net.core.busy_poll
33
+ # net.core.busy_read
32
34
  # net.core.netdev_max_backlog
33
35
  # net.core.rmem_max
34
36
  # net.core.wmem_default
@@ -38,6 +40,9 @@ module Google
38
40
  # net.ipv4.tcp_rmem
39
41
  # net.ipv4.tcp_wmem
40
42
  # net.ipv4.tcp_tw_reuse
43
+ # @!attribute [rw] cgroup_mode
44
+ # @return [::Google::Cloud::Container::V1beta1::LinuxNodeConfig::CgroupMode]
45
+ # cgroup_mode specifies the cgroup mode to be used on the node.
41
46
  class LinuxNodeConfig
42
47
  include ::Google::Protobuf::MessageExts
43
48
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -50,6 +55,21 @@ module Google
50
55
  include ::Google::Protobuf::MessageExts
51
56
  extend ::Google::Protobuf::MessageExts::ClassMethods
52
57
  end
58
+
59
+ # Possible cgroup modes that can be used.
60
+ module CgroupMode
61
+ # CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used.
62
+ # The default for the GKE node OS image will be used.
63
+ CGROUP_MODE_UNSPECIFIED = 0
64
+
65
+ # CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on
66
+ # the node image.
67
+ CGROUP_MODE_V1 = 1
68
+
69
+ # CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on
70
+ # the node image.
71
+ CGROUP_MODE_V2 = 2
72
+ end
53
73
  end
54
74
 
55
75
  # Node kubelet configs.
@@ -85,12 +105,24 @@ module Google
85
105
  # fraction and a unit suffix, such as "300ms".
86
106
  # Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
87
107
  # The value must be a positive duration.
108
+ # @!attribute [rw] pod_pids_limit
109
+ # @return [::Integer]
110
+ # Set the Pod PID limits. See
111
+ # https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits
112
+ #
113
+ # Controls the maximum number of processes allowed to run in a pod. The value
114
+ # must be greater than or equal to 1024 and less than 4194304.
88
115
  class NodeKubeletConfig
89
116
  include ::Google::Protobuf::MessageExts
90
117
  extend ::Google::Protobuf::MessageExts::ClassMethods
91
118
  end
92
119
 
93
120
  # Parameters that describe the nodes in a cluster.
121
+ #
122
+ # GKE Autopilot clusters do not
123
+ # recognize parameters in `NodeConfig`. Use
124
+ # {::Google::Cloud::Container::V1beta1::AutoprovisioningNodePoolDefaults AutoprovisioningNodePoolDefaults}
125
+ # instead.
94
126
  # @!attribute [rw] machine_type
95
127
  # @return [::String]
96
128
  # The name of a Google Compute Engine [machine
@@ -134,6 +166,7 @@ module Google
134
166
  # in length. These are reflected as part of a URL in the metadata server.
135
167
  # Additionally, to avoid ambiguity, keys must not conflict with any other
136
168
  # metadata keys for the project or be one of the reserved keys:
169
+ #
137
170
  # - "cluster-location"
138
171
  # - "cluster-name"
139
172
  # - "cluster-uid"
@@ -270,6 +303,10 @@ module Google
270
303
  # @return [::Boolean]
271
304
  # Spot flag for enabling Spot VM, which is a rebrand of
272
305
  # the existing preemptible flag.
306
+ # @!attribute [rw] confidential_nodes
307
+ # @return [::Google::Cloud::Container::V1beta1::ConfidentialNodes]
308
+ # Confidential nodes config.
309
+ # All the nodes in the node pool will be Confidential VM once enabled.
273
310
  class NodeConfig
274
311
  include ::Google::Protobuf::MessageExts
275
312
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -346,9 +383,34 @@ module Google
346
383
  # Only applicable if `ip_allocation_policy.use_ip_aliases` is true.
347
384
  #
348
385
  # This field cannot be changed after the node pool has been created.
386
+ # @!attribute [rw] network_performance_config
387
+ # @return [::Google::Cloud::Container::V1beta1::NodeNetworkConfig::NetworkPerformanceConfig]
388
+ # Network bandwidth tier configuration.
349
389
  class NodeNetworkConfig
350
390
  include ::Google::Protobuf::MessageExts
351
391
  extend ::Google::Protobuf::MessageExts::ClassMethods
392
+
393
+ # Configuration of all network bandwidth tiers
394
+ # @!attribute [rw] total_egress_bandwidth_tier
395
+ # @return [::Google::Cloud::Container::V1beta1::NodeNetworkConfig::NetworkPerformanceConfig::Tier]
396
+ # Specifies the total network bandwidth tier for the NodePool.
397
+ # @!attribute [rw] external_ip_egress_bandwidth_tier
398
+ # @return [::Google::Cloud::Container::V1beta1::NodeNetworkConfig::NetworkPerformanceConfig::Tier]
399
+ # Specifies the network bandwidth tier for the NodePool for traffic to
400
+ # external/public IP addresses.
401
+ class NetworkPerformanceConfig
402
+ include ::Google::Protobuf::MessageExts
403
+ extend ::Google::Protobuf::MessageExts::ClassMethods
404
+
405
+ # Node network tier
406
+ module Tier
407
+ # Default value
408
+ TIER_UNSPECIFIED = 0
409
+
410
+ # Higher bandwidth, actual values based on VM size.
411
+ TIER_1 = 1
412
+ end
413
+ end
352
414
  end
353
415
 
354
416
  # A set of Shielded Instance options.
@@ -1014,19 +1076,74 @@ module Google
1014
1076
  # This is used in conjunction with use_ip_aliases. It cannot be true if
1015
1077
  # use_ip_aliases is true. If both use_ip_aliases and use_routes are false,
1016
1078
  # then the server picks the default IP allocation mode
1079
+ # @!attribute [rw] stack_type
1080
+ # @return [::Google::Cloud::Container::V1beta1::IPAllocationPolicy::StackType]
1081
+ # IP stack type
1082
+ # @!attribute [rw] ipv6_access_type
1083
+ # @return [::Google::Cloud::Container::V1beta1::IPAllocationPolicy::IPv6AccessType]
1084
+ # The ipv6 access type (internal or external) when create_subnetwork is true
1085
+ # @!attribute [r] subnet_ipv6_cidr_block
1086
+ # @return [::String]
1087
+ # Output only. [Output only] The subnet's IPv6 CIDR block used by nodes and pods.
1088
+ # @!attribute [r] services_ipv6_cidr_block
1089
+ # @return [::String]
1090
+ # Output only. [Output only] The services IPv6 CIDR block for the cluster.
1017
1091
  class IPAllocationPolicy
1018
1092
  include ::Google::Protobuf::MessageExts
1019
1093
  extend ::Google::Protobuf::MessageExts::ClassMethods
1094
+
1095
+ # IP stack type
1096
+ module StackType
1097
+ # By default, the clusters will be IPV4 only
1098
+ STACK_TYPE_UNSPECIFIED = 0
1099
+
1100
+ # The value used if the cluster is a IPV4 only
1101
+ IPV4 = 1
1102
+
1103
+ # The value used if the cluster is a dual stack cluster
1104
+ IPV4_IPV6 = 2
1105
+ end
1106
+
1107
+ # IPv6 access type
1108
+ module IPv6AccessType
1109
+ # Default value, will be defaulted as type external.
1110
+ IPV6_ACCESS_TYPE_UNSPECIFIED = 0
1111
+
1112
+ # Access type internal (all v6 addresses are internal IPs)
1113
+ INTERNAL = 1
1114
+
1115
+ # Access type external (all v6 addresses are external IPs)
1116
+ EXTERNAL = 2
1117
+ end
1020
1118
  end
1021
1119
 
1022
1120
  # Configuration for Binary Authorization.
1023
1121
  # @!attribute [rw] enabled
1024
1122
  # @return [::Boolean]
1025
1123
  # Enable Binary Authorization for this cluster. If enabled, all container
1026
- # images will be validated by Google Binauthz.
1124
+ # images will be validated by Binary Authorization.
1125
+ # @!attribute [rw] evaluation_mode
1126
+ # @return [::Google::Cloud::Container::V1beta1::BinaryAuthorization::EvaluationMode]
1127
+ # Mode of operation for binauthz policy evaluation. Currently the only
1128
+ # options are equivalent to enable/disable. If unspecified, defaults to
1129
+ # DISABLED.
1027
1130
  class BinaryAuthorization
1028
1131
  include ::Google::Protobuf::MessageExts
1029
1132
  extend ::Google::Protobuf::MessageExts::ClassMethods
1133
+
1134
+ # Binary Authorization mode of operation.
1135
+ module EvaluationMode
1136
+ # Default value
1137
+ EVALUATION_MODE_UNSPECIFIED = 0
1138
+
1139
+ # Disable BinaryAuthorization
1140
+ DISABLED = 1
1141
+
1142
+ # Enforce Kubernetes admission requests with BinaryAuthorization using the
1143
+ # project's singleton policy. This is equivalent to setting the
1144
+ # enabled boolean to true.
1145
+ PROJECT_SINGLETON_POLICY_ENFORCE = 2
1146
+ end
1030
1147
  end
1031
1148
 
1032
1149
  # Configuration for the PodSecurityPolicy feature.
@@ -1280,6 +1397,12 @@ module Google
1280
1397
  # @return [::Google::Cloud::Container::V1beta1::MeshCertificates]
1281
1398
  # Configuration for issuance of mTLS keys and certificates to Kubernetes
1282
1399
  # pods.
1400
+ # @!attribute [rw] workload_alts_config
1401
+ # @return [::Google::Cloud::Container::V1beta1::WorkloadALTSConfig]
1402
+ # Configuration for direct-path (via ALTS) with workload identity.
1403
+ # @!attribute [rw] cost_management_config
1404
+ # @return [::Google::Cloud::Container::V1beta1::CostManagementConfig]
1405
+ # Configuration for the fine-grained cost management feature.
1283
1406
  # @!attribute [rw] cluster_telemetry
1284
1407
  # @return [::Google::Cloud::Container::V1beta1::ClusterTelemetry]
1285
1408
  # Telemetry integration for the cluster.
@@ -1291,7 +1414,8 @@ module Google
1291
1414
  # Notification configuration of the cluster.
1292
1415
  # @!attribute [rw] confidential_nodes
1293
1416
  # @return [::Google::Cloud::Container::V1beta1::ConfidentialNodes]
1294
- # Configuration of Confidential Nodes
1417
+ # Configuration of Confidential Nodes.
1418
+ # All the nodes in the cluster will be Confidential VM once enabled.
1295
1419
  # @!attribute [rw] identity_service_config
1296
1420
  # @return [::Google::Cloud::Container::V1beta1::IdentityServiceConfig]
1297
1421
  # Configuration for Identity Service component.
@@ -1413,6 +1537,13 @@ module Google
1413
1537
  # @!attribute [rw] monitoring_config
1414
1538
  # @return [::Google::Cloud::Container::V1beta1::MonitoringConfig]
1415
1539
  # Monitoring configuration for the cluster.
1540
+ # @!attribute [rw] node_pool_auto_config
1541
+ # @return [::Google::Cloud::Container::V1beta1::NodePoolAutoConfig]
1542
+ # Node pool configs that apply to all auto-provisioned node pools
1543
+ # in autopilot clusters and node auto-provisioning enabled clusters.
1544
+ # @!attribute [rw] protect_config
1545
+ # @return [::Google::Cloud::Container::V1beta1::ProtectConfig]
1546
+ # Enable/Disable Protect API features for the cluster.
1416
1547
  class Cluster
1417
1548
  include ::Google::Protobuf::MessageExts
1418
1549
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1456,6 +1587,48 @@ module Google
1456
1587
  end
1457
1588
  end
1458
1589
 
1590
+ # WorkloadConfig defines the flags to enable or disable the
1591
+ # workload configurations for the cluster.
1592
+ # @!attribute [rw] audit_mode
1593
+ # @return [::Google::Cloud::Container::V1beta1::WorkloadConfig::Mode]
1594
+ # Sets which mode of auditing should be used for the cluster's workloads.
1595
+ class WorkloadConfig
1596
+ include ::Google::Protobuf::MessageExts
1597
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1598
+
1599
+ # Mode defines how to audit the workload configs.
1600
+ module Mode
1601
+ # Default value meaning that no mode has been specified.
1602
+ MODE_UNSPECIFIED = 0
1603
+
1604
+ # This disables Workload Configuration auditing on the cluster,
1605
+ # meaning that nothing is surfaced.
1606
+ DISABLED = 1
1607
+
1608
+ # Applies the default set of policy auditing to a cluster's workloads.
1609
+ BASIC = 4
1610
+
1611
+ # Surfaces configurations that are not in line with the
1612
+ # Pod Security Standard Baseline policy.
1613
+ BASELINE = 2
1614
+
1615
+ # Surfaces configurations that are not in line with the
1616
+ # Pod Security Standard Restricted policy.
1617
+ RESTRICTED = 3
1618
+ end
1619
+ end
1620
+
1621
+ # ProtectConfig defines the flags needed to enable/disable features for the
1622
+ # Protect API.
1623
+ # @!attribute [rw] workload_config
1624
+ # @return [::Google::Cloud::Container::V1beta1::WorkloadConfig]
1625
+ # WorkloadConfig defines which actions are enabled for a cluster's workload
1626
+ # configurations.
1627
+ class ProtectConfig
1628
+ include ::Google::Protobuf::MessageExts
1629
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1630
+ end
1631
+
1459
1632
  # Subset of Nodepool message that has defaults.
1460
1633
  # @!attribute [rw] node_config_defaults
1461
1634
  # @return [::Google::Cloud::Container::V1beta1::NodeConfigDefaults]
@@ -1468,12 +1641,25 @@ module Google
1468
1641
  # Subset of NodeConfig message that has defaults.
1469
1642
  # @!attribute [rw] gcfs_config
1470
1643
  # @return [::Google::Cloud::Container::V1beta1::GcfsConfig]
1471
- # GCFS (Google Container File System, a.k.a Riptide) options.
1644
+ # GCFS (Google Container File System, a.k.a. Riptide) options.
1472
1645
  class NodeConfigDefaults
1473
1646
  include ::Google::Protobuf::MessageExts
1474
1647
  extend ::Google::Protobuf::MessageExts::ClassMethods
1475
1648
  end
1476
1649
 
1650
+ # node pool configs that apply to all auto-provisioned node pools
1651
+ # in autopilot clusters and node auto-provisioning enabled clusters
1652
+ # @!attribute [rw] network_tags
1653
+ # @return [::Google::Cloud::Container::V1beta1::NetworkTags]
1654
+ # The list of instance tags applied to all nodes. Tags are used to identify
1655
+ # valid sources or targets for network firewalls and are specified by
1656
+ # the client during cluster creation. Each tag within the list
1657
+ # must comply with RFC1035.
1658
+ class NodePoolAutoConfig
1659
+ include ::Google::Protobuf::MessageExts
1660
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1661
+ end
1662
+
1477
1663
  # ClusterUpdate describes an update to the cluster. Exactly one update can
1478
1664
  # be applied to a cluster with each request, so at most one field can be
1479
1665
  # provided.
@@ -1623,9 +1809,15 @@ module Google
1623
1809
  # @return [::Google::Cloud::Container::V1beta1::MeshCertificates]
1624
1810
  # Configuration for issuance of mTLS keys and certificates to Kubernetes
1625
1811
  # pods.
1812
+ # @!attribute [rw] desired_workload_alts_config
1813
+ # @return [::Google::Cloud::Container::V1beta1::WorkloadALTSConfig]
1814
+ # Configuration for direct-path (via ALTS) with workload identity.
1626
1815
  # @!attribute [rw] desired_shielded_nodes
1627
1816
  # @return [::Google::Cloud::Container::V1beta1::ShieldedNodes]
1628
1817
  # Configuration for Shielded Nodes.
1818
+ # @!attribute [rw] desired_cost_management_config
1819
+ # @return [::Google::Cloud::Container::V1beta1::CostManagementConfig]
1820
+ # The desired configuration for the fine-grained cost management feature.
1629
1821
  # @!attribute [rw] desired_master
1630
1822
  # @return [::Google::Cloud::Container::V1beta1::Master]
1631
1823
  # Configuration for master components.
@@ -1649,6 +1841,13 @@ module Google
1649
1841
  # @!attribute [rw] desired_identity_service_config
1650
1842
  # @return [::Google::Cloud::Container::V1beta1::IdentityServiceConfig]
1651
1843
  # The desired Identity Service component configuration.
1844
+ # @!attribute [rw] desired_node_pool_auto_config_network_tags
1845
+ # @return [::Google::Cloud::Container::V1beta1::NetworkTags]
1846
+ # The desired network tags that apply to all auto-provisioned node pools
1847
+ # in autopilot clusters and node auto-provisioning enabled clusters.
1848
+ # @!attribute [rw] desired_protect_config
1849
+ # @return [::Google::Cloud::Container::V1beta1::ProtectConfig]
1850
+ # Enable/Disable Protect API features for the cluster.
1652
1851
  class ClusterUpdate
1653
1852
  include ::Google::Protobuf::MessageExts
1654
1853
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1836,7 +2035,7 @@ module Google
1836
2035
  # @!attribute [rw] project_id
1837
2036
  # @return [::String]
1838
2037
  # Required. Deprecated. The Google Developers Console [project ID or project
1839
- # number](https://support.google.com/cloud/answer/6158840).
2038
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1840
2039
  # This field has been deprecated and replaced by the parent field.
1841
2040
  # @!attribute [rw] zone
1842
2041
  # @return [::String]
@@ -1861,7 +2060,7 @@ module Google
1861
2060
  # @!attribute [rw] project_id
1862
2061
  # @return [::String]
1863
2062
  # Required. Deprecated. The Google Developers Console [project ID or project
1864
- # number](https://support.google.com/cloud/answer/6158840).
2063
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1865
2064
  # This field has been deprecated and replaced by the name field.
1866
2065
  # @!attribute [rw] zone
1867
2066
  # @return [::String]
@@ -1886,7 +2085,7 @@ module Google
1886
2085
  # @!attribute [rw] project_id
1887
2086
  # @return [::String]
1888
2087
  # Required. Deprecated. The Google Developers Console [project ID or project
1889
- # number](https://support.google.com/cloud/answer/6158840).
2088
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1890
2089
  # This field has been deprecated and replaced by the name field.
1891
2090
  # @!attribute [rw] zone
1892
2091
  # @return [::String]
@@ -1914,7 +2113,7 @@ module Google
1914
2113
  # @!attribute [rw] project_id
1915
2114
  # @return [::String]
1916
2115
  # Required. Deprecated. The Google Developers Console [project ID or project
1917
- # number](https://support.google.com/cloud/answer/6158840).
2116
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1918
2117
  # This field has been deprecated and replaced by the name field.
1919
2118
  # @!attribute [rw] zone
1920
2119
  # @return [::String]
@@ -1985,9 +2184,16 @@ module Google
1985
2184
  # @!attribute [rw] kubelet_config
1986
2185
  # @return [::Google::Cloud::Container::V1beta1::NodeKubeletConfig]
1987
2186
  # Node kubelet configs.
2187
+ # @!attribute [rw] node_network_config
2188
+ # @return [::Google::Cloud::Container::V1beta1::NodeNetworkConfig]
2189
+ # Node network config.
1988
2190
  # @!attribute [rw] gcfs_config
1989
2191
  # @return [::Google::Cloud::Container::V1beta1::GcfsConfig]
1990
2192
  # GCFS config.
2193
+ # @!attribute [rw] confidential_nodes
2194
+ # @return [::Google::Cloud::Container::V1beta1::ConfidentialNodes]
2195
+ # Confidential nodes config.
2196
+ # All the nodes in the node pool will be Confidential VM once enabled.
1991
2197
  # @!attribute [rw] gvnic
1992
2198
  # @return [::Google::Cloud::Container::V1beta1::VirtualNIC]
1993
2199
  # Enable or disable gvnic on the node pool.
@@ -2000,7 +2206,7 @@ module Google
2000
2206
  # @!attribute [rw] project_id
2001
2207
  # @return [::String]
2002
2208
  # Required. Deprecated. The Google Developers Console [project ID or project
2003
- # number](https://support.google.com/cloud/answer/6158840).
2209
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2004
2210
  # This field has been deprecated and replaced by the name field.
2005
2211
  # @!attribute [rw] zone
2006
2212
  # @return [::String]
@@ -2033,7 +2239,7 @@ module Google
2033
2239
  # @!attribute [rw] project_id
2034
2240
  # @return [::String]
2035
2241
  # Required. Deprecated. The Google Developers Console [project ID or project
2036
- # number](https://support.google.com/cloud/answer/6158840).
2242
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2037
2243
  # This field has been deprecated and replaced by the name field.
2038
2244
  # @!attribute [rw] zone
2039
2245
  # @return [::String]
@@ -2071,7 +2277,7 @@ module Google
2071
2277
  # @!attribute [rw] project_id
2072
2278
  # @return [::String]
2073
2279
  # Required. Deprecated. The Google Developers Console [project ID or project
2074
- # number](https://support.google.com/cloud/answer/6158840).
2280
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2075
2281
  # This field has been deprecated and replaced by the name field.
2076
2282
  # @!attribute [rw] zone
2077
2283
  # @return [::String]
@@ -2109,7 +2315,7 @@ module Google
2109
2315
  # @!attribute [rw] project_id
2110
2316
  # @return [::String]
2111
2317
  # Required. Deprecated. The Google Developers Console [project ID or project
2112
- # number](https://support.google.com/cloud/answer/6158840).
2318
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2113
2319
  # This field has been deprecated and replaced by the name field.
2114
2320
  # @!attribute [rw] zone
2115
2321
  # @return [::String]
@@ -2138,7 +2344,7 @@ module Google
2138
2344
  # @!attribute [rw] project_id
2139
2345
  # @return [::String]
2140
2346
  # Required. Deprecated. The Google Developers Console [project ID or project
2141
- # number](https://support.google.com/cloud/answer/6158840).
2347
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2142
2348
  # This field has been deprecated and replaced by the name field.
2143
2349
  # @!attribute [rw] zone
2144
2350
  # @return [::String]
@@ -2172,7 +2378,7 @@ module Google
2172
2378
  # @!attribute [rw] project_id
2173
2379
  # @return [::String]
2174
2380
  # Required. Deprecated. The Google Developers Console [project ID or project
2175
- # number](https://support.google.com/cloud/answer/6158840).
2381
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2176
2382
  # This field has been deprecated and replaced by the name field.
2177
2383
  # @!attribute [rw] zone
2178
2384
  # @return [::String]
@@ -2209,7 +2415,7 @@ module Google
2209
2415
  # @!attribute [rw] project_id
2210
2416
  # @return [::String]
2211
2417
  # Required. Deprecated. The Google Developers Console [project ID or project
2212
- # number](https://support.google.com/cloud/answer/6158840).
2418
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2213
2419
  # This field has been deprecated and replaced by the name field.
2214
2420
  # @!attribute [rw] zone
2215
2421
  # @return [::String]
@@ -2258,7 +2464,7 @@ module Google
2258
2464
  # @!attribute [rw] project_id
2259
2465
  # @return [::String]
2260
2466
  # Required. Deprecated. The Google Developers Console [project ID or project
2261
- # number](https://support.google.com/cloud/answer/6158840).
2467
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2262
2468
  # This field has been deprecated and replaced by the name field.
2263
2469
  # @!attribute [rw] zone
2264
2470
  # @return [::String]
@@ -2283,7 +2489,7 @@ module Google
2283
2489
  # @!attribute [rw] project_id
2284
2490
  # @return [::String]
2285
2491
  # Required. Deprecated. The Google Developers Console [project ID or project
2286
- # number](https://support.google.com/cloud/answer/6158840).
2492
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2287
2493
  # This field has been deprecated and replaced by the parent field.
2288
2494
  # @!attribute [rw] zone
2289
2495
  # @return [::String]
@@ -2319,7 +2525,7 @@ module Google
2319
2525
  # @!attribute [rw] project_id
2320
2526
  # @return [::String]
2321
2527
  # Required. Deprecated. The Google Developers Console [project ID or project
2322
- # number](https://support.google.com/cloud/answer/6158840).
2528
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2323
2529
  # This field has been deprecated and replaced by the name field.
2324
2530
  # @!attribute [rw] zone
2325
2531
  # @return [::String]
@@ -2344,7 +2550,7 @@ module Google
2344
2550
  # @!attribute [rw] project_id
2345
2551
  # @return [::String]
2346
2552
  # Required. Deprecated. The Google Developers Console [project ID or project
2347
- # number](https://support.google.com/cloud/answer/6158840).
2553
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2348
2554
  # This field has been deprecated and replaced by the parent field.
2349
2555
  # @!attribute [rw] zone
2350
2556
  # @return [::String]
@@ -2366,7 +2572,7 @@ module Google
2366
2572
  # @!attribute [rw] project_id
2367
2573
  # @return [::String]
2368
2574
  # Required. Deprecated. The Google Developers Console [project ID or project
2369
- # number](https://support.google.com/cloud/answer/6158840).
2575
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2370
2576
  # This field has been deprecated and replaced by the name field.
2371
2577
  # @!attribute [rw] zone
2372
2578
  # @return [::String]
@@ -2404,7 +2610,7 @@ module Google
2404
2610
  # @!attribute [rw] project_id
2405
2611
  # @return [::String]
2406
2612
  # Required. Deprecated. The Google Developers Console [project ID or project
2407
- # number](https://support.google.com/cloud/answer/6158840).
2613
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2408
2614
  # This field has been deprecated and replaced by the name field.
2409
2615
  # @!attribute [rw] zone
2410
2616
  # @return [::String]
@@ -2517,7 +2723,7 @@ module Google
2517
2723
  # @!attribute [rw] project_id
2518
2724
  # @return [::String]
2519
2725
  # Required. Deprecated. The Google Developers Console [project ID or project
2520
- # number](https://developers.google.com/console/help/new/#projectnumber).
2726
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2521
2727
  # This field has been deprecated and replaced by the parent field.
2522
2728
  # @!attribute [rw] zone
2523
2729
  # @return [::String]
@@ -2534,7 +2740,7 @@ module Google
2534
2740
  # Required. The node pool to create.
2535
2741
  # @!attribute [rw] parent
2536
2742
  # @return [::String]
2537
- # The parent (project, location, cluster id) where the node pool will be
2743
+ # The parent (project, location, cluster name) where the node pool will be
2538
2744
  # created. Specified in the format
2539
2745
  # `projects/*/locations/*/clusters/*`.
2540
2746
  class CreateNodePoolRequest
@@ -2546,7 +2752,7 @@ module Google
2546
2752
  # @!attribute [rw] project_id
2547
2753
  # @return [::String]
2548
2754
  # Required. Deprecated. The Google Developers Console [project ID or project
2549
- # number](https://developers.google.com/console/help/new/#projectnumber).
2755
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2550
2756
  # This field has been deprecated and replaced by the name field.
2551
2757
  # @!attribute [rw] zone
2552
2758
  # @return [::String]
@@ -2576,7 +2782,7 @@ module Google
2576
2782
  # @!attribute [rw] project_id
2577
2783
  # @return [::String]
2578
2784
  # Required. Deprecated. The Google Developers Console [project ID or project
2579
- # number](https://developers.google.com/console/help/new/#projectnumber).
2785
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2580
2786
  # This field has been deprecated and replaced by the parent field.
2581
2787
  # @!attribute [rw] zone
2582
2788
  # @return [::String]
@@ -2590,7 +2796,7 @@ module Google
2590
2796
  # This field has been deprecated and replaced by the parent field.
2591
2797
  # @!attribute [rw] parent
2592
2798
  # @return [::String]
2593
- # The parent (project, location, cluster id) where the node pools will be
2799
+ # The parent (project, location, cluster name) where the node pools will be
2594
2800
  # listed. Specified in the format `projects/*/locations/*/clusters/*`.
2595
2801
  class ListNodePoolsRequest
2596
2802
  include ::Google::Protobuf::MessageExts
@@ -2601,7 +2807,7 @@ module Google
2601
2807
  # @!attribute [rw] project_id
2602
2808
  # @return [::String]
2603
2809
  # Required. Deprecated. The Google Developers Console [project ID or project
2604
- # number](https://developers.google.com/console/help/new/#projectnumber).
2810
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2605
2811
  # This field has been deprecated and replaced by the name field.
2606
2812
  # @!attribute [rw] zone
2607
2813
  # @return [::String]
@@ -2627,6 +2833,35 @@ module Google
2627
2833
  extend ::Google::Protobuf::MessageExts::ClassMethods
2628
2834
  end
2629
2835
 
2836
+ # Settings for blue-green upgrade.
2837
+ # @!attribute [rw] standard_rollout_policy
2838
+ # @return [::Google::Cloud::Container::V1beta1::BlueGreenSettings::StandardRolloutPolicy]
2839
+ # Standard policy for the blue-green upgrade.
2840
+ # @!attribute [rw] node_pool_soak_duration
2841
+ # @return [::Google::Protobuf::Duration]
2842
+ # Time needed after draining entire blue pool. After this period, blue pool
2843
+ # will be cleaned up.
2844
+ class BlueGreenSettings
2845
+ include ::Google::Protobuf::MessageExts
2846
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2847
+
2848
+ # Standard rollout policy is the default policy for blue-green.
2849
+ # @!attribute [rw] batch_percentage
2850
+ # @return [::Float]
2851
+ # Percentage of the bool pool nodes to drain in a batch.
2852
+ # The range of this field should be (0.0, 1.0].
2853
+ # @!attribute [rw] batch_node_count
2854
+ # @return [::Integer]
2855
+ # Number of blue nodes to drain in a batch.
2856
+ # @!attribute [rw] batch_soak_duration
2857
+ # @return [::Google::Protobuf::Duration]
2858
+ # Soak time after each batch gets drained. Default to zero.
2859
+ class StandardRolloutPolicy
2860
+ include ::Google::Protobuf::MessageExts
2861
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2862
+ end
2863
+ end
2864
+
2630
2865
  # NodePool contains the name and configuration for a cluster's node pool.
2631
2866
  # Node pools are a set of nodes (i.e. VM's), with a common configuration and
2632
2867
  # specification, under the control of the cluster master. They may have a set
@@ -2695,6 +2930,8 @@ module Google
2695
2930
  # [Output only] The resource URLs of the [managed instance
2696
2931
  # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
2697
2932
  # associated with this node pool.
2933
+ # During the node pool blue-green upgrade operation, the URLs contain both
2934
+ # blue and green resources.
2698
2935
  # @!attribute [rw] status
2699
2936
  # @return [::Google::Cloud::Container::V1beta1::NodePool::Status]
2700
2937
  # [Output only] The status of the nodes in this pool instance.
@@ -2726,10 +2963,36 @@ module Google
2726
2963
  # @!attribute [rw] placement_policy
2727
2964
  # @return [::Google::Cloud::Container::V1beta1::NodePool::PlacementPolicy]
2728
2965
  # Specifies the node placement policy.
2966
+ # @!attribute [r] update_info
2967
+ # @return [::Google::Cloud::Container::V1beta1::NodePool::UpdateInfo]
2968
+ # Output only. [Output only] Update info contains relevant information during a node
2969
+ # pool update.
2729
2970
  class NodePool
2730
2971
  include ::Google::Protobuf::MessageExts
2731
2972
  extend ::Google::Protobuf::MessageExts::ClassMethods
2732
2973
 
2974
+ # These upgrade settings configure the upgrade strategy for the node pool.
2975
+ # Use strategy to switch between the strategies applied to the node pool.
2976
+ #
2977
+ # If the strategy is SURGE, use max_surge and max_unavailable to control
2978
+ # the level of parallelism and the level of disruption caused by upgrade.
2979
+ # 1. maxSurge controls the number of additional nodes that can be added to
2980
+ # the node pool temporarily for the time of the upgrade to increase the
2981
+ # number of available nodes.
2982
+ # 2. maxUnavailable controls the number of nodes that can be simultaneously
2983
+ # unavailable.
2984
+ # 3. (maxUnavailable + maxSurge) determines the level of parallelism (how
2985
+ # many nodes are being upgraded at the same time).
2986
+ #
2987
+ # If the strategy is BLUE_GREEN, use blue_green_settings to configure the
2988
+ # blue-green upgrade related settings.
2989
+ # 1. standard_rollout_policy is the default policy. The policy is used to
2990
+ # control the way blue pool gets drained. The draining is executed in the
2991
+ # batch mode. The batch size could be specified as either percentage of the
2992
+ # node pool size or the number of nodes. batch_soak_duration is the soak
2993
+ # time after each batch gets drained.
2994
+ # 2. node_pool_soak_duration is the soak time after all blue nodes are
2995
+ # drained. After this period, the blue pool nodes will be deleted.
2733
2996
  # @!attribute [rw] max_surge
2734
2997
  # @return [::Integer]
2735
2998
  # The maximum number of nodes that can be created beyond the current size
@@ -2739,11 +3002,80 @@ module Google
2739
3002
  # The maximum number of nodes that can be simultaneously unavailable during
2740
3003
  # the upgrade process. A node is considered available if its status is
2741
3004
  # Ready.
3005
+ # @!attribute [rw] strategy
3006
+ # @return [::Google::Cloud::Container::V1beta1::NodePoolUpdateStrategy]
3007
+ # Update strategy of the node pool.
3008
+ # @!attribute [rw] blue_green_settings
3009
+ # @return [::Google::Cloud::Container::V1beta1::BlueGreenSettings]
3010
+ # Settings for blue-green upgrade strategy.
2742
3011
  class UpgradeSettings
2743
3012
  include ::Google::Protobuf::MessageExts
2744
3013
  extend ::Google::Protobuf::MessageExts::ClassMethods
2745
3014
  end
2746
3015
 
3016
+ # UpdateInfo contains resource (instance groups, etc), status and other
3017
+ # intermediate information relevant to a node pool upgrade.
3018
+ # @!attribute [rw] blue_green_info
3019
+ # @return [::Google::Cloud::Container::V1beta1::NodePool::UpdateInfo::BlueGreenInfo]
3020
+ # Information of a blue-green upgrade.
3021
+ class UpdateInfo
3022
+ include ::Google::Protobuf::MessageExts
3023
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3024
+
3025
+ # Information relevant to blue-green upgrade.
3026
+ # @!attribute [rw] phase
3027
+ # @return [::Google::Cloud::Container::V1beta1::NodePool::UpdateInfo::BlueGreenInfo::Phase]
3028
+ # Current blue-green upgrade phase.
3029
+ # @!attribute [rw] blue_instance_group_urls
3030
+ # @return [::Array<::String>]
3031
+ # The resource URLs of the [managed instance groups]
3032
+ # (/compute/docs/instance-groups/creating-groups-of-managed-instances)
3033
+ # associated with blue pool.
3034
+ # @!attribute [rw] green_instance_group_urls
3035
+ # @return [::Array<::String>]
3036
+ # The resource URLs of the [managed instance groups]
3037
+ # (/compute/docs/instance-groups/creating-groups-of-managed-instances)
3038
+ # associated with green pool.
3039
+ # @!attribute [rw] blue_pool_deletion_start_time
3040
+ # @return [::String]
3041
+ # Time to start deleting blue pool to complete blue-green upgrade,
3042
+ # in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3043
+ # @!attribute [rw] green_pool_version
3044
+ # @return [::String]
3045
+ # Version of green pool.
3046
+ class BlueGreenInfo
3047
+ include ::Google::Protobuf::MessageExts
3048
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3049
+
3050
+ # Phase represents the different stages blue-green upgrade is running in.
3051
+ module Phase
3052
+ # Unspecified phase.
3053
+ PHASE_UNSPECIFIED = 0
3054
+
3055
+ # blue-green upgrade has been initiated.
3056
+ UPDATE_STARTED = 1
3057
+
3058
+ # Start creating green pool nodes.
3059
+ CREATING_GREEN_POOL = 2
3060
+
3061
+ # Start cordoning blue pool nodes.
3062
+ CORDONING_BLUE_POOL = 3
3063
+
3064
+ # Start draining blue pool nodes.
3065
+ DRAINING_BLUE_POOL = 4
3066
+
3067
+ # Start soaking time after draining entire blue pool.
3068
+ NODE_POOL_SOAKING = 5
3069
+
3070
+ # Start deleting blue nodes.
3071
+ DELETING_BLUE_POOL = 6
3072
+
3073
+ # Rollback has been initiated.
3074
+ ROLLBACK_STARTED = 7
3075
+ end
3076
+ end
3077
+ end
3078
+
2747
3079
  # PlacementPolicy defines the placement policy used by the node pool.
2748
3080
  # @!attribute [rw] type
2749
3081
  # @return [::Google::Cloud::Container::V1beta1::NodePool::PlacementPolicy::Type]
@@ -2977,7 +3309,7 @@ module Google
2977
3309
  # @!attribute [rw] project_id
2978
3310
  # @return [::String]
2979
3311
  # Required. Deprecated. The Google Developers Console [project ID or project
2980
- # number](https://support.google.com/cloud/answer/6158840).
3312
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2981
3313
  # This field has been deprecated and replaced by the name field.
2982
3314
  # @!attribute [rw] zone
2983
3315
  # @return [::String]
@@ -3010,7 +3342,7 @@ module Google
3010
3342
  # @!attribute [rw] project_id
3011
3343
  # @return [::String]
3012
3344
  # Required. Deprecated. The Google Developers Console [project ID or project
3013
- # number](https://support.google.com/cloud/answer/6158840).
3345
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3014
3346
  # This field has been deprecated and replaced by the name field.
3015
3347
  # @!attribute [rw] zone
3016
3348
  # @return [::String]
@@ -3039,13 +3371,25 @@ module Google
3039
3371
  extend ::Google::Protobuf::MessageExts::ClassMethods
3040
3372
  end
3041
3373
 
3374
+ # CompleteNodePoolUpgradeRequest sets the name of target node pool to complete
3375
+ # upgrade.
3376
+ # @!attribute [rw] name
3377
+ # @return [::String]
3378
+ # The name (project, location, cluster, node pool id) of the node pool to
3379
+ # complete upgrade.
3380
+ # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.
3381
+ class CompleteNodePoolUpgradeRequest
3382
+ include ::Google::Protobuf::MessageExts
3383
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3384
+ end
3385
+
3042
3386
  # RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
3043
3387
  # NodePool upgrade. This will be an no-op if the last upgrade successfully
3044
3388
  # completed.
3045
3389
  # @!attribute [rw] project_id
3046
3390
  # @return [::String]
3047
3391
  # Required. Deprecated. The Google Developers Console [project ID or project
3048
- # number](https://support.google.com/cloud/answer/6158840).
3392
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3049
3393
  # This field has been deprecated and replaced by the name field.
3050
3394
  # @!attribute [rw] zone
3051
3395
  # @return [::String]
@@ -3066,6 +3410,10 @@ module Google
3066
3410
  # The name (project, location, cluster, node pool id) of the node poll to
3067
3411
  # rollback upgrade.
3068
3412
  # Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.
3413
+ # @!attribute [rw] respect_pdb
3414
+ # @return [::Boolean]
3415
+ # Option for rollback to ignore the PodDisruptionBudget.
3416
+ # Default value is false.
3069
3417
  class RollbackNodePoolUpgradeRequest
3070
3418
  include ::Google::Protobuf::MessageExts
3071
3419
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3152,13 +3500,15 @@ module Google
3152
3500
  # NodeManagement configuration for this NodePool.
3153
3501
  # @!attribute [rw] min_cpu_platform
3154
3502
  # @return [::String]
3155
- # Minimum CPU platform to be used by this instance. The instance may be
3156
- # scheduled on the specified or newer CPU platform. Applicable values are the
3157
- # friendly names of CPU platforms, such as
3158
- # `minCpuPlatform: "Intel Haswell"` or
3159
- # `minCpuPlatform: "Intel Sandy Bridge"`. For more
3503
+ # Deprecated. Minimum CPU platform to be used for NAP created node pools.
3504
+ # The instance may be scheduled on the specified or newer CPU platform.
3505
+ # Applicable values are the friendly names of CPU platforms, such as
3506
+ # minCpuPlatform: Intel Haswell or
3507
+ # minCpuPlatform: Intel Sandy Bridge. For more
3160
3508
  # information, read [how to specify min CPU
3161
3509
  # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
3510
+ # This field is deprecated, min_cpu_platform should be specified using
3511
+ # cloud.google.com/requested-min-cpu-platform label selector on the pod.
3162
3512
  # To unset the min cpu platform field pass "automatic"
3163
3513
  # as field value.
3164
3514
  # @!attribute [rw] disk_size_gb
@@ -3224,9 +3574,38 @@ module Google
3224
3574
  # @!attribute [rw] autoprovisioned
3225
3575
  # @return [::Boolean]
3226
3576
  # Can this node pool be deleted automatically.
3577
+ # @!attribute [rw] location_policy
3578
+ # @return [::Google::Cloud::Container::V1beta1::NodePoolAutoscaling::LocationPolicy]
3579
+ # Location policy used when scaling up a nodepool.
3580
+ # @!attribute [rw] total_min_node_count
3581
+ # @return [::Integer]
3582
+ # Minimum number of nodes in the node pool. Must be greater than 1 less than
3583
+ # total_max_node_count.
3584
+ # The total_*_node_count fields are mutually exclusive with the *_node_count
3585
+ # fields.
3586
+ # @!attribute [rw] total_max_node_count
3587
+ # @return [::Integer]
3588
+ # Maximum number of nodes in the node pool. Must be greater than
3589
+ # total_min_node_count. There has to be enough quota to scale up the cluster.
3590
+ # The total_*_node_count fields are mutually exclusive with the *_node_count
3591
+ # fields.
3227
3592
  class NodePoolAutoscaling
3228
3593
  include ::Google::Protobuf::MessageExts
3229
3594
  extend ::Google::Protobuf::MessageExts::ClassMethods
3595
+
3596
+ # Location policy specifies how zones are picked when scaling up the
3597
+ # nodepool.
3598
+ module LocationPolicy
3599
+ # Not set.
3600
+ LOCATION_POLICY_UNSPECIFIED = 0
3601
+
3602
+ # BALANCED is a best effort policy that aims to balance the sizes of
3603
+ # different zones.
3604
+ BALANCED = 1
3605
+
3606
+ # ANY policy picks zones that have the highest capacity available.
3607
+ ANY = 2
3608
+ end
3230
3609
  end
3231
3610
 
3232
3611
  # SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
@@ -3235,7 +3614,7 @@ module Google
3235
3614
  # @!attribute [rw] project_id
3236
3615
  # @return [::String]
3237
3616
  # Required. Deprecated. The Google Developers Console [project ID or project
3238
- # number](https://developers.google.com/console/help/new/#projectnumber).
3617
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3239
3618
  # This field has been deprecated and replaced by the name field.
3240
3619
  # @!attribute [rw] zone
3241
3620
  # @return [::String]
@@ -3260,7 +3639,7 @@ module Google
3260
3639
  # resource to get the latest fingerprint.
3261
3640
  # @!attribute [rw] name
3262
3641
  # @return [::String]
3263
- # The name (project, location, cluster id) of the cluster to set labels.
3642
+ # The name (project, location, cluster name) of the cluster to set labels.
3264
3643
  # Specified in the format `projects/*/locations/*/clusters/*`.
3265
3644
  class SetLabelsRequest
3266
3645
  include ::Google::Protobuf::MessageExts
@@ -3281,7 +3660,7 @@ module Google
3281
3660
  # @!attribute [rw] project_id
3282
3661
  # @return [::String]
3283
3662
  # Required. Deprecated. The Google Developers Console [project ID or project
3284
- # number](https://support.google.com/cloud/answer/6158840).
3663
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3285
3664
  # This field has been deprecated and replaced by the name field.
3286
3665
  # @!attribute [rw] zone
3287
3666
  # @return [::String]
@@ -3298,8 +3677,8 @@ module Google
3298
3677
  # Required. Whether ABAC authorization will be enabled in the cluster.
3299
3678
  # @!attribute [rw] name
3300
3679
  # @return [::String]
3301
- # The name (project, location, cluster id) of the cluster to set legacy abac.
3302
- # Specified in the format `projects/*/locations/*/clusters/*`.
3680
+ # The name (project, location, cluster name) of the cluster to set legacy
3681
+ # abac. Specified in the format `projects/*/locations/*/clusters/*`.
3303
3682
  class SetLegacyAbacRequest
3304
3683
  include ::Google::Protobuf::MessageExts
3305
3684
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3310,7 +3689,7 @@ module Google
3310
3689
  # @!attribute [rw] project_id
3311
3690
  # @return [::String]
3312
3691
  # Required. Deprecated. The Google Developers Console [project ID or project
3313
- # number](https://developers.google.com/console/help/new/#projectnumber).
3692
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3314
3693
  # This field has been deprecated and replaced by the name field.
3315
3694
  # @!attribute [rw] zone
3316
3695
  # @return [::String]
@@ -3324,7 +3703,7 @@ module Google
3324
3703
  # This field has been deprecated and replaced by the name field.
3325
3704
  # @!attribute [rw] name
3326
3705
  # @return [::String]
3327
- # The name (project, location, cluster id) of the cluster to start IP
3706
+ # The name (project, location, cluster name) of the cluster to start IP
3328
3707
  # rotation. Specified in the format `projects/*/locations/*/clusters/*`.
3329
3708
  # @!attribute [rw] rotate_credentials
3330
3709
  # @return [::Boolean]
@@ -3338,7 +3717,7 @@ module Google
3338
3717
  # @!attribute [rw] project_id
3339
3718
  # @return [::String]
3340
3719
  # Required. Deprecated. The Google Developers Console [project ID or project
3341
- # number](https://developers.google.com/console/help/new/#projectnumber).
3720
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3342
3721
  # This field has been deprecated and replaced by the name field.
3343
3722
  # @!attribute [rw] zone
3344
3723
  # @return [::String]
@@ -3352,7 +3731,7 @@ module Google
3352
3731
  # This field has been deprecated and replaced by the name field.
3353
3732
  # @!attribute [rw] name
3354
3733
  # @return [::String]
3355
- # The name (project, location, cluster id) of the cluster to complete IP
3734
+ # The name (project, location, cluster name) of the cluster to complete IP
3356
3735
  # rotation. Specified in the format `projects/*/locations/*/clusters/*`.
3357
3736
  class CompleteIPRotationRequest
3358
3737
  include ::Google::Protobuf::MessageExts
@@ -3372,11 +3751,39 @@ module Google
3372
3751
  # Size of partitions to create on the GPU. Valid values are described in the
3373
3752
  # NVIDIA [mig user
3374
3753
  # guide](https://docs.nvidia.com/datacenter/tesla/mig-user-guide/#partitioning).
3754
+ # @!attribute [rw] max_time_shared_clients_per_gpu
3755
+ # @return [::Integer]
3756
+ # The number of time-shared GPU resources to expose for each physical GPU.
3757
+ # @!attribute [rw] gpu_sharing_config
3758
+ # @return [::Google::Cloud::Container::V1beta1::GPUSharingConfig]
3759
+ # The configuration for GPU sharing options.
3375
3760
  class AcceleratorConfig
3376
3761
  include ::Google::Protobuf::MessageExts
3377
3762
  extend ::Google::Protobuf::MessageExts::ClassMethods
3378
3763
  end
3379
3764
 
3765
+ # GPUSharingConfig represents the GPU sharing configuration for Hardware
3766
+ # Accelerators.
3767
+ # @!attribute [rw] max_shared_clients_per_gpu
3768
+ # @return [::Integer]
3769
+ # The max number of containers that can share a physical GPU.
3770
+ # @!attribute [rw] gpu_sharing_strategy
3771
+ # @return [::Google::Cloud::Container::V1beta1::GPUSharingConfig::GPUSharingStrategy]
3772
+ # The type of GPU sharing strategy to enable on the GPU node.
3773
+ class GPUSharingConfig
3774
+ include ::Google::Protobuf::MessageExts
3775
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3776
+
3777
+ # The type of GPU sharing strategy currently provided.
3778
+ module GPUSharingStrategy
3779
+ # Default value.
3780
+ GPU_SHARING_STRATEGY_UNSPECIFIED = 0
3781
+
3782
+ # GPUs are time-shared between containers.
3783
+ TIME_SHARING = 1
3784
+ end
3785
+ end
3786
+
3380
3787
  # ManagedPrometheusConfig defines the configuration for
3381
3788
  # Google Cloud Managed Service for Prometheus.
3382
3789
  # @!attribute [rw] enabled
@@ -3450,7 +3857,7 @@ module Google
3450
3857
  # @!attribute [rw] project_id
3451
3858
  # @return [::String]
3452
3859
  # Required. Deprecated. The Google Developers Console [project ID or project
3453
- # number](https://developers.google.com/console/help/new/#projectnumber).
3860
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3454
3861
  # This field has been deprecated and replaced by the name field.
3455
3862
  # @!attribute [rw] zone
3456
3863
  # @return [::String]
@@ -3467,7 +3874,7 @@ module Google
3467
3874
  # Required. Configuration options for the NetworkPolicy feature.
3468
3875
  # @!attribute [rw] name
3469
3876
  # @return [::String]
3470
- # The name (project, location, cluster id) of the cluster to set networking
3877
+ # The name (project, location, cluster name) of the cluster to set networking
3471
3878
  # policy. Specified in the format `projects/*/locations/*/clusters/*`.
3472
3879
  class SetNetworkPolicyRequest
3473
3880
  include ::Google::Protobuf::MessageExts
@@ -3478,7 +3885,7 @@ module Google
3478
3885
  # @!attribute [rw] project_id
3479
3886
  # @return [::String]
3480
3887
  # Required. The Google Developers Console [project ID or project
3481
- # number](https://support.google.com/cloud/answer/6158840).
3888
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3482
3889
  # @!attribute [rw] zone
3483
3890
  # @return [::String]
3484
3891
  # Required. The name of the Google Compute Engine
@@ -3493,8 +3900,8 @@ module Google
3493
3900
  # clears the existing maintenance policy.
3494
3901
  # @!attribute [rw] name
3495
3902
  # @return [::String]
3496
- # The name (project, location, cluster id) of the cluster to set maintenance
3497
- # policy.
3903
+ # The name (project, location, cluster name) of the cluster to set
3904
+ # maintenance policy.
3498
3905
  # Specified in the format `projects/*/locations/*/clusters/*`.
3499
3906
  class SetMaintenancePolicyRequest
3500
3907
  include ::Google::Protobuf::MessageExts
@@ -3871,6 +4278,20 @@ module Google
3871
4278
  extend ::Google::Protobuf::MessageExts::ClassMethods
3872
4279
  end
3873
4280
 
4281
+ # Configuration for direct-path (via ALTS) with workload identity.
4282
+ # @!attribute [rw] enable_alts
4283
+ # @return [::Google::Protobuf::BoolValue]
4284
+ # enable_alts controls whether the alts handshaker should be enabled or not
4285
+ # for direct-path.
4286
+ #
4287
+ # Requires Workload Identity
4288
+ # ({::Google::Cloud::Container::V1beta1::WorkloadIdentityConfig#workload_pool workload_pool}
4289
+ # must be non-empty).
4290
+ class WorkloadALTSConfig
4291
+ include ::Google::Protobuf::MessageExts
4292
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4293
+ end
4294
+
3874
4295
  # Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
3875
4296
  # @!attribute [rw] enable_certificates
3876
4297
  # @return [::Google::Protobuf::BoolValue]
@@ -4030,7 +4451,7 @@ module Google
4030
4451
  # Discovery 1.0 specification for details.
4031
4452
  # @!attribute [rw] parent
4032
4453
  # @return [::String]
4033
- # The cluster (project, location, cluster id) to get keys for. Specified in
4454
+ # The cluster (project, location, cluster name) to get keys for. Specified in
4034
4455
  # the format `projects/*/locations/*/clusters/*`.
4035
4456
  class GetJSONWebKeysRequest
4036
4457
  include ::Google::Protobuf::MessageExts
@@ -4117,6 +4538,15 @@ module Google
4117
4538
  end
4118
4539
  end
4119
4540
 
4541
+ # Configuration for fine-grained cost management feature.
4542
+ # @!attribute [rw] enabled
4543
+ # @return [::Boolean]
4544
+ # Whether the feature is enabled or not.
4545
+ class CostManagementConfig
4546
+ include ::Google::Protobuf::MessageExts
4547
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4548
+ end
4549
+
4120
4550
  # Configuration for Cloud TPU.
4121
4551
  # @!attribute [rw] enabled
4122
4552
  # @return [::Boolean]
@@ -4206,8 +4636,7 @@ module Google
4206
4636
  # makes nodes run on confidential VMs.
4207
4637
  # @!attribute [rw] enabled
4208
4638
  # @return [::Boolean]
4209
- # Whether Confidential Nodes feature is enabled for all nodes in this
4210
- # cluster.
4639
+ # Whether Confidential Nodes feature is enabled.
4211
4640
  class ConfidentialNodes
4212
4641
  include ::Google::Protobuf::MessageExts
4213
4642
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4378,8 +4807,17 @@ module Google
4378
4807
  # system components
4379
4808
  SYSTEM_COMPONENTS = 1
4380
4809
 
4381
- # workloads
4810
+ # Deprecated: Use Google Cloud Managed Service for Prometheus.
4382
4811
  WORKLOADS = 2
4812
+
4813
+ # kube-apiserver
4814
+ APISERVER = 3
4815
+
4816
+ # kube-scheduler
4817
+ SCHEDULER = 4
4818
+
4819
+ # kube-controller-manager
4820
+ CONTROLLER_MANAGER = 5
4383
4821
  end
4384
4822
  end
4385
4823
 
@@ -4399,8 +4837,34 @@ module Google
4399
4837
  PRIVATE_IPV6_GOOGLE_ACCESS_BIDIRECTIONAL = 3
4400
4838
  end
4401
4839
 
4840
+ # UpgradeResourceType is the resource type that is upgrading. It is used
4841
+ # in upgrade notifications.
4842
+ module UpgradeResourceType
4843
+ # Default value. This shouldn't be used.
4844
+ UPGRADE_RESOURCE_TYPE_UNSPECIFIED = 0
4845
+
4846
+ # Master / control plane
4847
+ MASTER = 1
4848
+
4849
+ # Node pool
4850
+ NODE_POOL = 2
4851
+ end
4852
+
4853
+ # Strategy used for node pool update.
4854
+ module NodePoolUpdateStrategy
4855
+ # Default value.
4856
+ NODE_POOL_UPDATE_STRATEGY_UNSPECIFIED = 0
4857
+
4858
+ # blue-green upgrade.
4859
+ BLUE_GREEN = 2
4860
+
4861
+ # SURGE is the traditional way of upgrading a node pool.
4862
+ # max_surge and max_unavailable determines the level of upgrade parallelism.
4863
+ SURGE = 3
4864
+ end
4865
+
4402
4866
  # The datapath provider selects the implementation of the Kubernetes networking
4403
- # // model for service resolution and network policy enforcement.
4867
+ # model for service resolution and network policy enforcement.
4404
4868
  module DatapathProvider
4405
4869
  # Default value.
4406
4870
  DATAPATH_PROVIDER_UNSPECIFIED = 0
@@ -4414,19 +4878,6 @@ module Google
4414
4878
  # for more.
4415
4879
  ADVANCED_DATAPATH = 2
4416
4880
  end
4417
-
4418
- # UpgradeResourceType is the resource type that is upgrading. It is used
4419
- # in upgrade notifications.
4420
- module UpgradeResourceType
4421
- # Default value. This shouldn't be used.
4422
- UPGRADE_RESOURCE_TYPE_UNSPECIFIED = 0
4423
-
4424
- # Master / control plane
4425
- MASTER = 1
4426
-
4427
- # Node pool
4428
- NODE_POOL = 2
4429
- end
4430
4881
  end
4431
4882
  end
4432
4883
  end