google-cloud-container-v1beta1 0.8.2 → 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"
@@ -257,9 +290,23 @@ module Google
257
290
  # @return [::Google::Cloud::Container::V1beta1::EphemeralStorageConfig]
258
291
  # Parameters for the ephemeral storage filesystem.
259
292
  # If unspecified, ephemeral storage is backed by the boot disk.
293
+ # @!attribute [rw] gcfs_config
294
+ # @return [::Google::Cloud::Container::V1beta1::GcfsConfig]
295
+ # GCFS (Google Container File System) configs.
296
+ # @!attribute [rw] advanced_machine_features
297
+ # @return [::Google::Cloud::Container::V1beta1::AdvancedMachineFeatures]
298
+ # Advanced features for the Compute Engine VM.
260
299
  # @!attribute [rw] gvnic
261
300
  # @return [::Google::Cloud::Container::V1beta1::VirtualNIC]
262
301
  # Enable or disable gvnic on the node pool.
302
+ # @!attribute [rw] spot
303
+ # @return [::Boolean]
304
+ # Spot flag for enabling Spot VM, which is a rebrand of
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.
263
310
  class NodeConfig
264
311
  include ::Google::Protobuf::MessageExts
265
312
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -283,6 +330,17 @@ module Google
283
330
  end
284
331
  end
285
332
 
333
+ # Specifies options for controlling advanced machine features.
334
+ # @!attribute [rw] threads_per_core
335
+ # @return [::Integer]
336
+ # The number of threads per physical core. To disable simultaneous
337
+ # multithreading (SMT) set this to 1. If unset, the maximum number of threads
338
+ # supported per core by the underlying processor is assumed.
339
+ class AdvancedMachineFeatures
340
+ include ::Google::Protobuf::MessageExts
341
+ extend ::Google::Protobuf::MessageExts::ClassMethods
342
+ end
343
+
286
344
  # Parameters for node pool-level network config.
287
345
  # @!attribute [rw] create_pod_range
288
346
  # @return [::Boolean]
@@ -325,9 +383,34 @@ module Google
325
383
  # Only applicable if `ip_allocation_policy.use_ip_aliases` is true.
326
384
  #
327
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.
328
389
  class NodeNetworkConfig
329
390
  include ::Google::Protobuf::MessageExts
330
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
331
414
  end
332
415
 
333
416
  # A set of Shielded Instance options.
@@ -384,6 +467,15 @@ module Google
384
467
  extend ::Google::Protobuf::MessageExts::ClassMethods
385
468
  end
386
469
 
470
+ # GcfsConfig contains configurations of Google Container File System.
471
+ # @!attribute [rw] enabled
472
+ # @return [::Boolean]
473
+ # Whether to use GCFS.
474
+ class GcfsConfig
475
+ include ::Google::Protobuf::MessageExts
476
+ extend ::Google::Protobuf::MessageExts::ClassMethods
477
+ end
478
+
387
479
  # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
388
480
  # is the configuration of desired reservation which instances could take
389
481
  # capacity from.
@@ -593,6 +685,12 @@ module Google
593
685
  # @return [::Google::Cloud::Container::V1beta1::KalmConfig]
594
686
  # Configuration for the KALM addon, which manages the lifecycle of k8s
595
687
  # applications.
688
+ # @!attribute [rw] gcp_filestore_csi_driver_config
689
+ # @return [::Google::Cloud::Container::V1beta1::GcpFilestoreCsiDriverConfig]
690
+ # Configuration for the GCP Filestore CSI driver.
691
+ # @!attribute [rw] gke_backup_agent_config
692
+ # @return [::Google::Cloud::Container::V1beta1::GkeBackupAgentConfig]
693
+ # Configuration for the Backup for GKE agent addon.
596
694
  class AddonsConfig
597
695
  include ::Google::Protobuf::MessageExts
598
696
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -661,6 +759,15 @@ module Google
661
759
  extend ::Google::Protobuf::MessageExts::ClassMethods
662
760
  end
663
761
 
762
+ # Configuration for the Backup for GKE Agent.
763
+ # @!attribute [rw] enabled
764
+ # @return [::Boolean]
765
+ # Whether the Backup for GKE agent is enabled for this cluster.
766
+ class GkeBackupAgentConfig
767
+ include ::Google::Protobuf::MessageExts
768
+ extend ::Google::Protobuf::MessageExts::ClassMethods
769
+ end
770
+
664
771
  # Configuration options for the Config Connector add-on.
665
772
  # @!attribute [rw] enabled
666
773
  # @return [::Boolean]
@@ -679,6 +786,15 @@ module Google
679
786
  extend ::Google::Protobuf::MessageExts::ClassMethods
680
787
  end
681
788
 
789
+ # Configuration for the GCP Filestore CSI driver.
790
+ # @!attribute [rw] enabled
791
+ # @return [::Boolean]
792
+ # Whether the GCP Filestore CSI driver is enabled for this cluster.
793
+ class GcpFilestoreCsiDriverConfig
794
+ include ::Google::Protobuf::MessageExts
795
+ extend ::Google::Protobuf::MessageExts::ClassMethods
796
+ end
797
+
682
798
  # Configuration for controlling master global access settings.
683
799
  # @!attribute [rw] enabled
684
800
  # @return [::Boolean]
@@ -960,19 +1076,74 @@ module Google
960
1076
  # This is used in conjunction with use_ip_aliases. It cannot be true if
961
1077
  # use_ip_aliases is true. If both use_ip_aliases and use_routes are false,
962
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.
963
1091
  class IPAllocationPolicy
964
1092
  include ::Google::Protobuf::MessageExts
965
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
966
1118
  end
967
1119
 
968
1120
  # Configuration for Binary Authorization.
969
1121
  # @!attribute [rw] enabled
970
1122
  # @return [::Boolean]
971
1123
  # Enable Binary Authorization for this cluster. If enabled, all container
972
- # 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.
973
1130
  class BinaryAuthorization
974
1131
  include ::Google::Protobuf::MessageExts
975
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
976
1147
  end
977
1148
 
