google-cloud-container-v1 0.8.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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
@@ -85,12 +87,24 @@ module Google
85
87
  # fraction and a unit suffix, such as "300ms".
86
88
  # Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
87
89
  # The value must be a positive duration.
90
+ # @!attribute [rw] pod_pids_limit
91
+ # @return [::Integer]
92
+ # Set the Pod PID limits. See
93
+ # https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits
94
+ #
95
+ # Controls the maximum number of processes allowed to run in a pod. The value
96
+ # must be greater than or equal to 1024 and less than 4194304.
88
97
  class NodeKubeletConfig
89
98
  include ::Google::Protobuf::MessageExts
90
99
  extend ::Google::Protobuf::MessageExts::ClassMethods
91
100
  end
92
101
 
93
102
  # Parameters that describe the nodes in a cluster.
103
+ #
104
+ # GKE Autopilot clusters do not
105
+ # recognize parameters in `NodeConfig`. Use
106
+ # {::Google::Cloud::Container::V1::AutoprovisioningNodePoolDefaults AutoprovisioningNodePoolDefaults}
107
+ # instead.
94
108
  # @!attribute [rw] machine_type
95
109
  # @return [::String]
96
110
  # The name of a Google Compute Engine [machine
@@ -133,6 +147,7 @@ module Google
133
147
  # in length. These are reflected as part of a URL in the metadata server.
134
148
  # Additionally, to avoid ambiguity, keys must not conflict with any other
135
149
  # metadata keys for the project or be one of the reserved keys:
150
+ #
136
151
  # - "cluster-location"
137
152
  # - "cluster-name"
138
153
  # - "cluster-uid"
@@ -261,6 +276,14 @@ module Google
261
276
  # @!attribute [rw] gvnic
262
277
  # @return [::Google::Cloud::Container::V1::VirtualNIC]
263
278
  # Enable or disable gvnic in the node pool.
279
+ # @!attribute [rw] spot
280
+ # @return [::Boolean]
281
+ # Spot flag for enabling Spot VM, which is a rebrand of
282
+ # the existing preemptible flag.
283
+ # @!attribute [rw] confidential_nodes
284
+ # @return [::Google::Cloud::Container::V1::ConfidentialNodes]
285
+ # Confidential nodes config.
286
+ # All the nodes in the node pool will be Confidential VM once enabled.
264
287
  class NodeConfig
265
288
  include ::Google::Protobuf::MessageExts
266
289
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -337,9 +360,30 @@ module Google
337
360
  # Only applicable if `ip_allocation_policy.use_ip_aliases` is true.
338
361
  #
339
362
  # This field cannot be changed after the node pool has been created.
363
+ # @!attribute [rw] network_performance_config
364
+ # @return [::Google::Cloud::Container::V1::NodeNetworkConfig::NetworkPerformanceConfig]
365
+ # Network bandwidth tier configuration.
340
366
  class NodeNetworkConfig
341
367
  include ::Google::Protobuf::MessageExts
342
368
  extend ::Google::Protobuf::MessageExts::ClassMethods
369
+
370
+ # Configuration of all network bandwidth tiers
371
+ # @!attribute [rw] total_egress_bandwidth_tier
372
+ # @return [::Google::Cloud::Container::V1::NodeNetworkConfig::NetworkPerformanceConfig::Tier]
373
+ # Specifies the total network bandwidth tier for the NodePool.
374
+ class NetworkPerformanceConfig
375
+ include ::Google::Protobuf::MessageExts
376
+ extend ::Google::Protobuf::MessageExts::ClassMethods
377
+
378
+ # Node network tier
379
+ module Tier
380
+ # Default value
381
+ TIER_UNSPECIFIED = 0
382
+
383
+ # Higher bandwidth, actual values based on VM size.
384
+ TIER_1 = 1
385
+ end
386
+ end
343
387
  end
344
388
 
345
389
  # A set of Shielded Instance options.
@@ -461,6 +505,45 @@ module Google
461
505
  end
462
506
  end
463
507
 
508
+ # Collection of Kubernetes [node
509
+ # taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration).
510
+ # @!attribute [rw] taints
511
+ # @return [::Array<::Google::Cloud::Container::V1::NodeTaint>]
512
+ # List of node taints.
513
+ class NodeTaints
514
+ include ::Google::Protobuf::MessageExts
515
+ extend ::Google::Protobuf::MessageExts::ClassMethods
516
+ end
517
+
518
+ # Collection of node-level [Kubernetes
519
+ # labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels).
520
+ # @!attribute [rw] labels
521
+ # @return [::Google::Protobuf::Map{::String => ::String}]
522
+ # Map of node label keys and node label values.
523
+ class NodeLabels
524
+ include ::Google::Protobuf::MessageExts
525
+ extend ::Google::Protobuf::MessageExts::ClassMethods
526
+
527
+ # @!attribute [rw] key
528
+ # @return [::String]
529
+ # @!attribute [rw] value
530
+ # @return [::String]
531
+ class LabelsEntry
532
+ include ::Google::Protobuf::MessageExts
533
+ extend ::Google::Protobuf::MessageExts::ClassMethods
534
+ end
535
+ end
536
+
537
+ # Collection of Compute Engine network tags that can be applied to a node's
538
+ # underlying VM instance.
539
+ # @!attribute [rw] tags
540
+ # @return [::Array<::String>]
541
+ # List of network tags.
542
+ class NetworkTags
543
+ include ::Google::Protobuf::MessageExts
544
+ extend ::Google::Protobuf::MessageExts::ClassMethods
545
+ end
546
+
464
547
  # The authentication information for accessing the master endpoint.
465
548
  # Authentication can be done using HTTP basic auth or using client
466
549
  # certificates.
@@ -789,9 +872,28 @@ module Google
789
872
  # @return [::Boolean]
790
873
  # Enable Binary Authorization for this cluster. If enabled, all container
791
874
  # images will be validated by Binary Authorization.
875
+ # @!attribute [rw] evaluation_mode
876
+ # @return [::Google::Cloud::Container::V1::BinaryAuthorization::EvaluationMode]
877
+ # Mode of operation for binauthz policy evaluation. Currently the only
878
+ # options are equivalent to enable/disable. If unspecified, defaults to
879
+ # DISABLED.
792
880
  class BinaryAuthorization
793
881
  include ::Google::Protobuf::MessageExts
794
882
  extend ::Google::Protobuf::MessageExts::ClassMethods