978
1149
  # Configuration for the PodSecurityPolicy feature.
@@ -1222,6 +1393,16 @@ module Google
1222
1393
  # @return [::Google::Cloud::Container::V1beta1::WorkloadCertificates]
1223
1394
  # Configuration for issuance of mTLS keys and certificates to Kubernetes
1224
1395
  # pods.
1396
+ # @!attribute [rw] mesh_certificates
1397
+ # @return [::Google::Cloud::Container::V1beta1::MeshCertificates]
1398
+ # Configuration for issuance of mTLS keys and certificates to Kubernetes
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.
1225
1406
  # @!attribute [rw] cluster_telemetry
1226
1407
  # @return [::Google::Cloud::Container::V1beta1::ClusterTelemetry]
1227
1408
  # Telemetry integration for the cluster.
@@ -1233,7 +1414,8 @@ module Google
1233
1414
  # Notification configuration of the cluster.
1234
1415
  # @!attribute [rw] confidential_nodes
1235
1416
  # @return [::Google::Cloud::Container::V1beta1::ConfidentialNodes]
1236
- # Configuration of Confidential Nodes
1417
+ # Configuration of Confidential Nodes.
1418
+ # All the nodes in the cluster will be Confidential VM once enabled.
1237
1419
  # @!attribute [rw] identity_service_config
1238
1420
  # @return [::Google::Cloud::Container::V1beta1::IdentityServiceConfig]
1239
1421
  # Configuration for Identity Service component.
@@ -1355,6 +1537,13 @@ module Google
1355
1537
  # @!attribute [rw] monitoring_config
1356
1538
  # @return [::Google::Cloud::Container::V1beta1::MonitoringConfig]
1357
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.
1358
1547
  class Cluster
1359
1548
  include ::Google::Protobuf::MessageExts
1360
1549
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1398,6 +1587,48 @@ module Google
1398
1587
  end
1399
1588
  end
1400
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
+
1401
1632
  # Subset of Nodepool message that has defaults.
1402
1633
  # @!attribute [rw] node_config_defaults
1403
1634
  # @return [::Google::Cloud::Container::V1beta1::NodeConfigDefaults]
@@ -1408,11 +1639,27 @@ module Google
1408
1639
  end
1409
1640
 
1410
1641
  # Subset of NodeConfig message that has defaults.
1642
+ # @!attribute [rw] gcfs_config
1643
+ # @return [::Google::Cloud::Container::V1beta1::GcfsConfig]
1644
+ # GCFS (Google Container File System, a.k.a. Riptide) options.
1411
1645
  class NodeConfigDefaults
1412
1646
  include ::Google::Protobuf::MessageExts
1413
1647
  extend ::Google::Protobuf::MessageExts::ClassMethods
1414
1648
  end
1415
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
+
1416
1663
  # ClusterUpdate describes an update to the cluster. Exactly one update can
1417
1664
  # be applied to a cluster with each request, so at most one field can be
1418
1665
  # provided.
@@ -1545,6 +1792,9 @@ module Google
1545
1792
  # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
1546
1793
  # - "1.X.Y-gke.N": picks an explicit Kubernetes version
1547
1794
  # - "-": picks the default Kubernetes version
1795
+ # @!attribute [rw] desired_gcfs_config
1796
+ # @return [::Google::Cloud::Container::V1beta1::GcfsConfig]
1797
+ # The desired GCFS config for the cluster.
1548
1798
  # @!attribute [rw] desired_database_encryption
1549
1799
  # @return [::Google::Cloud::Container::V1beta1::DatabaseEncryption]
1550
1800
  # Configuration of etcd encryption.
@@ -1555,9 +1805,19 @@ module Google
1555
1805
  # @return [::Google::Cloud::Container::V1beta1::WorkloadCertificates]
1556
1806
  # Configuration for issuance of mTLS keys and certificates to Kubernetes
1557
1807
  # pods.
1808
+ # @!attribute [rw] desired_mesh_certificates
1809
+ # @return [::Google::Cloud::Container::V1beta1::MeshCertificates]
1810
+ # Configuration for issuance of mTLS keys and certificates to Kubernetes
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.
1558
1815
  # @!attribute [rw] desired_shielded_nodes
1559
1816
  # @return [::Google::Cloud::Container::V1beta1::ShieldedNodes]
1560
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.
1561
1821
  # @!attribute [rw] desired_master
1562
1822
  # @return [::Google::Cloud::Container::V1beta1::Master]
1563
1823
  # Configuration for master components.
@@ -1581,6 +1841,13 @@ module Google
1581
1841
  # @!attribute [rw] desired_identity_service_config
1582
1842
  # @return [::Google::Cloud::Container::V1beta1::IdentityServiceConfig]
1583
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.
1584
1851
  class ClusterUpdate
1585
1852
  include ::Google::Protobuf::MessageExts
1586
1853
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1768,7 +2035,7 @@ module Google
1768
2035
  # @!attribute [rw] project_id
1769
2036
  # @return [::String]
1770
2037
  # Required. Deprecated. The Google Developers Console [project ID or project
1771
- # number](https://support.google.com/cloud/answer/6158840).
2038
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1772
2039
  # This field has been deprecated and replaced by the parent field.
1773
2040
  # @!attribute [rw] zone
1774
2041
  # @return [::String]
@@ -1793,7 +2060,7 @@ module Google
1793
2060
  # @!attribute [rw] project_id
1794
2061
  # @return [::String]
1795
2062
  # Required. Deprecated. The Google Developers Console [project ID or project
1796
- # number](https://support.google.com/cloud/answer/6158840).
2063
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1797
2064
  # This field has been deprecated and replaced by the name field.
1798
2065
  # @!attribute [rw] zone
1799
2066
  # @return [::String]
@@ -1818,7 +2085,7 @@ module Google
1818
2085
  # @!attribute [rw] project_id
1819
2086
  # @return [::String]
1820
2087
  # Required. Deprecated. The Google Developers Console [project ID or project
1821
- # number](https://support.google.com/cloud/answer/6158840).
2088
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1822
2089
  # This field has been deprecated and replaced by the name field.
1823
2090
  # @!attribute [rw] zone
1824
2091
  # @return [::String]
@@ -1846,7 +2113,7 @@ module Google
1846
2113
  # @!attribute [rw] project_id
1847
2114
  # @return [::String]
1848
2115
  # Required. Deprecated. The Google Developers Console [project ID or project
1849
- # number](https://support.google.com/cloud/answer/6158840).
2116
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1850
2117
  # This field has been deprecated and replaced by the name field.
1851
2118
  # @!attribute [rw] zone
1852
2119
  # @return [::String]
@@ -1917,6 +2184,16 @@ module Google
1917
2184
  # @!attribute [rw] kubelet_config
1918
2185
  # @return [::Google::Cloud::Container::V1beta1::NodeKubeletConfig]
1919
2186
  # Node kubelet configs.
2187
+ # @!attribute [rw] node_network_config
2188
+ # @return [::Google::Cloud::Container::V1beta1::NodeNetworkConfig]
2189
+ # Node network config.
2190
+ # @!attribute [rw] gcfs_config
2191
+ # @return [::Google::Cloud::Container::V1beta1::GcfsConfig]
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.
1920
2197
  # @!attribute [rw] gvnic
1921
2198
  # @return [::Google::Cloud::Container::V1beta1::VirtualNIC]
1922
2199
  # Enable or disable gvnic on the node pool.
@@ -1929,7 +2206,7 @@ module Google
1929
2206
  # @!attribute [rw] project_id
1930
2207
  # @return [::String]
1931
2208
  # Required. Deprecated. The Google Developers Console [project ID or project
1932
- # number](https://support.google.com/cloud/answer/6158840).
2209
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1933
2210
  # This field has been deprecated and replaced by the name field.
1934
2211
  # @!attribute [rw] zone
1935
2212
  # @return [::String]
@@ -1962,7 +2239,7 @@ module Google
1962
2239
  # @!attribute [rw] project_id
1963
2240
  # @return [::String]
1964
2241
  # Required. Deprecated. The Google Developers Console [project ID or project
1965
- # number](https://support.google.com/cloud/answer/6158840).
2242
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1966
2243
  # This field has been deprecated and replaced by the name field.
1967
2244
  # @!attribute [rw] zone
1968
2245
  # @return [::String]
@@ -2000,7 +2277,7 @@ module Google
2000
2277
  # @!attribute [rw] project_id
2001
2278
  # @return [::String]
2002
2279
  # Required. Deprecated. The Google Developers Console [project ID or project
2003
- # number](https://support.google.com/cloud/answer/6158840).
2280
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2004
2281
  # This field has been deprecated and replaced by the name field.
2005
2282
  # @!attribute [rw] zone
2006
2283
  # @return [::String]
@@ -2038,7 +2315,7 @@ module Google
2038
2315
  # @!attribute [rw] project_id
2039
2316
  # @return [::String]
2040
2317
  # Required. Deprecated. The Google Developers Console [project ID or project
2041
- # number](https://support.google.com/cloud/answer/6158840).
2318
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2042
2319
  # This field has been deprecated and replaced by the name field.
2043
2320
  # @!attribute [rw] zone
2044
2321
  # @return [::String]
@@ -2052,8 +2329,8 @@ module Google
2052
2329
  # This field has been deprecated and replaced by the name field.
2053
2330
  # @!attribute [rw] addons_config
2054
2331
  # @return [::Google::Cloud::Container::V1beta1::AddonsConfig]
2055
- # Required. The desired configurations for the various addons available to
2056
- # run in the cluster.
2332
+ # Required. The desired configurations for the various addons available to run in the
2333
+ # cluster.
2057
2334
  # @!attribute [rw] name
2058
2335
  # @return [::String]
2059
2336
  # The name (project, location, cluster) of the cluster to set addons.
@@ -2067,7 +2344,7 @@ module Google
2067
2344
  # @!attribute [rw] project_id
2068
2345
  # @return [::String]
2069
2346
  # Required. Deprecated. The Google Developers Console [project ID or project
2070
- # number](https://support.google.com/cloud/answer/6158840).
2347
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2071
2348
  # This field has been deprecated and replaced by the name field.
2072
2349
  # @!attribute [rw] zone
2073
2350
  # @return [::String]
@@ -2101,7 +2378,7 @@ module Google
2101
2378
  # @!attribute [rw] project_id
2102
2379
  # @return [::String]
2103
2380
  # Required. Deprecated. The Google Developers Console [project ID or project
2104
- # number](https://support.google.com/cloud/answer/6158840).
2381
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2105
2382
  # This field has been deprecated and replaced by the name field.
2106
2383
  # @!attribute [rw] zone
2107
2384
  # @return [::String]
@@ -2138,7 +2415,7 @@ module Google
2138
2415
  # @!attribute [rw] project_id
2139
2416
  # @return [::String]
2140
2417
  # Required. Deprecated. The Google Developers Console [project ID or project
2141
- # number](https://support.google.com/cloud/answer/6158840).
2418
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2142
2419
  # This field has been deprecated and replaced by the name field.
2143
2420
  # @!attribute [rw] zone
2144
2421
  # @return [::String]
@@ -2187,7 +2464,7 @@ module Google
2187
2464
  # @!attribute [rw] project_id
2188
2465
  # @return [::String]
2189
2466
  # Required. Deprecated. The Google Developers Console [project ID or project
2190
- # number](https://support.google.com/cloud/answer/6158840).
2467
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2191
2468
  # This field has been deprecated and replaced by the name field.
2192
2469
  # @!attribute [rw] zone
2193
2470
  # @return [::String]
@@ -2212,7 +2489,7 @@ module Google
2212
2489
  # @!attribute [rw] project_id
2213
2490
  # @return [::String]
2214
2491
  # Required. Deprecated. The Google Developers Console [project ID or project
2215
- # number](https://support.google.com/cloud/answer/6158840).
2492
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2216
2493
  # This field has been deprecated and replaced by the parent field.
2217
2494
  # @!attribute [rw] zone
2218
2495
  # @return [::String]