883
+
884
+ # Binary Authorization mode of operation.
885
+ module EvaluationMode
886
+ # Default value
887
+ EVALUATION_MODE_UNSPECIFIED = 0
888
+
889
+ # Disable BinaryAuthorization
890
+ DISABLED = 1
891
+
892
+ # Enforce Kubernetes admission requests with BinaryAuthorization using the
893
+ # project's singleton policy. This is equivalent to setting the
894
+ # enabled boolean to true.
895
+ PROJECT_SINGLETON_POLICY_ENFORCE = 2
896
+ end
795
897
  end
796
898
 
797
899
  # Configuration for controlling how IPs are allocated in the cluster.
@@ -1104,7 +1206,11 @@ module Google
1104
1206
  # Notification configuration of the cluster.
1105
1207
  # @!attribute [rw] confidential_nodes
1106
1208
  # @return [::Google::Cloud::Container::V1::ConfidentialNodes]
1107
- # Configuration of Confidential Nodes
1209
+ # Configuration of Confidential Nodes.
1210
+ # All the nodes in the cluster will be Confidential VM once enabled.
1211
+ # @!attribute [rw] identity_service_config
1212
+ # @return [::Google::Cloud::Container::V1::IdentityServiceConfig]
1213
+ # Configuration for Identity Service component.
1108
1214
  # @!attribute [rw] self_link
1109
1215
  # @return [::String]
1110
1216
  # [Output only] Server-defined URL for the resource.
@@ -1216,6 +1322,10 @@ module Google
1216
1322
  # @!attribute [rw] monitoring_config
1217
1323
  # @return [::Google::Cloud::Container::V1::MonitoringConfig]
1218
1324
  # Monitoring configuration for the cluster.
1325
+ # @!attribute [rw] node_pool_auto_config
1326
+ # @return [::Google::Cloud::Container::V1::NodePoolAutoConfig]
1327
+ # Node pool configs that apply to all auto-provisioned node pools
1328
+ # in autopilot clusters and node auto-provisioning enabled clusters.
1219
1329
  class Cluster
1220
1330
  include ::Google::Protobuf::MessageExts
1221
1331
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1259,6 +1369,19 @@ module Google
1259
1369
  end
1260
1370
  end
1261
1371
 
1372
+ # Node pool configs that apply to all auto-provisioned node pools
1373
+ # in autopilot clusters and node auto-provisioning enabled clusters.
1374
+ # @!attribute [rw] network_tags
1375
+ # @return [::Google::Cloud::Container::V1::NetworkTags]
1376
+ # The list of instance tags applied to all nodes. Tags are used to identify
1377
+ # valid sources or targets for network firewalls and are specified by
1378
+ # the client during cluster creation. Each tag within the list
1379
+ # must comply with RFC1035.
1380
+ class NodePoolAutoConfig
1381
+ include ::Google::Protobuf::MessageExts
1382
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1383
+ end
1384
+
1262
1385
  # Subset of Nodepool message that has defaults.
1263
1386
  # @!attribute [rw] node_config_defaults
1264
1387
  # @return [::Google::Cloud::Container::V1::NodeConfigDefaults]
@@ -1271,7 +1394,7 @@ module Google
1271
1394
  # Subset of NodeConfig message that has defaults.
1272
1395
  # @!attribute [rw] gcfs_config
1273
1396
  # @return [::Google::Cloud::Container::V1::GcfsConfig]
1274
- # GCFS (Google Container File System, a.k.a Riptide) options.
1397
+ # GCFS (Google Container File System, a.k.a. Riptide) options.
1275
1398
  class NodeConfigDefaults
1276
1399
  include ::Google::Protobuf::MessageExts
1277
1400
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1412,6 +1535,9 @@ module Google
1412
1535
  # @!attribute [rw] desired_monitoring_config
1413
1536
  # @return [::Google::Cloud::Container::V1::MonitoringConfig]
1414
1537
  # The desired monitoring configuration.
1538
+ # @!attribute [rw] desired_identity_service_config
1539
+ # @return [::Google::Cloud::Container::V1::IdentityServiceConfig]
1540
+ # The desired Identity Service component configuration.
1415
1541
  # @!attribute [rw] desired_service_external_ips_config
1416
1542
  # @return [::Google::Cloud::Container::V1::ServiceExternalIPsConfig]
1417
1543
  # ServiceExternalIPsConfig specifies the config for the use of Services with
@@ -1431,6 +1557,10 @@ module Google
1431
1557
  # @!attribute [rw] desired_gcfs_config
1432
1558
  # @return [::Google::Cloud::Container::V1::GcfsConfig]
1433
1559
  # The desired GCFS config for the cluster
1560
+ # @!attribute [rw] desired_node_pool_auto_config_network_tags
1561
+ # @return [::Google::Cloud::Container::V1::NetworkTags]
1562
+ # The desired network tags that apply to all auto-provisioned node pools
1563
+ # in autopilot clusters and node auto-provisioning enabled clusters.
1434
1564
  class ClusterUpdate
1435
1565
  include ::Google::Protobuf::MessageExts
1436
1566
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1618,7 +1748,7 @@ module Google
1618
1748
  # @!attribute [rw] project_id
1619
1749
  # @return [::String]
1620
1750
  # Deprecated. The Google Developers Console [project ID or project
1621
- # number](https://support.google.com/cloud/answer/6158840).
1751
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1622
1752
  # This field has been deprecated and replaced by the parent field.
1623
1753
  # @!attribute [rw] zone
1624
1754
  # @return [::String]
@@ -1643,7 +1773,7 @@ module Google
1643
1773
  # @!attribute [rw] project_id
1644
1774
  # @return [::String]
1645
1775
  # Deprecated. The Google Developers Console [project ID or project
1646
- # number](https://support.google.com/cloud/answer/6158840).
1776
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1647
1777
  # This field has been deprecated and replaced by the name field.
1648
1778
  # @!attribute [rw] zone
1649
1779
  # @return [::String]
@@ -1668,7 +1798,7 @@ module Google
1668
1798
  # @!attribute [rw] project_id
1669
1799
  # @return [::String]
1670
1800
  # Deprecated. The Google Developers Console [project ID or project
1671
- # number](https://support.google.com/cloud/answer/6158840).
1801
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1672
1802
  # This field has been deprecated and replaced by the name field.
1673
1803
  # @!attribute [rw] zone
1674
1804
  # @return [::String]
@@ -1696,7 +1826,7 @@ module Google
1696
1826
  # @!attribute [rw] project_id
1697
1827
  # @return [::String]
1698
1828
  # Deprecated. The Google Developers Console [project ID or project