@@ -2248,7 +2525,7 @@ module Google
2248
2525
  # @!attribute [rw] project_id
2249
2526
  # @return [::String]
2250
2527
  # Required. Deprecated. The Google Developers Console [project ID or project
2251
- # number](https://support.google.com/cloud/answer/6158840).
2528
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2252
2529
  # This field has been deprecated and replaced by the name field.
2253
2530
  # @!attribute [rw] zone
2254
2531
  # @return [::String]
@@ -2273,7 +2550,7 @@ module Google
2273
2550
  # @!attribute [rw] project_id
2274
2551
  # @return [::String]
2275
2552
  # Required. Deprecated. The Google Developers Console [project ID or project
2276
- # number](https://support.google.com/cloud/answer/6158840).
2553
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2277
2554
  # This field has been deprecated and replaced by the parent field.
2278
2555
  # @!attribute [rw] zone
2279
2556
  # @return [::String]
@@ -2295,7 +2572,7 @@ module Google
2295
2572
  # @!attribute [rw] project_id
2296
2573
  # @return [::String]
2297
2574
  # Required. Deprecated. The Google Developers Console [project ID or project
2298
- # number](https://support.google.com/cloud/answer/6158840).
2575
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2299
2576
  # This field has been deprecated and replaced by the name field.
2300
2577
  # @!attribute [rw] zone
2301
2578
  # @return [::String]
@@ -2333,7 +2610,7 @@ module Google
2333
2610
  # @!attribute [rw] project_id
2334
2611
  # @return [::String]
2335
2612
  # Required. Deprecated. The Google Developers Console [project ID or project
2336
- # number](https://support.google.com/cloud/answer/6158840).
2613
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2337
2614
  # This field has been deprecated and replaced by the name field.
2338
2615
  # @!attribute [rw] zone
2339
2616
  # @return [::String]
@@ -2446,7 +2723,7 @@ module Google
2446
2723
  # @!attribute [rw] project_id
2447
2724
  # @return [::String]
2448
2725
  # Required. Deprecated. The Google Developers Console [project ID or project
2449
- # number](https://developers.google.com/console/help/new/#projectnumber).
2726
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2450
2727
  # This field has been deprecated and replaced by the parent field.
2451
2728
  # @!attribute [rw] zone
2452
2729
  # @return [::String]
@@ -2463,7 +2740,7 @@ module Google
2463
2740
  # Required. The node pool to create.
2464
2741
  # @!attribute [rw] parent
2465
2742
  # @return [::String]
2466
- # 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
2467
2744
  # created. Specified in the format
2468
2745
  # `projects/*/locations/*/clusters/*`.
2469
2746
  class CreateNodePoolRequest
@@ -2475,7 +2752,7 @@ module Google
2475
2752
  # @!attribute [rw] project_id
2476
2753
  # @return [::String]
2477
2754
  # Required. Deprecated. The Google Developers Console [project ID or project
2478
- # number](https://developers.google.com/console/help/new/#projectnumber).
2755
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2479
2756
  # This field has been deprecated and replaced by the name field.
2480
2757
  # @!attribute [rw] zone
2481
2758
  # @return [::String]
@@ -2505,7 +2782,7 @@ module Google
2505
2782
  # @!attribute [rw] project_id
2506
2783
  # @return [::String]
2507
2784
  # Required. Deprecated. The Google Developers Console [project ID or project
2508
- # number](https://developers.google.com/console/help/new/#projectnumber).
2785
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2509
2786
  # This field has been deprecated and replaced by the parent field.
2510
2787
  # @!attribute [rw] zone
2511
2788
  # @return [::String]
@@ -2519,7 +2796,7 @@ module Google
2519
2796
  # This field has been deprecated and replaced by the parent field.
2520
2797
  # @!attribute [rw] parent
2521
2798
  # @return [::String]
2522
- # 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
2523
2800
  # listed. Specified in the format `projects/*/locations/*/clusters/*`.
2524
2801
  class ListNodePoolsRequest
2525
2802
  include ::Google::Protobuf::MessageExts
@@ -2530,7 +2807,7 @@ module Google
2530
2807
  # @!attribute [rw] project_id
2531
2808
  # @return [::String]
2532
2809
  # Required. Deprecated. The Google Developers Console [project ID or project
2533
- # number](https://developers.google.com/console/help/new/#projectnumber).
2810
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2534
2811
  # This field has been deprecated and replaced by the name field.
2535
2812
  # @!attribute [rw] zone
2536
2813
  # @return [::String]
@@ -2556,6 +2833,35 @@ module Google
2556
2833
  extend ::Google::Protobuf::MessageExts::ClassMethods
2557
2834
  end
2558
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
+
2559
2865
  # NodePool contains the name and configuration for a cluster's node pool.
2560
2866
  # Node pools are a set of nodes (i.e. VM's), with a common configuration and
2561
2867
  # specification, under the control of the cluster master. They may have a set
@@ -2624,6 +2930,8 @@ module Google
2624
2930
  # [Output only] The resource URLs of the [managed instance
2625
2931
  # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
2626
2932
  # associated with this node pool.
2933
+ # During the node pool blue-green upgrade operation, the URLs contain both
2934
+ # blue and green resources.
2627
2935
  # @!attribute [rw] status
2628
2936
  # @return [::Google::Cloud::Container::V1beta1::NodePool::Status]
2629
2937
  # [Output only] The status of the nodes in this pool instance.
@@ -2652,10 +2960,39 @@ module Google
2652
2960
  # @!attribute [rw] upgrade_settings
2653
2961
  # @return [::Google::Cloud::Container::V1beta1::NodePool::UpgradeSettings]
2654
2962
  # Upgrade settings control disruption and speed of the upgrade.
2963
+ # @!attribute [rw] placement_policy
2964
+ # @return [::Google::Cloud::Container::V1beta1::NodePool::PlacementPolicy]
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.
2655
2970
  class NodePool
2656
2971
  include ::Google::Protobuf::MessageExts
2657
2972
  extend ::Google::Protobuf::MessageExts::ClassMethods