1699
- # number](https://support.google.com/cloud/answer/6158840).
1829
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1700
1830
  # This field has been deprecated and replaced by the name field.
1701
1831
  # @!attribute [rw] zone
1702
1832
  # @return [::String]
@@ -1746,15 +1876,37 @@ module Google
1746
1876
  # @!attribute [rw] upgrade_settings
1747
1877
  # @return [::Google::Cloud::Container::V1::NodePool::UpgradeSettings]
1748
1878
  # Upgrade settings control disruption and speed of the upgrade.
1879
+ # @!attribute [rw] tags
1880
+ # @return [::Google::Cloud::Container::V1::NetworkTags]
1881
+ # The desired network tags to be applied to all nodes in the node pool.
1882
+ # If this field is not present, the tags will not be changed. Otherwise,
1883
+ # the existing network tags will be *replaced* with the provided tags.
1884
+ # @!attribute [rw] taints
1885
+ # @return [::Google::Cloud::Container::V1::NodeTaints]
1886
+ # The desired node taints to be applied to all nodes in the node pool.
1887
+ # If this field is not present, the taints will not be changed. Otherwise,
1888
+ # the existing node taints will be *replaced* with the provided taints.
1889
+ # @!attribute [rw] labels
1890
+ # @return [::Google::Cloud::Container::V1::NodeLabels]
1891
+ # The desired node labels to be applied to all nodes in the node pool.
1892
+ # If this field is not present, the labels will not be changed. Otherwise,
1893
+ # the existing node labels will be *replaced* with the provided labels.
1749
1894
  # @!attribute [rw] linux_node_config
1750
1895
  # @return [::Google::Cloud::Container::V1::LinuxNodeConfig]
1751
1896
  # Parameters that can be configured on Linux nodes.
1752
1897
  # @!attribute [rw] kubelet_config
1753
1898
  # @return [::Google::Cloud::Container::V1::NodeKubeletConfig]
1754
1899
  # Node kubelet configs.
1900
+ # @!attribute [rw] node_network_config
1901
+ # @return [::Google::Cloud::Container::V1::NodeNetworkConfig]
1902
+ # Node network config.
1755
1903
  # @!attribute [rw] gcfs_config
1756
1904
  # @return [::Google::Cloud::Container::V1::GcfsConfig]
1757
1905
  # GCFS config.
1906
+ # @!attribute [rw] confidential_nodes
1907
+ # @return [::Google::Cloud::Container::V1::ConfidentialNodes]
1908
+ # Confidential nodes config.
1909
+ # All the nodes in the node pool will be Confidential VM once enabled.
1758
1910
  # @!attribute [rw] gvnic
1759
1911
  # @return [::Google::Cloud::Container::V1::VirtualNIC]
1760
1912
  # Enable or disable gvnic on the node pool.
@@ -1767,7 +1919,7 @@ module Google
1767
1919
  # @!attribute [rw] project_id
1768
1920
  # @return [::String]
1769
1921
  # Deprecated. The Google Developers Console [project ID or project
1770
- # number](https://support.google.com/cloud/answer/6158840).
1922
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1771
1923
  # This field has been deprecated and replaced by the name field.
1772
1924
  # @!attribute [rw] zone
1773
1925
  # @return [::String]
@@ -1800,7 +1952,7 @@ module Google
1800
1952
  # @!attribute [rw] project_id
1801
1953
  # @return [::String]
1802
1954
  # Deprecated. The Google Developers Console [project ID or project
1803
- # number](https://support.google.com/cloud/answer/6158840).
1955
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1804
1956
  # This field has been deprecated and replaced by the name field.
1805
1957
  # @!attribute [rw] zone
1806
1958
  # @return [::String]
@@ -1838,7 +1990,7 @@ module Google
1838
1990
  # @!attribute [rw] project_id
1839
1991
  # @return [::String]
1840
1992
  # Deprecated. The Google Developers Console [project ID or project
1841
- # number](https://support.google.com/cloud/answer/6158840).
1993
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1842
1994
  # This field has been deprecated and replaced by the name field.
1843
1995
  # @!attribute [rw] zone
1844
1996
  # @return [::String]
@@ -1876,7 +2028,7 @@ module Google
1876
2028
  # @!attribute [rw] project_id
1877
2029
  # @return [::String]
1878
2030
  # Deprecated. The Google Developers Console [project ID or project
1879
- # number](https://support.google.com/cloud/answer/6158840).
2031
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1880
2032
  # This field has been deprecated and replaced by the name field.
1881
2033
  # @!attribute [rw] zone
1882
2034
  # @return [::String]
@@ -1905,7 +2057,7 @@ module Google
1905
2057
  # @!attribute [rw] project_id
1906
2058
  # @return [::String]
1907
2059
  # Deprecated. The Google Developers Console [project ID or project
1908
- # number](https://support.google.com/cloud/answer/6158840).
2060
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1909
2061
  # This field has been deprecated and replaced by the name field.
1910
2062
  # @!attribute [rw] zone
1911
2063
  # @return [::String]
@@ -1939,7 +2091,7 @@ module Google
1939
2091
  # @!attribute [rw] project_id
1940
2092
  # @return [::String]
1941
2093
  # Deprecated. The Google Developers Console [project ID or project
1942
- # number](https://support.google.com/cloud/answer/6158840).
2094
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1943
2095
  # This field has been deprecated and replaced by the name field.
1944
2096
  # @!attribute [rw] zone
1945
2097
  # @return [::String]
@@ -1976,7 +2128,7 @@ module Google
1976
2128
  # @!attribute [rw] project_id
1977
2129
  # @return [::String]
1978
2130
  # Deprecated. The Google Developers Console [project ID or project
1979
- # number](https://support.google.com/cloud/answer/6158840).
2131
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1980
2132
  # This field has been deprecated and replaced by the name field.
1981
2133
  # @!attribute [rw] zone
1982
2134
  # @return [::String]
@@ -2025,7 +2177,7 @@ module Google
2025
2177
  # @!attribute [rw] project_id
2026
2178
  # @return [::String]
2027
2179
  # Deprecated. The Google Developers Console [project ID or project
2028
- # number](https://support.google.com/cloud/answer/6158840).
2180
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2029
2181
  # This field has been deprecated and replaced by the name field.
2030
2182
  # @!attribute [rw] zone
2031
2183
  # @return [::String]
@@ -2050,7 +2202,7 @@ module Google
2050
2202
  # @!attribute [rw] project_id
2051
2203
  # @return [::String]
2052
2204
  # Deprecated. The Google Developers Console [project ID or project