2658
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.
2659
2996
  # @!attribute [rw] max_surge
2660
2997
  # @return [::Integer]
2661
2998
  # The maximum number of nodes that can be created beyond the current size
@@ -2665,11 +3002,100 @@ module Google
2665
3002
  # The maximum number of nodes that can be simultaneously unavailable during
2666
3003
  # the upgrade process. A node is considered available if its status is
2667
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.
2668
3011
  class UpgradeSettings
2669
3012
  include ::Google::Protobuf::MessageExts
2670
3013
  extend ::Google::Protobuf::MessageExts::ClassMethods
2671
3014
  end
2672
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
+
3079
+ # PlacementPolicy defines the placement policy used by the node pool.
3080
+ # @!attribute [rw] type
3081
+ # @return [::Google::Cloud::Container::V1beta1::NodePool::PlacementPolicy::Type]
3082
+ # The type of placement.
3083
+ class PlacementPolicy
3084
+ include ::Google::Protobuf::MessageExts
3085
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3086
+
3087
+ # Type defines the type of placement policy.
3088
+ module Type
3089
+ # TYPE_UNSPECIFIED specifies no requirements on nodes
3090
+ # placement.
3091
+ TYPE_UNSPECIFIED = 0
3092
+
3093
+ # COMPACT specifies node placement in the same availability domain to
3094
+ # ensure low communication latency.
3095
+ COMPACT = 1
3096
+ end
3097
+ end
3098
+
2673
3099
  # The current status of the node pool instance.
2674
3100
  module Status
2675
3101
  # Not set.
@@ -2778,6 +3204,10 @@ module Google
2778
3204
  end
2779
3205
 
2780
3206
  # Represents an arbitrary window of time.
3207
+ # @!attribute [rw] maintenance_exclusion_options
3208
+ # @return [::Google::Cloud::Container::V1beta1::MaintenanceExclusionOptions]
3209
+ # MaintenanceExclusionOptions provides maintenance exclusion related
3210
+ # options.
2781
3211
  # @!attribute [rw] start_time
2782
3212
  # @return [::Google::Protobuf::Timestamp]
2783
3213
  # The time that the window first starts.
@@ -2790,6 +3220,33 @@ module Google
2790
3220
  extend ::Google::Protobuf::MessageExts::ClassMethods
2791
3221
  end
2792
3222
 
3223
+ # Represents the Maintenance exclusion option.
3224
+ # @!attribute [rw] scope
3225
+ # @return [::Google::Cloud::Container::V1beta1::MaintenanceExclusionOptions::Scope]
3226
+ # Scope specifies the upgrade scope which upgrades are blocked by the
3227
+ # exclusion.
3228
+ class MaintenanceExclusionOptions
3229
+ include ::Google::Protobuf::MessageExts
3230
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3231
+
3232
+ # Scope of exclusion.
3233
+ module Scope
3234
+ # NO_UPGRADES excludes all upgrades, including patch upgrades and minor
3235
+ # upgrades across control planes and nodes. This is the default exclusion
3236
+ # behavior.
3237
+ NO_UPGRADES = 0
3238
+
3239
+ # NO_MINOR_UPGRADES excludes all minor upgrades for the cluster, only
3240
+ # patches are allowed.
3241
+ NO_MINOR_UPGRADES = 1
3242
+
3243
+ # NO_MINOR_OR_NODE_UPGRADES excludes all minor upgrades for the cluster,
3244
+ # and also exclude all node pool upgrades. Only control
3245
+ # plane patches are allowed.
3246
+ NO_MINOR_OR_NODE_UPGRADES = 2
3247
+ end
3248
+ end
3249
+
2793
3250
  # Represents an arbitrary window of time that recurs.
2794
3251
  # @!attribute [rw] window
2795
3252
  # @return [::Google::Cloud::Container::V1beta1::TimeWindow]
@@ -2852,7 +3309,7 @@ module Google
2852
3309
  # @!attribute [rw] project_id
2853
3310
  # @return [::String]
2854
3311
  # Required. Deprecated. The Google Developers Console [project ID or project
2855
- # number](https://support.google.com/cloud/answer/6158840).
3312
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2856
3313
  # This field has been deprecated and replaced by the name field.
2857
3314
  # @!attribute [rw] zone
2858
3315
  # @return [::String]
@@ -2885,7 +3342,7 @@ module Google
2885
3342
  # @!attribute [rw] project_id
2886
3343
  # @return [::String]
2887
3344
  # Required. Deprecated. The Google Developers Console [project ID or project
2888
- # number](https://support.google.com/cloud/answer/6158840).
3345
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2889
3346
  # This field has been deprecated and replaced by the name field.
2890
3347
  # @!attribute [rw] zone
2891
3348
  # @return [::String]
@@ -2914,13 +3371,25 @@ module Google
2914
3371
  extend ::Google::Protobuf::MessageExts::ClassMethods
2915
3372
  end
2916
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
+
2917
3386
  # RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
2918
3387
  # NodePool upgrade. This will be an no-op if the last upgrade successfully
2919
3388
  # completed.
2920
3389
  # @!attribute [rw] project_id
2921
3390
  # @return [::String]
2922
3391
  # Required. Deprecated. The Google Developers Console [project ID or project
2923
- # number](https://support.google.com/cloud/answer/6158840).
3392
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2924
3393
  # This field has been deprecated and replaced by the name field.
2925
3394
  # @!attribute [rw] zone
2926
3395
  # @return [::String]
@@ -2941,6 +3410,10 @@ module Google
2941
3410
  # The name (project, location, cluster, node pool id) of the node poll to
2942
3411
  # rollback upgrade.
2943
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.
2944
3417
  class RollbackNodePoolUpgradeRequest
2945
3418
  include ::Google::Protobuf::MessageExts
2946
3419
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3027,13 +3500,15 @@ module Google
3027
3500
  # NodeManagement configuration for this NodePool.
3028
3501
  # @!attribute [rw] min_cpu_platform
3029
3502
  # @return [::String]