2053
- # number](https://support.google.com/cloud/answer/6158840).
2205
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2054
2206
  # This field has been deprecated and replaced by the parent field.
2055
2207
  # @!attribute [rw] zone
2056
2208
  # @return [::String]
@@ -2086,7 +2238,7 @@ module Google
2086
2238
  # @!attribute [rw] project_id
2087
2239
  # @return [::String]
2088
2240
  # Deprecated. The Google Developers Console [project ID or project
2089
- # number](https://support.google.com/cloud/answer/6158840).
2241
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2090
2242
  # This field has been deprecated and replaced by the name field.
2091
2243
  # @!attribute [rw] zone
2092
2244
  # @return [::String]
@@ -2111,7 +2263,7 @@ module Google
2111
2263
  # @!attribute [rw] project_id
2112
2264
  # @return [::String]
2113
2265
  # Deprecated. The Google Developers Console [project ID or project
2114
- # number](https://support.google.com/cloud/answer/6158840).
2266
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2115
2267
  # This field has been deprecated and replaced by the parent field.
2116
2268
  # @!attribute [rw] zone
2117
2269
  # @return [::String]
@@ -2133,7 +2285,7 @@ module Google
2133
2285
  # @!attribute [rw] project_id
2134
2286
  # @return [::String]
2135
2287
  # Deprecated. The Google Developers Console [project ID or project
2136
- # number](https://support.google.com/cloud/answer/6158840).
2288
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2137
2289
  # This field has been deprecated and replaced by the name field.
2138
2290
  # @!attribute [rw] zone
2139
2291
  # @return [::String]
@@ -2171,7 +2323,7 @@ module Google
2171
2323
  # @!attribute [rw] project_id
2172
2324
  # @return [::String]
2173
2325
  # Deprecated. The Google Developers Console [project ID or project
2174
- # number](https://support.google.com/cloud/answer/6158840).
2326
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2175
2327
  # This field has been deprecated and replaced by the name field.
2176
2328
  # @!attribute [rw] zone
2177
2329
  # @return [::String]
@@ -2231,7 +2383,7 @@ module Google
2231
2383
  # @!attribute [rw] project_id
2232
2384
  # @return [::String]
2233
2385
  # Deprecated. The Google Developers Console [project ID or project
2234
- # number](https://developers.google.com/console/help/new/#projectnumber).
2386
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2235
2387
  # This field has been deprecated and replaced by the parent field.
2236
2388
  # @!attribute [rw] zone
2237
2389
  # @return [::String]
@@ -2248,7 +2400,7 @@ module Google
2248
2400
  # Required. The node pool to create.
2249
2401
  # @!attribute [rw] parent
2250
2402
  # @return [::String]
2251
- # The parent (project, location, cluster id) where the node pool will be
2403
+ # The parent (project, location, cluster name) where the node pool will be
2252
2404
  # created. Specified in the format
2253
2405
  # `projects/*/locations/*/clusters/*`.
2254
2406
  class CreateNodePoolRequest
@@ -2260,7 +2412,7 @@ module Google
2260
2412
  # @!attribute [rw] project_id
2261
2413
  # @return [::String]
2262
2414
  # Deprecated. The Google Developers Console [project ID or project
2263
- # number](https://developers.google.com/console/help/new/#projectnumber).
2415
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2264
2416
  # This field has been deprecated and replaced by the name field.
2265
2417
  # @!attribute [rw] zone
2266
2418
  # @return [::String]
@@ -2290,7 +2442,7 @@ module Google
2290
2442
  # @!attribute [rw] project_id
2291
2443
  # @return [::String]
2292
2444
  # Deprecated. The Google Developers Console [project ID or project
2293
- # number](https://developers.google.com/console/help/new/#projectnumber).
2445
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2294
2446
  # This field has been deprecated and replaced by the parent field.
2295
2447
  # @!attribute [rw] zone
2296
2448
  # @return [::String]
@@ -2304,7 +2456,7 @@ module Google
2304
2456
  # This field has been deprecated and replaced by the parent field.
2305
2457
  # @!attribute [rw] parent
2306
2458
  # @return [::String]
2307
- # The parent (project, location, cluster id) where the node pools will be
2459
+ # The parent (project, location, cluster name) where the node pools will be
2308
2460
  # listed. Specified in the format `projects/*/locations/*/clusters/*`.
2309
2461
  class ListNodePoolsRequest
2310
2462
  include ::Google::Protobuf::MessageExts
@@ -2315,7 +2467,7 @@ module Google
2315
2467
  # @!attribute [rw] project_id
2316
2468
  # @return [::String]
2317
2469
  # Deprecated. The Google Developers Console [project ID or project
2318
- # number](https://developers.google.com/console/help/new/#projectnumber).
2470
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2319
2471
  # This field has been deprecated and replaced by the name field.
2320
2472
  # @!attribute [rw] zone
2321
2473
  # @return [::String]
@@ -2341,6 +2493,35 @@ module Google
2341
2493
  extend ::Google::Protobuf::MessageExts::ClassMethods
2342
2494
  end
2343
2495
 
2496
+ # Settings for blue-green upgrade.
2497
+ # @!attribute [rw] standard_rollout_policy
2498
+ # @return [::Google::Cloud::Container::V1::BlueGreenSettings::StandardRolloutPolicy]
2499
+ # Standard policy for the blue-green upgrade.
2500
+ # @!attribute [rw] node_pool_soak_duration
2501
+ # @return [::Google::Protobuf::Duration]
2502
+ # Time needed after draining entire blue pool. After this period, blue pool
2503
+ # will be cleaned up.
2504
+ class BlueGreenSettings
2505
+ include ::Google::Protobuf::MessageExts
2506
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2507
+
2508
+ # Standard rollout policy is the default policy for blue-green.
2509
+ # @!attribute [rw] batch_percentage
2510
+ # @return [::Float]
2511
+ # Percentage of the bool pool nodes to drain in a batch.
2512
+ # The range of this field should be (0.0, 1.0].
2513
+ # @!attribute [rw] batch_node_count
2514
+ # @return [::Integer]
2515
+ # Number of blue nodes to drain in a batch.
2516
+ # @!attribute [rw] batch_soak_duration
2517
+ # @return [::Google::Protobuf::Duration]
2518
+ # Soak time after each batch gets drained. Default to zero.
2519
+ class StandardRolloutPolicy
2520
+ include ::Google::Protobuf::MessageExts
2521
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2522
+ end
2523
+ end
2524
+
2344
2525
  # NodePool contains the name and configuration for a cluster's node pool.
2345
2526
  # Node pools are a set of nodes (i.e. VM's), with a common configuration and
2346
2527
  # specification, under the control of the cluster master. They may have a set
@@ -2386,6 +2567,8 @@ module Google
2386
2567
  # [Output only] The resource URLs of the [managed instance
2387
2568
  # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
2388
2569
  # associated with this node pool.
2570
+ # During the node pool blue-green upgrade operation, the URLs contain both
2571
+ # blue and green resources.
2389
2572
  # @!attribute [rw] status
2390
2573
  # @return [::Google::Cloud::Container::V1::NodePool::Status]
2391
2574
  # [Output only] The status of the nodes in this pool instance.
@@ -2414,6 +2597,10 @@ module Google
2414
2597
  # @!attribute [rw] upgrade_settings
2415
2598
  # @return [::Google::Cloud::Container::V1::NodePool::UpgradeSettings]
2416
2599
  # Upgrade settings control disruption and speed of the upgrade.
2600
+ # @!attribute [r] update_info
2601
+ # @return [::Google::Cloud::Container::V1::NodePool::UpdateInfo]
2602
+ # Output only. [Output only] Update info contains relevant information during a node
2603
+ # pool update.
2417
2604
  class NodePool
2418
2605
  include ::Google::Protobuf::MessageExts
2419
2606
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2441,6 +2628,29 @@ module Google
2441
2628
  # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
2442
2629
  # down 3 old (not yet upgraded) nodes at the same time. This ensures that
2443
2630
  # there are always at least 4 nodes available.
2631
+ #
2632
+ # These upgrade settings configure the upgrade strategy for the node pool.
2633
+ # Use strategy to switch between the strategies applied to the node pool.
2634
+ #
2635
+ # If the strategy is ROLLING, use max_surge and max_unavailable to control
2636
+ # the level of parallelism and the level of disruption caused by upgrade.
2637
+ # 1. maxSurge controls the number of additional nodes that can be added to
2638
+ # the node pool temporarily for the time of the upgrade to increase the
2639
+ # number of available nodes.
2640
+ # 2. maxUnavailable controls the number of nodes that can be simultaneously
2641
+ # unavailable.
2642
+ # 3. (maxUnavailable + maxSurge) determines the level of parallelism (how
2643
+ # many nodes are being upgraded at the same time).
2644
+ #
2645
+ # If the strategy is BLUE_GREEN, use blue_green_settings to configure the
2646
+ # blue-green upgrade related settings.
2647
+ # 1. standard_rollout_policy is the default policy. The policy is used to
2648
+ # control the way blue pool gets drained. The draining is executed in the
2649
+ # batch mode. The batch size could be specified as either percentage of the
2650
+ # node pool size or the number of nodes. batch_soak_duration is the soak
2651
+ # time after each batch gets drained.
2652
+ # 2. node_pool_soak_duration is the soak time after all blue nodes are
2653
+ # drained. After this period, the blue pool nodes will be deleted.
2444
2654
  # @!attribute [rw] max_surge
2445
2655
  # @return [::Integer]
2446
2656
  # The maximum number of nodes that can be created beyond the current size
@@ -2450,11 +2660,80 @@ module Google
2450
2660
  # The maximum number of nodes that can be simultaneously unavailable during
2451
2661
  # the upgrade process. A node is considered available if its status is
2452
2662
  # Ready.
2663
+ # @!attribute [rw] strategy
2664
+ # @return [::Google::Cloud::Container::V1::NodePoolUpdateStrategy]
2665
+ # Update strategy of the node pool.
2666
+ # @!attribute [rw] blue_green_settings
2667
+ # @return [::Google::Cloud::Container::V1::BlueGreenSettings]
2668
+ # Settings for blue-green upgrade strategy.
2453
2669
  class UpgradeSettings
2454
2670
  include ::Google::Protobuf::MessageExts
2455
2671
  extend ::Google::Protobuf::MessageExts::ClassMethods
2456
2672
  end
2457
2673
 
2674
+ # UpdateInfo contains resource (instance groups, etc), status and other
2675
+ # intermediate information relevant to a node pool upgrade.
2676
+ # @!attribute [rw] blue_green_info
2677
+ # @return [::Google::Cloud::Container::V1::NodePool::UpdateInfo::BlueGreenInfo]
2678
+ # Information of a blue-green upgrade.
2679
+ class UpdateInfo
2680
+ include ::Google::Protobuf::MessageExts
2681
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2682
+
2683
+ # Information relevant to blue-green upgrade.
2684
+ # @!attribute [rw] phase
2685
+ # @return [::Google::Cloud::Container::V1::NodePool::UpdateInfo::BlueGreenInfo::Phase]
2686
+ # Current blue-green upgrade phase.
2687
+ # @!attribute [rw] blue_instance_group_urls
2688
+ # @return [::Array<::String>]
2689
+ # The resource URLs of the [managed instance groups]
2690
+ # (/compute/docs/instance-groups/creating-groups-of-managed-instances)
2691
+ # associated with blue pool.
2692
+ # @!attribute [rw] green_instance_group_urls
2693
+ # @return [::Array<::String>]
2694
+ # The resource URLs of the [managed instance groups]
2695
+ # (/compute/docs/instance-groups/creating-groups-of-managed-instances)
2696
+ # associated with green pool.
2697
+ # @!attribute [rw] blue_pool_deletion_start_time
2698
+ # @return [::String]
2699
+ # Time to start deleting blue pool to complete blue-green upgrade,
2700
+ # in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2701
+ # @!attribute [rw] green_pool_version
2702
+ # @return [::String]
2703
+ # Version of green pool.
2704
+ class BlueGreenInfo
2705
+ include ::Google::Protobuf::MessageExts
2706
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2707
+
2708
+ # Phase represents the different stages blue-green upgrade is running in.
2709
+ module Phase
2710
+ # Unspecified phase.
2711
+ PHASE_UNSPECIFIED = 0
2712
+
2713
+ # blue-green upgrade has been initiated.
2714
+ UPDATE_STARTED = 1
2715
+
2716
+ # Start creating green pool nodes.
2717
+ CREATING_GREEN_POOL = 2
2718
+
2719
+ # Start cordoning blue pool nodes.
2720
+ CORDONING_BLUE_POOL = 3
2721
+
2722
+ # Start draining blue pool nodes.
2723
+ DRAINING_BLUE_POOL = 4
2724
+
2725
+ # Start soaking time after draining entire blue pool.
2726
+ NODE_POOL_SOAKING = 5
2727
+
2728
+ # Start deleting blue nodes.
2729
+ DELETING_BLUE_POOL = 6
2730
+
2731
+ # Rollback has been initiated.
2732
+ ROLLBACK_STARTED = 7
2733
+ end
2734
+ end
2735
+ end
2736
+
2458
2737
  # The current status of the node pool instance.