3030
- # Minimum CPU platform to be used by this instance. The instance may be
3031
- # scheduled on the specified or newer CPU platform. Applicable values are the
3032
- # friendly names of CPU platforms, such as
3033
- # `minCpuPlatform: "Intel Haswell"` or
3034
- # `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
3035
3508
  # information, read [how to specify min CPU
3036
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.
3037
3512
  # To unset the min cpu platform field pass "automatic"
3038
3513
  # as field value.
3039
3514
  # @!attribute [rw] disk_size_gb
@@ -3090,18 +3565,47 @@ module Google
3090
3565
  # Is autoscaling enabled for this node pool.
3091
3566
  # @!attribute [rw] min_node_count
3092
3567
  # @return [::Integer]
3093
- # Minimum number of nodes in the NodePool. Must be >= 1 and <=
3094
- # max_node_count.
3568
+ # Minimum number of nodes for one location in the NodePool. Must be >= 1 and
3569
+ # <= max_node_count.
3095
3570
  # @!attribute [rw] max_node_count
3096
3571
  # @return [::Integer]
3097
- # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
3098
- # has to be enough quota to scale up the cluster.
3572
+ # Maximum number of nodes for one location in the NodePool. Must be >=
3573
+ # min_node_count. There has to be enough quota to scale up the cluster.
3099
3574
  # @!attribute [rw] autoprovisioned
3100
3575
  # @return [::Boolean]
3101
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.
3102
3592
  class NodePoolAutoscaling
3103
3593
  include ::Google::Protobuf::MessageExts
3104
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
3105
3609
  end
3106
3610
 
3107
3611
  # SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
@@ -3110,7 +3614,7 @@ module Google
3110
3614
  # @!attribute [rw] project_id
3111
3615
  # @return [::String]
3112
3616
  # Required. Deprecated. The Google Developers Console [project ID or project
3113
- # number](https://developers.google.com/console/help/new/#projectnumber).
3617
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3114
3618
  # This field has been deprecated and replaced by the name field.
3115
3619
  # @!attribute [rw] zone
3116
3620
  # @return [::String]
@@ -3135,7 +3639,7 @@ module Google
3135
3639
  # resource to get the latest fingerprint.
3136
3640
  # @!attribute [rw] name
3137
3641
  # @return [::String]
3138
- # 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.
3139
3643
  # Specified in the format `projects/*/locations/*/clusters/*`.
3140
3644
  class SetLabelsRequest
3141
3645
  include ::Google::Protobuf::MessageExts
@@ -3156,7 +3660,7 @@ module Google
3156
3660
  # @!attribute [rw] project_id
3157
3661
  # @return [::String]
3158
3662
  # Required. Deprecated. The Google Developers Console [project ID or project
3159
- # number](https://support.google.com/cloud/answer/6158840).
3663
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3160
3664
  # This field has been deprecated and replaced by the name field.
3161
3665
  # @!attribute [rw] zone
3162
3666
  # @return [::String]
@@ -3173,8 +3677,8 @@ module Google
3173
3677
  # Required. Whether ABAC authorization will be enabled in the cluster.
3174
3678
  # @!attribute [rw] name
3175
3679
  # @return [::String]
3176
- # The name (project, location, cluster id) of the cluster to set legacy abac.
3177
- # 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/*`.
3178
3682
  class SetLegacyAbacRequest
3179
3683
  include ::Google::Protobuf::MessageExts
3180
3684
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3185,7 +3689,7 @@ module Google
3185
3689
  # @!attribute [rw] project_id
3186
3690
  # @return [::String]
3187
3691
  # Required. Deprecated. The Google Developers Console [project ID or project
3188
- # number](https://developers.google.com/console/help/new/#projectnumber).
3692
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3189
3693
  # This field has been deprecated and replaced by the name field.
3190
3694
  # @!attribute [rw] zone
3191
3695
  # @return [::String]
@@ -3199,7 +3703,7 @@ module Google
3199
3703
  # This field has been deprecated and replaced by the name field.
3200
3704
  # @!attribute [rw] name
3201
3705
  # @return [::String]
3202
- # 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
3203
3707
  # rotation. Specified in the format `projects/*/locations/*/clusters/*`.
3204
3708
  # @!attribute [rw] rotate_credentials
3205
3709
  # @return [::Boolean]
@@ -3213,7 +3717,7 @@ module Google
3213
3717
  # @!attribute [rw] project_id
3214
3718
  # @return [::String]
3215
3719
  # Required. Deprecated. The Google Developers Console [project ID or project
3216
- # number](https://developers.google.com/console/help/new/#projectnumber).
3720
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3217
3721
  # This field has been deprecated and replaced by the name field.
3218
3722
  # @!attribute [rw] zone
3219
3723
  # @return [::String]
@@ -3227,7 +3731,7 @@ module Google
3227
3731
  # This field has been deprecated and replaced by the name field.
3228
3732
  # @!attribute [rw] name
3229
3733
  # @return [::String]
3230
- # 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
3231
3735
  # rotation. Specified in the format `projects/*/locations/*/clusters/*`.
3232
3736
  class CompleteIPRotationRequest
3233
3737
  include ::Google::Protobuf::MessageExts
@@ -3247,11 +3751,49 @@ module Google
3247
3751
  # Size of partitions to create on the GPU. Valid values are described in the
3248
3752
  # NVIDIA [mig user
3249
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.
3250
3760
  class AcceleratorConfig
3251
3761
  include ::Google::Protobuf::MessageExts
3252
3762
  extend ::Google::Protobuf::MessageExts::ClassMethods
3253
3763
  end
3254
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
+
3787
+ # ManagedPrometheusConfig defines the configuration for
3788
+ # Google Cloud Managed Service for Prometheus.
3789
+ # @!attribute [rw] enabled
3790
+ # @return [::Boolean]
3791
+ # Enable Managed Collection.
3792
+ class ManagedPrometheusConfig
3793
+ include ::Google::Protobuf::MessageExts
3794
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3795
+ end
3796
+
3255
3797
  # WorkloadMetadataConfig defines the metadata configuration to expose to
3256
3798
  # workloads on the node pool.
3257
3799
  # @!attribute [rw] node_metadata