2459
2738
  module Status
2460
2739
  # Not set.
@@ -2676,7 +2955,7 @@ module Google
2676
2955
  # @!attribute [rw] project_id
2677
2956
  # @return [::String]
2678
2957
  # Deprecated. The Google Developers Console [project ID or project
2679
- # number](https://support.google.com/cloud/answer/6158840).
2958
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2680
2959
  # This field has been deprecated and replaced by the name field.
2681
2960
  # @!attribute [rw] zone
2682
2961
  # @return [::String]
@@ -2709,7 +2988,7 @@ module Google
2709
2988
  # @!attribute [rw] project_id
2710
2989
  # @return [::String]
2711
2990
  # Deprecated. The Google Developers Console [project ID or project
2712
- # number](https://support.google.com/cloud/answer/6158840).
2991
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2713
2992
  # This field has been deprecated and replaced by the name field.
2714
2993
  # @!attribute [rw] zone
2715
2994
  # @return [::String]
@@ -2738,13 +3017,25 @@ module Google
2738
3017
  extend ::Google::Protobuf::MessageExts::ClassMethods
2739
3018
  end
2740
3019
 
3020
+ # CompleteNodePoolUpgradeRequest sets the name of target node pool to complete
3021
+ # upgrade.
3022
+ # @!attribute [rw] name
3023
+ # @return [::String]
3024
+ # The name (project, location, cluster, node pool id) of the node pool to
3025
+ # complete upgrade.
3026
+ # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.
3027
+ class CompleteNodePoolUpgradeRequest
3028
+ include ::Google::Protobuf::MessageExts
3029
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3030
+ end
3031
+
2741
3032
  # RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
2742
3033
  # NodePool upgrade. This will be an no-op if the last upgrade successfully
2743
3034
  # completed.
2744
3035
  # @!attribute [rw] project_id
2745
3036
  # @return [::String]
2746
3037
  # Deprecated. The Google Developers Console [project ID or project
2747
- # number](https://support.google.com/cloud/answer/6158840).
3038
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2748
3039
  # This field has been deprecated and replaced by the name field.
2749
3040
  # @!attribute [rw] zone
2750
3041
  # @return [::String]
@@ -2765,6 +3056,10 @@ module Google
2765
3056
  # The name (project, location, cluster, node pool id) of the node poll to
2766
3057
  # rollback upgrade.
2767
3058
  # Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.
3059
+ # @!attribute [rw] respect_pdb
3060
+ # @return [::Boolean]
3061
+ # Option for rollback to ignore the PodDisruptionBudget.
3062
+ # Default value is false.
2768
3063
  class RollbackNodePoolUpgradeRequest
2769
3064
  include ::Google::Protobuf::MessageExts
2770
3065
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2835,13 +3130,15 @@ module Google
2835
3130
  # Specifies the node management options for NAP created node-pools.
2836
3131
  # @!attribute [rw] min_cpu_platform
2837
3132
  # @return [::String]
2838
- # Minimum CPU platform to be used for NAP created node pools.
3133
+ # Deprecated. Minimum CPU platform to be used for NAP created node pools.
2839
3134
  # The instance may be scheduled on the specified or newer CPU platform.
2840
3135
  # Applicable values are the friendly names of CPU platforms, such as
2841
3136
  # minCpuPlatform: Intel Haswell or
2842
3137
  # minCpuPlatform: Intel Sandy Bridge. For more
2843
3138
  # information, read [how to specify min CPU
2844
3139
  # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
3140
+ # This field is deprecated, min_cpu_platform should be specified using
3141
+ # cloud.google.com/requested-min-cpu-platform label selector on the pod.
2845
3142
  # To unset the min cpu platform field pass "automatic"
2846
3143
  # as field value.
2847
3144
  # @!attribute [rw] disk_size_gb
@@ -2907,9 +3204,38 @@ module Google
2907
3204
  # @!attribute [rw] autoprovisioned
2908
3205
  # @return [::Boolean]
2909
3206
  # Can this node pool be deleted automatically.
3207
+ # @!attribute [rw] location_policy
3208
+ # @return [::Google::Cloud::Container::V1::NodePoolAutoscaling::LocationPolicy]
3209
+ # Location policy used when scaling up a nodepool.
3210
+ # @!attribute [rw] total_min_node_count
3211
+ # @return [::Integer]
3212
+ # Minimum number of nodes in the node pool. Must be greater than 1 less than
3213
+ # total_max_node_count.
3214
+ # The total_*_node_count fields are mutually exclusive with the *_node_count
3215
+ # fields.
3216
+ # @!attribute [rw] total_max_node_count
3217
+ # @return [::Integer]
3218
+ # Maximum number of nodes in the node pool. Must be greater than
3219
+ # total_min_node_count. There has to be enough quota to scale up the cluster.
3220
+ # The total_*_node_count fields are mutually exclusive with the *_node_count
3221
+ # fields.
2910
3222
  class NodePoolAutoscaling
2911
3223
  include ::Google::Protobuf::MessageExts
2912
3224
  extend ::Google::Protobuf::MessageExts::ClassMethods
3225
+
3226
+ # Location policy specifies how zones are picked when scaling up the
3227
+ # nodepool.
3228
+ module LocationPolicy
3229
+ # Not set.
3230
+ LOCATION_POLICY_UNSPECIFIED = 0
3231
+
3232
+ # BALANCED is a best effort policy that aims to balance the sizes of
3233
+ # different zones.
3234
+ BALANCED = 1
3235
+
3236
+ # ANY policy picks zones that have the highest capacity available.
3237
+ ANY = 2
3238
+ end
2913
3239
  end
2914
3240
 
2915
3241
  # SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
@@ -2918,7 +3244,7 @@ module Google
2918
3244
  # @!attribute [rw] project_id
2919
3245
  # @return [::String]
2920
3246
  # Deprecated. The Google Developers Console [project ID or project
2921
- # number](https://developers.google.com/console/help/new/#projectnumber).
3247
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2922
3248
  # This field has been deprecated and replaced by the name field.
2923
3249
  # @!attribute [rw] zone
2924
3250
  # @return [::String]
@@ -2943,7 +3269,7 @@ module Google
2943
3269
  # resource to get the latest fingerprint.
2944
3270
  # @!attribute [rw] name
2945
3271
  # @return [::String]
2946
- # The name (project, location, cluster id) of the cluster to set labels.
3272
+ # The name (project, location, cluster name) of the cluster to set labels.
2947
3273
  # Specified in the format `projects/*/locations/*/clusters/*`.
2948
3274
  class SetLabelsRequest
2949
3275
  include ::Google::Protobuf::MessageExts
@@ -2964,7 +3290,7 @@ module Google
2964
3290
  # @!attribute [rw] project_id
2965
3291
  # @return [::String]
2966
3292
  # Deprecated. The Google Developers Console [project ID or project
2967
- # number](https://support.google.com/cloud/answer/6158840).
3293
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2968
3294
  # This field has been deprecated and replaced by the name field.
2969
3295
  # @!attribute [rw] zone
2970
3296
  # @return [::String]
@@ -2981,8 +3307,8 @@ module Google
2981
3307
  # Required. Whether ABAC authorization will be enabled in the cluster.
2982
3308
  # @!attribute [rw] name
2983
3309
  # @return [::String]
2984
- # The name (project, location, cluster id) of the cluster to set legacy abac.
2985
- # Specified in the format `projects/*/locations/*/clusters/*`.
3310
+ # The name (project, location, cluster name) of the cluster to set legacy
3311
+ # abac. Specified in the format `projects/*/locations/*/clusters/*`.
2986
3312
  class SetLegacyAbacRequest
2987
3313
  include ::Google::Protobuf::MessageExts
2988
3314
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2993,7 +3319,7 @@ module Google
2993
3319
  # @!attribute [rw] project_id
2994
3320
  # @return [::String]
2995
3321
  # Deprecated. The Google Developers Console [project ID or project
2996
- # number](https://developers.google.com/console/help/new/#projectnumber).
3322
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2997
3323
  # This field has been deprecated and replaced by the name field.
2998
3324
  # @!attribute [rw] zone
2999
3325
  # @return [::String]
@@ -3007,7 +3333,7 @@ module Google
3007
3333
  # This field has been deprecated and replaced by the name field.
3008
3334
  # @!attribute [rw] name
3009
3335
  # @return [::String]
3010
- # The name (project, location, cluster id) of the cluster to start IP
3336
+ # The name (project, location, cluster name) of the cluster to start IP
3011
3337
  # rotation. Specified in the format `projects/*/locations/*/clusters/*`.
3012
3338
  # @!attribute [rw] rotate_credentials
3013
3339
  # @return [::Boolean]
@@ -3021,7 +3347,7 @@ module Google
3021
3347
  # @!attribute [rw] project_id
3022
3348
  # @return [::String]
3023
3349
  # Deprecated. The Google Developers Console [project ID or project
3024
- # number](https://developers.google.com/console/help/new/#projectnumber).
3350
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3025
3351
  # This field has been deprecated and replaced by the name field.
3026
3352
  # @!attribute [rw] zone
3027
3353
  # @return [::String]
@@ -3035,7 +3361,7 @@ module Google
3035
3361
  # This field has been deprecated and replaced by the name field.
3036
3362
  # @!attribute [rw] name
3037
3363
  # @return [::String]
3038
- # The name (project, location, cluster id) of the cluster to complete IP
3364
+ # The name (project, location, cluster name) of the cluster to complete IP
3039
3365
  # rotation. Specified in the format `projects/*/locations/*/clusters/*`.
3040
3366
  class CompleteIPRotationRequest
3041
3367
  include ::Google::Protobuf::MessageExts
@@ -3055,11 +3381,36 @@ module Google
3055
3381
  # Size of partitions to create on the GPU. Valid values are described in the
3056
3382
  # NVIDIA [mig user
3057
3383
  # guide](https://docs.nvidia.com/datacenter/tesla/mig-user-guide/#partitioning).
3384
+ # @!attribute [rw] gpu_sharing_config
3385
+ # @return [::Google::Cloud::Container::V1::GPUSharingConfig]
3386
+ # The configuration for GPU sharing options.
3058
3387
  class AcceleratorConfig
3059
3388
  include ::Google::Protobuf::MessageExts
3060
3389
  extend ::Google::Protobuf::MessageExts::ClassMethods
3061
3390
  end
3062
3391
 
3392
+ # GPUSharingConfig represents the GPU sharing configuration for Hardware
3393
+ # Accelerators.
3394
+ # @!attribute [rw] max_shared_clients_per_gpu
3395
+ # @return [::Integer]
3396
+ # The max number of containers that can share a physical GPU.
3397
+ # @!attribute [rw] gpu_sharing_strategy
3398
+ # @return [::Google::Cloud::Container::V1::GPUSharingConfig::GPUSharingStrategy]
3399
+ # The type of GPU sharing strategy to enable on the GPU node.
3400
+ class GPUSharingConfig
3401
+ include ::Google::Protobuf::MessageExts
3402
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3403
+
3404
+ # The type of GPU sharing strategy currently provided.
3405
+ module GPUSharingStrategy
3406
+ # Default value.
3407
+ GPU_SHARING_STRATEGY_UNSPECIFIED = 0
3408
+
3409
+ # GPUs are time-shared between containers.
3410
+ TIME_SHARING = 1
3411
+ end
3412
+ end
3413
+
3063
3414
  # WorkloadMetadataConfig defines the metadata configuration to expose to
3064
3415
  # workloads on the node pool.
3065
3416
  # @!attribute [rw] mode
@@ -3092,7 +3443,7 @@ module Google
3092
3443
  # @!attribute [rw] project_id
3093
3444
  # @return [::String]
3094
3445
  # Deprecated. The Google Developers Console [project ID or project
3095
- # number](https://developers.google.com/console/help/new/#projectnumber).
3446
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3096
3447
  # This field has been deprecated and replaced by the name field.
3097
3448
  # @!attribute [rw] zone
3098
3449
  # @return [::String]
@@ -3109,7 +3460,7 @@ module Google
3109
3460
  # Required. Configuration options for the NetworkPolicy feature.
3110
3461
  # @!attribute [rw] name
3111
3462
  # @return [::String]
3112
- # The name (project, location, cluster id) of the cluster to set networking
3463
+ # The name (project, location, cluster name) of the cluster to set networking
3113
3464
  # policy. Specified in the format `projects/*/locations/*/clusters/*`.
3114
3465
  class SetNetworkPolicyRequest
3115
3466
  include ::Google::Protobuf::MessageExts