@@ -3315,7 +3857,7 @@ module Google
3315
3857
  # @!attribute [rw] project_id
3316
3858
  # @return [::String]
3317
3859
  # Required. Deprecated. The Google Developers Console [project ID or project
3318
- # number](https://developers.google.com/console/help/new/#projectnumber).
3860
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3319
3861
  # This field has been deprecated and replaced by the name field.
3320
3862
  # @!attribute [rw] zone
3321
3863
  # @return [::String]
@@ -3332,7 +3874,7 @@ module Google
3332
3874
  # Required. Configuration options for the NetworkPolicy feature.
3333
3875
  # @!attribute [rw] name
3334
3876
  # @return [::String]
3335
- # 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
3336
3878
  # policy. Specified in the format `projects/*/locations/*/clusters/*`.
3337
3879
  class SetNetworkPolicyRequest
3338
3880
  include ::Google::Protobuf::MessageExts
@@ -3343,7 +3885,7 @@ module Google
3343
3885
  # @!attribute [rw] project_id
3344
3886
  # @return [::String]
3345
3887
  # Required. The Google Developers Console [project ID or project
3346
- # number](https://support.google.com/cloud/answer/6158840).
3888
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3347
3889
  # @!attribute [rw] zone
3348
3890
  # @return [::String]
3349
3891
  # Required. The name of the Google Compute Engine
@@ -3358,8 +3900,8 @@ module Google
3358
3900
  # clears the existing maintenance policy.
3359
3901
  # @!attribute [rw] name
3360
3902
  # @return [::String]
3361
- # The name (project, location, cluster id) of the cluster to set maintenance
3362
- # policy.
3903
+ # The name (project, location, cluster name) of the cluster to set
3904
+ # maintenance policy.
3363
3905
  # Specified in the format `projects/*/locations/*/clusters/*`.
3364
3906
  class SetMaintenancePolicyRequest
3365
3907
  include ::Google::Protobuf::MessageExts
@@ -3736,6 +4278,20 @@ module Google
3736
4278
  extend ::Google::Protobuf::MessageExts::ClassMethods
3737
4279
  end
3738
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
+
3739
4295
  # Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
3740
4296
  # @!attribute [rw] enable_certificates
3741
4297
  # @return [::Google::Protobuf::BoolValue]
@@ -3753,6 +4309,23 @@ module Google
3753
4309
  extend ::Google::Protobuf::MessageExts::ClassMethods
3754
4310
  end
3755
4311
 
4312
+ # Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
4313
+ # @!attribute [rw] enable_certificates
4314
+ # @return [::Google::Protobuf::BoolValue]
4315
+ # enable_certificates controls issuance of workload mTLS certificates.
4316
+ #
4317
+ # If set, the GKE Workload Identity Certificates controller and node agent
4318
+ # will be deployed in the cluster, which can then be configured by creating a
4319
+ # WorkloadCertificateConfig Custom Resource.
4320
+ #
4321
+ # Requires Workload Identity
4322
+ # ([workload_pool][google.container.v1alpha1.WorkloadIdentityConfig.workload_pool]
4323
+ # must be non-empty).
4324
+ class MeshCertificates
4325
+ include ::Google::Protobuf::MessageExts
4326
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4327
+ end
4328
+
3756
4329
  # Configuration of etcd encryption.
3757
4330
  # @!attribute [rw] state
3758
4331
  # @return [::Google::Cloud::Container::V1beta1::DatabaseEncryption::State]
@@ -3837,7 +4410,7 @@ module Google
3837
4410
  # cluster. See the OpenID Connect Discovery 1.0 specification for details.
3838
4411
  # @!attribute [rw] parent
3839
4412
  # @return [::String]
3840
- # The cluster (project, location, cluster id) to get the discovery document
4413
+ # The cluster (project, location, cluster name) to get the discovery document
3841
4414
  # for. Specified in the format `projects/*/locations/*/clusters/*`.
3842
4415
  class GetOpenIDConfigRequest
3843
4416
  include ::Google::Protobuf::MessageExts
@@ -3878,7 +4451,7 @@ module Google
3878
4451
  # Discovery 1.0 specification for details.
3879
4452
  # @!attribute [rw] parent
3880
4453
  # @return [::String]
3881
- # 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
3882
4455
  # the format `projects/*/locations/*/clusters/*`.
3883
4456
  class GetJSONWebKeysRequest
3884
4457
  include ::Google::Protobuf::MessageExts
@@ -3965,6 +4538,15 @@ module Google
3965
4538
  end
3966
4539
  end
3967
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
+
3968
4550
  # Configuration for Cloud TPU.
3969
4551
  # @!attribute [rw] enabled
3970
4552
  # @return [::Boolean]
@@ -4011,18 +4593,50 @@ module Google
4011
4593
  # @return [::String]
4012
4594
  # The desired Pub/Sub topic to which notifications will be
4013
4595
  # sent by GKE. Format is `projects/{project}/topics/{topic}`.
4596
+ # @!attribute [rw] filter
4597
+ # @return [::Google::Cloud::Container::V1beta1::NotificationConfig::Filter]
4598
+ # Allows filtering to one or more specific event types. If no filter is
4599
+ # specified, or if a filter is specified with no event types, all event
4600
+ # types will be sent
4014
4601
  class PubSub
4015
4602
  include ::Google::Protobuf::MessageExts
4016
4603
  extend ::Google::Protobuf::MessageExts::ClassMethods
4017
4604
  end
4605
+
4606
+ # Allows filtering to one or more specific event types. If event types are
4607
+ # present, those and only those event types will be transmitted to the
4608
+ # cluster. Other types will be skipped. If no filter is specified, or no
4609
+ # event types are present, all event types will be sent
4610
+ # @!attribute [rw] event_type
4611
+ # @return [::Array<::Google::Cloud::Container::V1beta1::NotificationConfig::EventType>]
4612
+ # Event types to allowlist.
4613
+ class Filter
4614
+ include ::Google::Protobuf::MessageExts
4615
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4616
+ end
4617
+
4618
+ # Types of notifications currently supported. Can be used to filter what
4619
+ # notifications are sent.
4620
+ module EventType
4621
+ # Not set, will be ignored.
4622
+ EVENT_TYPE_UNSPECIFIED = 0
4623
+
4624
+ # Corresponds with UpgradeAvailableEvent.
4625
+ UPGRADE_AVAILABLE_EVENT = 1
4626
+
4627
+ # Corresponds with UpgradeEvent.
4628
+ UPGRADE_EVENT = 2
4629
+
4630
+ # Corresponds with SecurityBulletinEvent.
4631
+ SECURITY_BULLETIN_EVENT = 3
4632
+ end
4018
4633
  end