@@ -3120,7 +3471,7 @@ module Google
3120
3471
  # @!attribute [rw] project_id
3121
3472
  # @return [::String]
3122
3473
  # Required. The Google Developers Console [project ID or project
3123
- # number](https://support.google.com/cloud/answer/6158840).
3474
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3124
3475
  # @!attribute [rw] zone
3125
3476
  # @return [::String]
3126
3477
  # Required. The name of the Google Compute Engine
@@ -3135,8 +3486,8 @@ module Google
3135
3486
  # clears the existing maintenance policy.
3136
3487
  # @!attribute [rw] name
3137
3488
  # @return [::String]
3138
- # The name (project, location, cluster id) of the cluster to set maintenance
3139
- # policy.
3489
+ # The name (project, location, cluster name) of the cluster to set
3490
+ # maintenance policy.
3140
3491
  # Specified in the format `projects/*/locations/*/clusters/*`.
3141
3492
  class SetMaintenancePolicyRequest
3142
3493
  include ::Google::Protobuf::MessageExts
@@ -3288,7 +3639,7 @@ module Google
3288
3639
  # Discovery 1.0 specification for details.
3289
3640
  # @!attribute [rw] parent
3290
3641
  # @return [::String]
3291
- # The cluster (project, location, cluster id) to get keys for. Specified in
3642
+ # The cluster (project, location, cluster name) to get keys for. Specified in
3292
3643
  # the format `projects/*/locations/*/clusters/*`.
3293
3644
  class GetJSONWebKeysRequest
3294
3645
  include ::Google::Protobuf::MessageExts
@@ -3450,6 +3801,16 @@ module Google
3450
3801
  extend ::Google::Protobuf::MessageExts::ClassMethods
3451
3802
  end
3452
3803
 
3804
+ # IdentityServiceConfig is configuration for Identity Service which allows
3805
+ # customers to use external identity providers with the K8S API
3806
+ # @!attribute [rw] enabled
3807
+ # @return [::Boolean]
3808
+ # Whether to enable the Identity Service component
3809
+ class IdentityServiceConfig
3810
+ include ::Google::Protobuf::MessageExts
3811
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3812
+ end
3813
+
3453
3814
  # Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
3454
3815
  # @!attribute [rw] enable_certificates
3455
3816
  # @return [::Google::Protobuf::BoolValue]
@@ -3735,8 +4096,7 @@ module Google
3735
4096
  # makes nodes run on confidential VMs.
3736
4097
  # @!attribute [rw] enabled
3737
4098
  # @return [::Boolean]
3738
- # Whether Confidential Nodes feature is enabled for all nodes in this
3739
- # cluster.
4099
+ # Whether Confidential Nodes feature is enabled.
3740
4100
  class ConfidentialNodes
3741
4101
  include ::Google::Protobuf::MessageExts
3742
4102
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3877,6 +4237,10 @@ module Google
3877
4237
  # @!attribute [rw] component_config
3878
4238
  # @return [::Google::Cloud::Container::V1::MonitoringComponentConfig]
3879
4239
  # Monitoring components configuration
4240
+ # @!attribute [rw] managed_prometheus_config
4241
+ # @return [::Google::Cloud::Container::V1::ManagedPrometheusConfig]
4242
+ # Enable Google Cloud Managed Service for Prometheus
4243
+ # in the cluster.
3880
4244
  class MonitoringConfig
3881
4245
  include ::Google::Protobuf::MessageExts
3882
4246
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3898,9 +4262,28 @@ module Google
3898
4262
 
3899
4263
  # system components
3900
4264
  SYSTEM_COMPONENTS = 1
4265
+
4266
+ # kube-apiserver
4267
+ APISERVER = 3
4268
+
4269
+ # kube-scheduler
4270
+ SCHEDULER = 4
4271
+
4272
+ # kube-controller-manager
4273
+ CONTROLLER_MANAGER = 5
3901
4274
  end
3902
4275
  end
3903
4276
 
4277
+ # ManagedPrometheusConfig defines the configuration for
4278
+ # Google Cloud Managed Service for Prometheus.
4279
+ # @!attribute [rw] enabled
4280
+ # @return [::Boolean]
4281
+ # Enable Managed Collection.
4282
+ class ManagedPrometheusConfig
4283
+ include ::Google::Protobuf::MessageExts
4284
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4285
+ end
4286
+
3904
4287
  # PrivateIPv6GoogleAccess controls whether and how the pods can communicate
3905
4288
  # with Google Services through gRPC over IPv6.
3906
4289
  module PrivateIPv6GoogleAccess
@@ -3917,6 +4300,19 @@ module Google
3917
4300
  PRIVATE_IPV6_GOOGLE_ACCESS_BIDIRECTIONAL = 3
3918
4301
  end
3919
4302
 
4303
+ # UpgradeResourceType is the resource type that is upgrading. It is used
4304
+ # in upgrade notifications.
4305
+ module UpgradeResourceType
4306
+ # Default value. This shouldn't be used.
4307
+ UPGRADE_RESOURCE_TYPE_UNSPECIFIED = 0
4308
+
4309
+ # Master / control plane
4310
+ MASTER = 1
4311
+
4312
+ # Node pool
4313
+ NODE_POOL = 2
4314
+ end
4315
+
3920
4316
  # The datapath provider selects the implementation of the Kubernetes networking
3921
4317
  # model for service resolution and network policy enforcement.
3922
4318
  module DatapathProvider
@@ -3933,17 +4329,17 @@ module Google
3933
4329
  ADVANCED_DATAPATH = 2
3934
4330
  end
3935
4331
 
3936
- # UpgradeResourceType is the resource type that is upgrading. It is used
3937
- # in upgrade notifications.
3938
- module UpgradeResourceType
3939
- # Default value. This shouldn't be used.
3940
- UPGRADE_RESOURCE_TYPE_UNSPECIFIED = 0
4332
+ # Strategy used for node pool update.
4333
+ module NodePoolUpdateStrategy
4334
+ # Default value.
4335
+ NODE_POOL_UPDATE_STRATEGY_UNSPECIFIED = 0
3941
4336
 
3942
- # Master / control plane
3943
- MASTER = 1
4337
+ # blue-green upgrade.
4338
+ BLUE_GREEN = 2
3944
4339
 
3945
- # Node pool
3946
- NODE_POOL = 2
4340
+ # SURGE is the traditional way of upgrade a node pool.
4341
+ # max_surge and max_unavailable determines the level of upgrade parallelism.
4342
+ SURGE = 3
3947
4343
  end
3948
4344
  end
3949
4345
  end