4019
4634
 
4020
4635
  # ConfidentialNodes is configuration for the confidential nodes feature, which
4021
4636
  # makes nodes run on confidential VMs.
4022
4637
  # @!attribute [rw] enabled
4023
4638
  # @return [::Boolean]
4024
- # Whether Confidential Nodes feature is enabled for all nodes in this
4025
- # cluster.
4639
+ # Whether Confidential Nodes feature is enabled.
4026
4640
  class ConfidentialNodes
4027
4641
  include ::Google::Protobuf::MessageExts
4028
4642
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4078,6 +4692,51 @@ module Google
4078
4692
  extend ::Google::Protobuf::MessageExts::ClassMethods
4079
4693
  end
4080
4694
 
4695
+ # SecurityBulletinEvent is a notification sent to customers when a security
4696
+ # bulletin has been posted that they are vulnerable to.
4697
+ # @!attribute [rw] resource_type_affected
4698
+ # @return [::String]
4699
+ # The resource type (node/control plane) that has the vulnerability. Multiple
4700
+ # notifications (1 notification per resource type) will be sent for a
4701
+ # vulnerability that affects > 1 resource type.
4702
+ # @!attribute [rw] bulletin_id
4703
+ # @return [::String]
4704
+ # The ID of the bulletin corresponding to the vulnerability.
4705
+ # @!attribute [rw] cve_ids
4706
+ # @return [::Array<::String>]
4707
+ # The CVEs associated with this bulletin.
4708
+ # @!attribute [rw] severity
4709
+ # @return [::String]
4710
+ # The severity of this bulletin as it relates to GKE.
4711
+ # @!attribute [rw] bulletin_uri
4712
+ # @return [::String]
4713
+ # The URI link to the bulletin on the website for more information.
4714
+ # @!attribute [rw] brief_description
4715
+ # @return [::String]
4716
+ # A brief description of the bulletin. See the bulletin pointed to by the
4717
+ # bulletin_uri field for an expanded description.
4718
+ # @!attribute [rw] affected_supported_minors
4719
+ # @return [::Array<::String>]
4720
+ # The GKE minor versions affected by this vulnerability.
4721
+ # @!attribute [rw] patched_versions
4722
+ # @return [::Array<::String>]
4723
+ # The GKE versions where this vulnerability is patched.
4724
+ # @!attribute [rw] suggested_upgrade_target
4725
+ # @return [::String]
4726
+ # This represents a version selected from the patched_versions field that
4727
+ # the cluster receiving this notification should most likely want to upgrade
4728
+ # to based on its current version. Note that if this notification is being
4729
+ # received by a given cluster, it means that this version is currently
4730
+ # available as an upgrade target in that cluster's location.
4731
+ # @!attribute [rw] manual_steps_required
4732
+ # @return [::Boolean]
4733
+ # If this field is specified, it means there are manual steps that the user
4734
+ # must take to make their clusters safe.
4735
+ class SecurityBulletinEvent
4736
+ include ::Google::Protobuf::MessageExts
4737
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4738
+ end
4739
+
4081
4740
  # IdentityServiceConfig is configuration for Identity Service which allows
4082
4741
  # customers to use external identity providers with the K8S API
4083
4742
  # @!attribute [rw] enabled
@@ -4122,6 +4781,10 @@ module Google
4122
4781
  # @!attribute [rw] component_config
4123
4782
  # @return [::Google::Cloud::Container::V1beta1::MonitoringComponentConfig]
4124
4783
  # Monitoring components configuration
4784
+ # @!attribute [rw] managed_prometheus_config
4785
+ # @return [::Google::Cloud::Container::V1beta1::ManagedPrometheusConfig]
4786
+ # Enable Google Cloud Managed Service for Prometheus
4787
+ # in the cluster.
4125
4788
  class MonitoringConfig
4126
4789
  include ::Google::Protobuf::MessageExts
4127
4790
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4144,8 +4807,17 @@ module Google
4144
4807
  # system components
4145
4808
  SYSTEM_COMPONENTS = 1
4146
4809
 
4147
- # workloads
4810
+ # Deprecated: Use Google Cloud Managed Service for Prometheus.
4148
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
4149
4821
  end
4150
4822
  end
4151
4823
 
@@ -4165,8 +4837,34 @@ module Google
4165
4837
  PRIVATE_IPV6_GOOGLE_ACCESS_BIDIRECTIONAL = 3
4166
4838
  end
4167
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
+
4168
4866
  # The datapath provider selects the implementation of the Kubernetes networking
4169
- # // model for service resolution and network policy enforcement.
4867
+ # model for service resolution and network policy enforcement.
4170
4868
  module DatapathProvider
4171
4869
  # Default value.
4172
4870
  DATAPATH_PROVIDER_UNSPECIFIED = 0
@@ -4180,19 +4878,6 @@ module Google
4180
4878
  # for more.
4181
4879
  ADVANCED_DATAPATH = 2
4182
4880
  end
4183
-
4184
- # UpgradeResourceType is the resource type that is upgrading. It is used
4185
- # in upgrade notifications.
4186
- module UpgradeResourceType
4187
- # Default value. This shouldn't be used.
4188
- UPGRADE_RESOURCE_TYPE_UNSPECIFIED = 0
4189
-
4190
- # Master / control plane
4191
- MASTER = 1
4192
-
4193
- # Node pool
4194
- NODE_POOL = 2
4195
- end
4196
4881
  end
4197
4882
  end
4198
4883
  end