google-cloud-container-v1beta1 0.8.3 → 0.10.1

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
@@ -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,75 @@ 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
+ # Possible values for 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
- # Enable Binary Authorization for this cluster. If enabled, all container
972
- # images will be validated by Google Binauthz.
1123
+ # This field is deprecated. Leave this unset and instead configure
1124
+ # BinaryAuthorization using evaluation_mode. If evaluation_mode is set to
1125
+ # anything other than EVALUATION_MODE_UNSPECIFIED, this field is ignored.
1126
+ # @!attribute [rw] evaluation_mode
1127
+ # @return [::Google::Cloud::Container::V1beta1::BinaryAuthorization::EvaluationMode]
1128
+ # Mode of operation for binauthz policy evaluation. Currently the only
1129
+ # options are equivalent to enable/disable. If unspecified, defaults to
1130
+ # DISABLED.
973
1131
  class BinaryAuthorization
974
1132
  include ::Google::Protobuf::MessageExts
975
1133
  extend ::Google::Protobuf::MessageExts::ClassMethods
1134
+
1135
+ # Binary Authorization mode of operation.
1136
+ module EvaluationMode
1137
+ # Default value
1138
+ EVALUATION_MODE_UNSPECIFIED = 0
1139
+
1140
+ # Disable BinaryAuthorization
1141
+ DISABLED = 1
1142
+
1143
+ # Enforce Kubernetes admission requests with BinaryAuthorization using the
1144
+ # project's singleton policy. This is equivalent to setting the
1145
+ # enabled boolean to true.
1146
+ PROJECT_SINGLETON_POLICY_ENFORCE = 2
1147
+ end
976
1148
  end
977
1149
 
978
1150
  # Configuration for the PodSecurityPolicy feature.
@@ -1222,6 +1394,16 @@ module Google
1222
1394
  # @return [::Google::Cloud::Container::V1beta1::WorkloadCertificates]
1223
1395
  # Configuration for issuance of mTLS keys and certificates to Kubernetes
1224
1396
  # pods.
1397
+ # @!attribute [rw] mesh_certificates
1398
+ # @return [::Google::Cloud::Container::V1beta1::MeshCertificates]
1399
+ # Configuration for issuance of mTLS keys and certificates to Kubernetes
1400
+ # pods.
1401
+ # @!attribute [rw] workload_alts_config
1402
+ # @return [::Google::Cloud::Container::V1beta1::WorkloadALTSConfig]
1403
+ # Configuration for direct-path (via ALTS) with workload identity.
1404
+ # @!attribute [rw] cost_management_config
1405
+ # @return [::Google::Cloud::Container::V1beta1::CostManagementConfig]
1406
+ # Configuration for the fine-grained cost management feature.
1225
1407
  # @!attribute [rw] cluster_telemetry
1226
1408
  # @return [::Google::Cloud::Container::V1beta1::ClusterTelemetry]
1227
1409
  # Telemetry integration for the cluster.
@@ -1233,7 +1415,8 @@ module Google
1233
1415
  # Notification configuration of the cluster.
1234
1416
  # @!attribute [rw] confidential_nodes
1235
1417
  # @return [::Google::Cloud::Container::V1beta1::ConfidentialNodes]
1236
- # Configuration of Confidential Nodes
1418
+ # Configuration of Confidential Nodes.
1419
+ # All the nodes in the cluster will be Confidential VM once enabled.
1237
1420
  # @!attribute [rw] identity_service_config
1238
1421
  # @return [::Google::Cloud::Container::V1beta1::IdentityServiceConfig]
1239
1422
  # Configuration for Identity Service component.
@@ -1355,6 +1538,13 @@ module Google
1355
1538
  # @!attribute [rw] monitoring_config
1356
1539
  # @return [::Google::Cloud::Container::V1beta1::MonitoringConfig]
1357
1540
  # Monitoring configuration for the cluster.
1541
+ # @!attribute [rw] node_pool_auto_config
1542
+ # @return [::Google::Cloud::Container::V1beta1::NodePoolAutoConfig]
1543
+ # Node pool configs that apply to all auto-provisioned node pools
1544
+ # in autopilot clusters and node auto-provisioning enabled clusters.
1545
+ # @!attribute [rw] protect_config
1546
+ # @return [::Google::Cloud::Container::V1beta1::ProtectConfig]
1547
+ # Enable/Disable Protect API features for the cluster.
1358
1548
  class Cluster
1359
1549
  include ::Google::Protobuf::MessageExts
1360
1550
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1398,6 +1588,48 @@ module Google
1398
1588
  end
1399
1589
  end
1400
1590
 
1591
+ # WorkloadConfig defines the flags to enable or disable the
1592
+ # workload configurations for the cluster.
1593
+ # @!attribute [rw] audit_mode
1594
+ # @return [::Google::Cloud::Container::V1beta1::WorkloadConfig::Mode]
1595
+ # Sets which mode of auditing should be used for the cluster's workloads.
1596
+ class WorkloadConfig
1597
+ include ::Google::Protobuf::MessageExts
1598
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1599
+
1600
+ # Mode defines how to audit the workload configs.
1601
+ module Mode
1602
+ # Default value meaning that no mode has been specified.
1603
+ MODE_UNSPECIFIED = 0
1604
+
1605
+ # This disables Workload Configuration auditing on the cluster,
1606
+ # meaning that nothing is surfaced.
1607
+ DISABLED = 1
1608
+
1609
+ # Applies the default set of policy auditing to a cluster's workloads.
1610
+ BASIC = 4
1611
+
1612
+ # Surfaces configurations that are not in line with the
1613
+ # Pod Security Standard Baseline policy.
1614
+ BASELINE = 2
1615
+
1616
+ # Surfaces configurations that are not in line with the
1617
+ # Pod Security Standard Restricted policy.
1618
+ RESTRICTED = 3
1619
+ end
1620
+ end
1621
+
1622
+ # ProtectConfig defines the flags needed to enable/disable features for the
1623
+ # Protect API.
1624
+ # @!attribute [rw] workload_config
1625
+ # @return [::Google::Cloud::Container::V1beta1::WorkloadConfig]
1626
+ # WorkloadConfig defines which actions are enabled for a cluster's workload
1627
+ # configurations.
1628
+ class ProtectConfig
1629
+ include ::Google::Protobuf::MessageExts
1630
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1631
+ end
1632
+
1401
1633
  # Subset of Nodepool message that has defaults.
1402
1634
  # @!attribute [rw] node_config_defaults
1403
1635
  # @return [::Google::Cloud::Container::V1beta1::NodeConfigDefaults]
@@ -1408,11 +1640,27 @@ module Google
1408
1640
  end
1409
1641
 
1410
1642
  # Subset of NodeConfig message that has defaults.
1643
+ # @!attribute [rw] gcfs_config
1644
+ # @return [::Google::Cloud::Container::V1beta1::GcfsConfig]
1645
+ # GCFS (Google Container File System, also known as Riptide) options.
1411
1646
  class NodeConfigDefaults
1412
1647
  include ::Google::Protobuf::MessageExts
1413
1648
  extend ::Google::Protobuf::MessageExts::ClassMethods
1414
1649
  end
1415
1650
 
1651
+ # node pool configs that apply to all auto-provisioned node pools
1652
+ # in autopilot clusters and node auto-provisioning enabled clusters
1653
+ # @!attribute [rw] network_tags
1654
+ # @return [::Google::Cloud::Container::V1beta1::NetworkTags]
1655
+ # The list of instance tags applied to all nodes. Tags are used to identify
1656
+ # valid sources or targets for network firewalls and are specified by
1657
+ # the client during cluster creation. Each tag within the list
1658
+ # must comply with RFC1035.
1659
+ class NodePoolAutoConfig
1660
+ include ::Google::Protobuf::MessageExts
1661
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1662
+ end
1663
+
1416
1664
  # ClusterUpdate describes an update to the cluster. Exactly one update can
1417
1665
  # be applied to a cluster with each request, so at most one field can be
1418
1666
  # provided.
@@ -1545,6 +1793,9 @@ module Google
1545
1793
  # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
1546
1794
  # - "1.X.Y-gke.N": picks an explicit Kubernetes version
1547
1795
  # - "-": picks the default Kubernetes version
1796
+ # @!attribute [rw] desired_gcfs_config
1797
+ # @return [::Google::Cloud::Container::V1beta1::GcfsConfig]
1798
+ # The desired GCFS config for the cluster.
1548
1799
  # @!attribute [rw] desired_database_encryption
1549
1800
  # @return [::Google::Cloud::Container::V1beta1::DatabaseEncryption]
1550
1801
  # Configuration of etcd encryption.
@@ -1555,9 +1806,19 @@ module Google
1555
1806
  # @return [::Google::Cloud::Container::V1beta1::WorkloadCertificates]
1556
1807
  # Configuration for issuance of mTLS keys and certificates to Kubernetes
1557
1808
  # pods.
1809
+ # @!attribute [rw] desired_mesh_certificates
1810
+ # @return [::Google::Cloud::Container::V1beta1::MeshCertificates]
1811
+ # Configuration for issuance of mTLS keys and certificates to Kubernetes
1812
+ # pods.
1813
+ # @!attribute [rw] desired_workload_alts_config
1814
+ # @return [::Google::Cloud::Container::V1beta1::WorkloadALTSConfig]
1815
+ # Configuration for direct-path (via ALTS) with workload identity.
1558
1816
  # @!attribute [rw] desired_shielded_nodes
1559
1817
  # @return [::Google::Cloud::Container::V1beta1::ShieldedNodes]
1560
1818
  # Configuration for Shielded Nodes.
1819
+ # @!attribute [rw] desired_cost_management_config
1820
+ # @return [::Google::Cloud::Container::V1beta1::CostManagementConfig]
1821
+ # The desired configuration for the fine-grained cost management feature.
1561
1822
  # @!attribute [rw] desired_master
1562
1823
  # @return [::Google::Cloud::Container::V1beta1::Master]
1563
1824
  # Configuration for master components.
@@ -1581,6 +1842,13 @@ module Google
1581
1842
  # @!attribute [rw] desired_identity_service_config
1582
1843
  # @return [::Google::Cloud::Container::V1beta1::IdentityServiceConfig]
1583
1844
  # The desired Identity Service component configuration.
1845
+ # @!attribute [rw] desired_node_pool_auto_config_network_tags
1846
+ # @return [::Google::Cloud::Container::V1beta1::NetworkTags]
1847
+ # The desired network tags that apply to all auto-provisioned node pools
1848
+ # in autopilot clusters and node auto-provisioning enabled clusters.
1849
+ # @!attribute [rw] desired_protect_config
1850
+ # @return [::Google::Cloud::Container::V1beta1::ProtectConfig]
1851
+ # Enable/Disable Protect API features for the cluster.
1584
1852
  class ClusterUpdate
1585
1853
  include ::Google::Protobuf::MessageExts
1586
1854
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1768,7 +2036,7 @@ module Google
1768
2036
  # @!attribute [rw] project_id
1769
2037
  # @return [::String]
1770
2038
  # Required. Deprecated. The Google Developers Console [project ID or project
1771
- # number](https://support.google.com/cloud/answer/6158840).
2039
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1772
2040
  # This field has been deprecated and replaced by the parent field.
1773
2041
  # @!attribute [rw] zone
1774
2042
  # @return [::String]
@@ -1793,7 +2061,7 @@ module Google
1793
2061
  # @!attribute [rw] project_id
1794
2062
  # @return [::String]
1795
2063
  # Required. Deprecated. The Google Developers Console [project ID or project
1796
- # number](https://support.google.com/cloud/answer/6158840).
2064
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1797
2065
  # This field has been deprecated and replaced by the name field.
1798
2066
  # @!attribute [rw] zone
1799
2067
  # @return [::String]
@@ -1818,7 +2086,7 @@ module Google
1818
2086
  # @!attribute [rw] project_id
1819
2087
  # @return [::String]
1820
2088
  # Required. Deprecated. The Google Developers Console [project ID or project
1821
- # number](https://support.google.com/cloud/answer/6158840).
2089
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1822
2090
  # This field has been deprecated and replaced by the name field.
1823
2091
  # @!attribute [rw] zone
1824
2092
  # @return [::String]
@@ -1846,7 +2114,7 @@ module Google
1846
2114
  # @!attribute [rw] project_id
1847
2115
  # @return [::String]
1848
2116
  # Required. Deprecated. The Google Developers Console [project ID or project
1849
- # number](https://support.google.com/cloud/answer/6158840).
2117
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1850
2118
  # This field has been deprecated and replaced by the name field.
1851
2119
  # @!attribute [rw] zone
1852
2120
  # @return [::String]
@@ -1917,6 +2185,16 @@ module Google
1917
2185
  # @!attribute [rw] kubelet_config
1918
2186
  # @return [::Google::Cloud::Container::V1beta1::NodeKubeletConfig]
1919
2187
  # Node kubelet configs.
2188
+ # @!attribute [rw] node_network_config
2189
+ # @return [::Google::Cloud::Container::V1beta1::NodeNetworkConfig]
2190
+ # Node network config.
2191
+ # @!attribute [rw] gcfs_config
2192
+ # @return [::Google::Cloud::Container::V1beta1::GcfsConfig]
2193
+ # GCFS config.
2194
+ # @!attribute [rw] confidential_nodes
2195
+ # @return [::Google::Cloud::Container::V1beta1::ConfidentialNodes]
2196
+ # Confidential nodes config.
2197
+ # All the nodes in the node pool will be Confidential VM once enabled.
1920
2198
  # @!attribute [rw] gvnic
1921
2199
  # @return [::Google::Cloud::Container::V1beta1::VirtualNIC]
1922
2200
  # Enable or disable gvnic on the node pool.
@@ -1929,7 +2207,7 @@ module Google
1929
2207
  # @!attribute [rw] project_id
1930
2208
  # @return [::String]
1931
2209
  # Required. Deprecated. The Google Developers Console [project ID or project
1932
- # number](https://support.google.com/cloud/answer/6158840).
2210
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1933
2211
  # This field has been deprecated and replaced by the name field.
1934
2212
  # @!attribute [rw] zone
1935
2213
  # @return [::String]
@@ -1962,7 +2240,7 @@ module Google
1962
2240
  # @!attribute [rw] project_id
1963
2241
  # @return [::String]
1964
2242
  # Required. Deprecated. The Google Developers Console [project ID or project
1965
- # number](https://support.google.com/cloud/answer/6158840).
2243
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
1966
2244
  # This field has been deprecated and replaced by the name field.
1967
2245
  # @!attribute [rw] zone
1968
2246
  # @return [::String]
@@ -2000,7 +2278,7 @@ module Google
2000
2278
  # @!attribute [rw] project_id
2001
2279
  # @return [::String]
2002
2280
  # Required. Deprecated. The Google Developers Console [project ID or project
2003
- # number](https://support.google.com/cloud/answer/6158840).
2281
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2004
2282
  # This field has been deprecated and replaced by the name field.
2005
2283
  # @!attribute [rw] zone
2006
2284
  # @return [::String]
@@ -2038,7 +2316,7 @@ module Google
2038
2316
  # @!attribute [rw] project_id
2039
2317
  # @return [::String]
2040
2318
  # Required. Deprecated. The Google Developers Console [project ID or project
2041
- # number](https://support.google.com/cloud/answer/6158840).
2319
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2042
2320
  # This field has been deprecated and replaced by the name field.
2043
2321
  # @!attribute [rw] zone
2044
2322
  # @return [::String]
@@ -2052,8 +2330,8 @@ module Google
2052
2330
  # This field has been deprecated and replaced by the name field.
2053
2331
  # @!attribute [rw] addons_config
2054
2332
  # @return [::Google::Cloud::Container::V1beta1::AddonsConfig]
2055
- # Required. The desired configurations for the various addons available to
2056
- # run in the cluster.
2333
+ # Required. The desired configurations for the various addons available to run in the
2334
+ # cluster.
2057
2335
  # @!attribute [rw] name
2058
2336
  # @return [::String]
2059
2337
  # The name (project, location, cluster) of the cluster to set addons.
@@ -2067,7 +2345,7 @@ module Google
2067
2345
  # @!attribute [rw] project_id
2068
2346
  # @return [::String]
2069
2347
  # Required. Deprecated. The Google Developers Console [project ID or project
2070
- # number](https://support.google.com/cloud/answer/6158840).
2348
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2071
2349
  # This field has been deprecated and replaced by the name field.
2072
2350
  # @!attribute [rw] zone
2073
2351
  # @return [::String]
@@ -2101,7 +2379,7 @@ module Google
2101
2379
  # @!attribute [rw] project_id
2102
2380
  # @return [::String]
2103
2381
  # Required. Deprecated. The Google Developers Console [project ID or project
2104
- # number](https://support.google.com/cloud/answer/6158840).
2382
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2105
2383
  # This field has been deprecated and replaced by the name field.
2106
2384
  # @!attribute [rw] zone
2107
2385
  # @return [::String]
@@ -2138,7 +2416,7 @@ module Google
2138
2416
  # @!attribute [rw] project_id
2139
2417
  # @return [::String]
2140
2418
  # Required. Deprecated. The Google Developers Console [project ID or project
2141
- # number](https://support.google.com/cloud/answer/6158840).
2419
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2142
2420
  # This field has been deprecated and replaced by the name field.
2143
2421
  # @!attribute [rw] zone
2144
2422
  # @return [::String]
@@ -2187,7 +2465,7 @@ module Google
2187
2465
  # @!attribute [rw] project_id
2188
2466
  # @return [::String]
2189
2467
  # Required. Deprecated. The Google Developers Console [project ID or project
2190
- # number](https://support.google.com/cloud/answer/6158840).
2468
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2191
2469
  # This field has been deprecated and replaced by the name field.
2192
2470
  # @!attribute [rw] zone
2193
2471
  # @return [::String]
@@ -2212,7 +2490,7 @@ module Google
2212
2490
  # @!attribute [rw] project_id
2213
2491
  # @return [::String]
2214
2492
  # Required. Deprecated. The Google Developers Console [project ID or project
2215
- # number](https://support.google.com/cloud/answer/6158840).
2493
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2216
2494
  # This field has been deprecated and replaced by the parent field.
2217
2495
  # @!attribute [rw] zone
2218
2496
  # @return [::String]
@@ -2248,7 +2526,7 @@ module Google
2248
2526
  # @!attribute [rw] project_id
2249
2527
  # @return [::String]
2250
2528
  # Required. Deprecated. The Google Developers Console [project ID or project
2251
- # number](https://support.google.com/cloud/answer/6158840).
2529
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2252
2530
  # This field has been deprecated and replaced by the name field.
2253
2531
  # @!attribute [rw] zone
2254
2532
  # @return [::String]
@@ -2273,7 +2551,7 @@ module Google
2273
2551
  # @!attribute [rw] project_id
2274
2552
  # @return [::String]
2275
2553
  # Required. Deprecated. The Google Developers Console [project ID or project
2276
- # number](https://support.google.com/cloud/answer/6158840).
2554
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2277
2555
  # This field has been deprecated and replaced by the parent field.
2278
2556
  # @!attribute [rw] zone
2279
2557
  # @return [::String]
@@ -2295,7 +2573,7 @@ module Google
2295
2573
  # @!attribute [rw] project_id
2296
2574
  # @return [::String]
2297
2575
  # Required. Deprecated. The Google Developers Console [project ID or project
2298
- # number](https://support.google.com/cloud/answer/6158840).
2576
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2299
2577
  # This field has been deprecated and replaced by the name field.
2300
2578
  # @!attribute [rw] zone
2301
2579
  # @return [::String]
@@ -2333,7 +2611,7 @@ module Google
2333
2611
  # @!attribute [rw] project_id
2334
2612
  # @return [::String]
2335
2613
  # Required. Deprecated. The Google Developers Console [project ID or project
2336
- # number](https://support.google.com/cloud/answer/6158840).
2614
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2337
2615
  # This field has been deprecated and replaced by the name field.
2338
2616
  # @!attribute [rw] zone
2339
2617
  # @return [::String]
@@ -2446,7 +2724,7 @@ module Google
2446
2724
  # @!attribute [rw] project_id
2447
2725
  # @return [::String]
2448
2726
  # Required. Deprecated. The Google Developers Console [project ID or project
2449
- # number](https://developers.google.com/console/help/new/#projectnumber).
2727
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2450
2728
  # This field has been deprecated and replaced by the parent field.
2451
2729
  # @!attribute [rw] zone
2452
2730
  # @return [::String]
@@ -2463,7 +2741,7 @@ module Google
2463
2741
  # Required. The node pool to create.
2464
2742
  # @!attribute [rw] parent
2465
2743
  # @return [::String]
2466
- # The parent (project, location, cluster id) where the node pool will be
2744
+ # The parent (project, location, cluster name) where the node pool will be
2467
2745
  # created. Specified in the format
2468
2746
  # `projects/*/locations/*/clusters/*`.
2469
2747
  class CreateNodePoolRequest
@@ -2475,7 +2753,7 @@ module Google
2475
2753
  # @!attribute [rw] project_id
2476
2754
  # @return [::String]
2477
2755
  # Required. Deprecated. The Google Developers Console [project ID or project
2478
- # number](https://developers.google.com/console/help/new/#projectnumber).
2756
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2479
2757
  # This field has been deprecated and replaced by the name field.
2480
2758
  # @!attribute [rw] zone
2481
2759
  # @return [::String]
@@ -2505,7 +2783,7 @@ module Google
2505
2783
  # @!attribute [rw] project_id
2506
2784
  # @return [::String]
2507
2785
  # Required. Deprecated. The Google Developers Console [project ID or project
2508
- # number](https://developers.google.com/console/help/new/#projectnumber).
2786
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2509
2787
  # This field has been deprecated and replaced by the parent field.
2510
2788
  # @!attribute [rw] zone
2511
2789
  # @return [::String]
@@ -2519,7 +2797,7 @@ module Google
2519
2797
  # This field has been deprecated and replaced by the parent field.
2520
2798
  # @!attribute [rw] parent
2521
2799
  # @return [::String]
2522
- # The parent (project, location, cluster id) where the node pools will be
2800
+ # The parent (project, location, cluster name) where the node pools will be
2523
2801
  # listed. Specified in the format `projects/*/locations/*/clusters/*`.
2524
2802
  class ListNodePoolsRequest
2525
2803
  include ::Google::Protobuf::MessageExts
@@ -2530,7 +2808,7 @@ module Google
2530
2808
  # @!attribute [rw] project_id
2531
2809
  # @return [::String]
2532
2810
  # Required. Deprecated. The Google Developers Console [project ID or project
2533
- # number](https://developers.google.com/console/help/new/#projectnumber).
2811
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2534
2812
  # This field has been deprecated and replaced by the name field.
2535
2813
  # @!attribute [rw] zone
2536
2814
  # @return [::String]
@@ -2556,6 +2834,35 @@ module Google
2556
2834
  extend ::Google::Protobuf::MessageExts::ClassMethods
2557
2835
  end
2558
2836
 
2837
+ # Settings for blue-green upgrade.
2838
+ # @!attribute [rw] standard_rollout_policy
2839
+ # @return [::Google::Cloud::Container::V1beta1::BlueGreenSettings::StandardRolloutPolicy]
2840
+ # Standard policy for the blue-green upgrade.
2841
+ # @!attribute [rw] node_pool_soak_duration
2842
+ # @return [::Google::Protobuf::Duration]
2843
+ # Time needed after draining entire blue pool. After this period, blue pool
2844
+ # will be cleaned up.
2845
+ class BlueGreenSettings
2846
+ include ::Google::Protobuf::MessageExts
2847
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2848
+
2849
+ # Standard rollout policy is the default policy for blue-green.
2850
+ # @!attribute [rw] batch_percentage
2851
+ # @return [::Float]
2852
+ # Percentage of the bool pool nodes to drain in a batch.
2853
+ # The range of this field should be (0.0, 1.0].
2854
+ # @!attribute [rw] batch_node_count
2855
+ # @return [::Integer]
2856
+ # Number of blue nodes to drain in a batch.
2857
+ # @!attribute [rw] batch_soak_duration
2858
+ # @return [::Google::Protobuf::Duration]
2859
+ # Soak time after each batch gets drained. Default to zero.
2860
+ class StandardRolloutPolicy
2861
+ include ::Google::Protobuf::MessageExts
2862
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2863
+ end
2864
+ end
2865
+
2559
2866
  # NodePool contains the name and configuration for a cluster's node pool.
2560
2867
  # Node pools are a set of nodes (i.e. VM's), with a common configuration and
2561
2868
  # specification, under the control of the cluster master. They may have a set
@@ -2624,6 +2931,8 @@ module Google
2624
2931
  # [Output only] The resource URLs of the [managed instance
2625
2932
  # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
2626
2933
  # associated with this node pool.
2934
+ # During the node pool blue-green upgrade operation, the URLs contain both
2935
+ # blue and green resources.
2627
2936
  # @!attribute [rw] status
2628
2937
  # @return [::Google::Cloud::Container::V1beta1::NodePool::Status]
2629
2938
  # [Output only] The status of the nodes in this pool instance.
@@ -2652,10 +2961,39 @@ module Google
2652
2961
  # @!attribute [rw] upgrade_settings
2653
2962
  # @return [::Google::Cloud::Container::V1beta1::NodePool::UpgradeSettings]
2654
2963
  # Upgrade settings control disruption and speed of the upgrade.
2964
+ # @!attribute [rw] placement_policy
2965
+ # @return [::Google::Cloud::Container::V1beta1::NodePool::PlacementPolicy]
2966
+ # Specifies the node placement policy.
2967
+ # @!attribute [r] update_info
2968
+ # @return [::Google::Cloud::Container::V1beta1::NodePool::UpdateInfo]
2969
+ # Output only. [Output only] Update info contains relevant information during a node
2970
+ # pool update.
2655
2971
  class NodePool
2656
2972
  include ::Google::Protobuf::MessageExts
2657
2973
  extend ::Google::Protobuf::MessageExts::ClassMethods
2658
2974
 
2975
+ # These upgrade settings configure the upgrade strategy for the node pool.
2976
+ # Use strategy to switch between the strategies applied to the node pool.
2977
+ #
2978
+ # If the strategy is SURGE, use max_surge and max_unavailable to control
2979
+ # the level of parallelism and the level of disruption caused by upgrade.
2980
+ # 1. maxSurge controls the number of additional nodes that can be added to
2981
+ # the node pool temporarily for the time of the upgrade to increase the
2982
+ # number of available nodes.
2983
+ # 2. maxUnavailable controls the number of nodes that can be simultaneously
2984
+ # unavailable.
2985
+ # 3. (maxUnavailable + maxSurge) determines the level of parallelism (how
2986
+ # many nodes are being upgraded at the same time).
2987
+ #
2988
+ # If the strategy is BLUE_GREEN, use blue_green_settings to configure the
2989
+ # blue-green upgrade related settings.
2990
+ # 1. standard_rollout_policy is the default policy. The policy is used to
2991
+ # control the way blue pool gets drained. The draining is executed in the
2992
+ # batch mode. The batch size could be specified as either percentage of the
2993
+ # node pool size or the number of nodes. batch_soak_duration is the soak
2994
+ # time after each batch gets drained.
2995
+ # 2. node_pool_soak_duration is the soak time after all blue nodes are
2996
+ # drained. After this period, the blue pool nodes will be deleted.
2659
2997
  # @!attribute [rw] max_surge
2660
2998
  # @return [::Integer]
2661
2999
  # The maximum number of nodes that can be created beyond the current size
@@ -2665,11 +3003,100 @@ module Google
2665
3003
  # The maximum number of nodes that can be simultaneously unavailable during
2666
3004
  # the upgrade process. A node is considered available if its status is
2667
3005
  # Ready.
3006
+ # @!attribute [rw] strategy
3007
+ # @return [::Google::Cloud::Container::V1beta1::NodePoolUpdateStrategy]
3008
+ # Update strategy of the node pool.
3009
+ # @!attribute [rw] blue_green_settings
3010
+ # @return [::Google::Cloud::Container::V1beta1::BlueGreenSettings]
3011
+ # Settings for blue-green upgrade strategy.
2668
3012
  class UpgradeSettings
2669
3013
  include ::Google::Protobuf::MessageExts
2670
3014
  extend ::Google::Protobuf::MessageExts::ClassMethods
2671
3015
  end
2672
3016
 
3017
+ # UpdateInfo contains resource (instance groups, etc), status and other
3018
+ # intermediate information relevant to a node pool upgrade.
3019
+ # @!attribute [rw] blue_green_info
3020
+ # @return [::Google::Cloud::Container::V1beta1::NodePool::UpdateInfo::BlueGreenInfo]
3021
+ # Information of a blue-green upgrade.
3022
+ class UpdateInfo
3023
+ include ::Google::Protobuf::MessageExts
3024
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3025
+
3026
+ # Information relevant to blue-green upgrade.
3027
+ # @!attribute [rw] phase
3028
+ # @return [::Google::Cloud::Container::V1beta1::NodePool::UpdateInfo::BlueGreenInfo::Phase]
3029
+ # Current blue-green upgrade phase.
3030
+ # @!attribute [rw] blue_instance_group_urls
3031
+ # @return [::Array<::String>]
3032
+ # The resource URLs of the [managed instance groups]
3033
+ # (/compute/docs/instance-groups/creating-groups-of-managed-instances)
3034
+ # associated with blue pool.
3035
+ # @!attribute [rw] green_instance_group_urls
3036
+ # @return [::Array<::String>]
3037
+ # The resource URLs of the [managed instance groups]
3038
+ # (/compute/docs/instance-groups/creating-groups-of-managed-instances)
3039
+ # associated with green pool.
3040
+ # @!attribute [rw] blue_pool_deletion_start_time
3041
+ # @return [::String]
3042
+ # Time to start deleting blue pool to complete blue-green upgrade,
3043
+ # in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3044
+ # @!attribute [rw] green_pool_version
3045
+ # @return [::String]
3046
+ # Version of green pool.
3047
+ class BlueGreenInfo
3048
+ include ::Google::Protobuf::MessageExts
3049
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3050
+
3051
+ # Phase represents the different stages blue-green upgrade is running in.
3052
+ module Phase
3053
+ # Unspecified phase.
3054
+ PHASE_UNSPECIFIED = 0
3055
+
3056
+ # blue-green upgrade has been initiated.
3057
+ UPDATE_STARTED = 1
3058
+
3059
+ # Start creating green pool nodes.
3060
+ CREATING_GREEN_POOL = 2
3061
+
3062
+ # Start cordoning blue pool nodes.
3063
+ CORDONING_BLUE_POOL = 3
3064
+
3065
+ # Start draining blue pool nodes.
3066
+ DRAINING_BLUE_POOL = 4
3067
+
3068
+ # Start soaking time after draining entire blue pool.
3069
+ NODE_POOL_SOAKING = 5
3070
+
3071
+ # Start deleting blue nodes.
3072
+ DELETING_BLUE_POOL = 6
3073
+
3074
+ # Rollback has been initiated.
3075
+ ROLLBACK_STARTED = 7
3076
+ end
3077
+ end
3078
+ end
3079
+
3080
+ # PlacementPolicy defines the placement policy used by the node pool.
3081
+ # @!attribute [rw] type
3082
+ # @return [::Google::Cloud::Container::V1beta1::NodePool::PlacementPolicy::Type]
3083
+ # The type of placement.
3084
+ class PlacementPolicy
3085
+ include ::Google::Protobuf::MessageExts
3086
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3087
+
3088
+ # Type defines the type of placement policy.
3089
+ module Type
3090
+ # TYPE_UNSPECIFIED specifies no requirements on nodes
3091
+ # placement.
3092
+ TYPE_UNSPECIFIED = 0
3093
+
3094
+ # COMPACT specifies node placement in the same availability domain to
3095
+ # ensure low communication latency.
3096
+ COMPACT = 1
3097
+ end
3098
+ end
3099
+
2673
3100
  # The current status of the node pool instance.
2674
3101
  module Status
2675
3102
  # Not set.
@@ -2778,6 +3205,10 @@ module Google
2778
3205
  end
2779
3206
 
2780
3207
  # Represents an arbitrary window of time.
3208
+ # @!attribute [rw] maintenance_exclusion_options
3209
+ # @return [::Google::Cloud::Container::V1beta1::MaintenanceExclusionOptions]
3210
+ # MaintenanceExclusionOptions provides maintenance exclusion related
3211
+ # options.
2781
3212
  # @!attribute [rw] start_time
2782
3213
  # @return [::Google::Protobuf::Timestamp]
2783
3214
  # The time that the window first starts.
@@ -2790,6 +3221,33 @@ module Google
2790
3221
  extend ::Google::Protobuf::MessageExts::ClassMethods
2791
3222
  end
2792
3223
 
3224
+ # Represents the Maintenance exclusion option.
3225
+ # @!attribute [rw] scope
3226
+ # @return [::Google::Cloud::Container::V1beta1::MaintenanceExclusionOptions::Scope]
3227
+ # Scope specifies the upgrade scope which upgrades are blocked by the
3228
+ # exclusion.
3229
+ class MaintenanceExclusionOptions
3230
+ include ::Google::Protobuf::MessageExts
3231
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3232
+
3233
+ # Scope of exclusion.
3234
+ module Scope
3235
+ # NO_UPGRADES excludes all upgrades, including patch upgrades and minor
3236
+ # upgrades across control planes and nodes. This is the default exclusion
3237
+ # behavior.
3238
+ NO_UPGRADES = 0
3239
+
3240
+ # NO_MINOR_UPGRADES excludes all minor upgrades for the cluster, only
3241
+ # patches are allowed.
3242
+ NO_MINOR_UPGRADES = 1
3243
+
3244
+ # NO_MINOR_OR_NODE_UPGRADES excludes all minor upgrades for the cluster,
3245
+ # and also exclude all node pool upgrades. Only control
3246
+ # plane patches are allowed.
3247
+ NO_MINOR_OR_NODE_UPGRADES = 2
3248
+ end
3249
+ end
3250
+
2793
3251
  # Represents an arbitrary window of time that recurs.
2794
3252
  # @!attribute [rw] window
2795
3253
  # @return [::Google::Cloud::Container::V1beta1::TimeWindow]
@@ -2852,7 +3310,7 @@ module Google
2852
3310
  # @!attribute [rw] project_id
2853
3311
  # @return [::String]
2854
3312
  # Required. Deprecated. The Google Developers Console [project ID or project
2855
- # number](https://support.google.com/cloud/answer/6158840).
3313
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2856
3314
  # This field has been deprecated and replaced by the name field.
2857
3315
  # @!attribute [rw] zone
2858
3316
  # @return [::String]
@@ -2885,7 +3343,7 @@ module Google
2885
3343
  # @!attribute [rw] project_id
2886
3344
  # @return [::String]
2887
3345
  # Required. Deprecated. The Google Developers Console [project ID or project
2888
- # number](https://support.google.com/cloud/answer/6158840).
3346
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2889
3347
  # This field has been deprecated and replaced by the name field.
2890
3348
  # @!attribute [rw] zone
2891
3349
  # @return [::String]
@@ -2914,13 +3372,25 @@ module Google
2914
3372
  extend ::Google::Protobuf::MessageExts::ClassMethods
2915
3373
  end
2916
3374
 
3375
+ # CompleteNodePoolUpgradeRequest sets the name of target node pool to complete
3376
+ # upgrade.
3377
+ # @!attribute [rw] name
3378
+ # @return [::String]
3379
+ # The name (project, location, cluster, node pool id) of the node pool to
3380
+ # complete upgrade.
3381
+ # Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.
3382
+ class CompleteNodePoolUpgradeRequest
3383
+ include ::Google::Protobuf::MessageExts
3384
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3385
+ end
3386
+
2917
3387
  # RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
2918
3388
  # NodePool upgrade. This will be an no-op if the last upgrade successfully
2919
3389
  # completed.
2920
3390
  # @!attribute [rw] project_id
2921
3391
  # @return [::String]
2922
3392
  # Required. Deprecated. The Google Developers Console [project ID or project
2923
- # number](https://support.google.com/cloud/answer/6158840).
3393
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
2924
3394
  # This field has been deprecated and replaced by the name field.
2925
3395
  # @!attribute [rw] zone
2926
3396
  # @return [::String]
@@ -2941,6 +3411,10 @@ module Google
2941
3411
  # The name (project, location, cluster, node pool id) of the node poll to
2942
3412
  # rollback upgrade.
2943
3413
  # Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.
3414
+ # @!attribute [rw] respect_pdb
3415
+ # @return [::Boolean]
3416
+ # Option for rollback to ignore the PodDisruptionBudget.
3417
+ # Default value is false.
2944
3418
  class RollbackNodePoolUpgradeRequest
2945
3419
  include ::Google::Protobuf::MessageExts
2946
3420
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3027,13 +3501,16 @@ module Google
3027
3501
  # NodeManagement configuration for this NodePool.
3028
3502
  # @!attribute [rw] min_cpu_platform
3029
3503
  # @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
3504
+ # Deprecated. Minimum CPU platform to be used for NAP created node pools.
3505
+ # The instance may be scheduled on the specified or newer CPU platform.
3506
+ # Applicable values are the friendly names of CPU platforms, such as
3507
+ # minCpuPlatform: Intel Haswell or
3508
+ # minCpuPlatform: Intel Sandy Bridge. For more
3035
3509
  # information, read [how to specify min CPU
3036
3510
  # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
3511
+ # This field is deprecated, min_cpu_platform should be specified using
3512
+ # https://cloud.google.com/requested-min-cpu-platform label selector on the
3513
+ # pod.
3037
3514
  # To unset the min cpu platform field pass "automatic"
3038
3515
  # as field value.
3039
3516
  # @!attribute [rw] disk_size_gb
@@ -3090,18 +3567,47 @@ module Google
3090
3567
  # Is autoscaling enabled for this node pool.
3091
3568
  # @!attribute [rw] min_node_count
3092
3569
  # @return [::Integer]
3093
- # Minimum number of nodes in the NodePool. Must be >= 1 and <=
3094
- # max_node_count.
3570
+ # Minimum number of nodes for one location in the NodePool. Must be >= 1 and
3571
+ # <= max_node_count.
3095
3572
  # @!attribute [rw] max_node_count
3096
3573
  # @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.
3574
+ # Maximum number of nodes for one location in the NodePool. Must be >=
3575
+ # min_node_count. There has to be enough quota to scale up the cluster.
3099
3576
  # @!attribute [rw] autoprovisioned
3100
3577
  # @return [::Boolean]
3101
3578
  # Can this node pool be deleted automatically.
3579
+ # @!attribute [rw] location_policy
3580
+ # @return [::Google::Cloud::Container::V1beta1::NodePoolAutoscaling::LocationPolicy]
3581
+ # Location policy used when scaling up a nodepool.
3582
+ # @!attribute [rw] total_min_node_count
3583
+ # @return [::Integer]
3584
+ # Minimum number of nodes in the node pool. Must be greater than 1 less than
3585
+ # total_max_node_count.
3586
+ # The total_*_node_count fields are mutually exclusive with the *_node_count
3587
+ # fields.
3588
+ # @!attribute [rw] total_max_node_count
3589
+ # @return [::Integer]
3590
+ # Maximum number of nodes in the node pool. Must be greater than
3591
+ # total_min_node_count. There has to be enough quota to scale up the cluster.
3592
+ # The total_*_node_count fields are mutually exclusive with the *_node_count
3593
+ # fields.
3102
3594
  class NodePoolAutoscaling
3103
3595
  include ::Google::Protobuf::MessageExts
3104
3596
  extend ::Google::Protobuf::MessageExts::ClassMethods
3597
+
3598
+ # Location policy specifies how zones are picked when scaling up the
3599
+ # nodepool.
3600
+ module LocationPolicy
3601
+ # Not set.
3602
+ LOCATION_POLICY_UNSPECIFIED = 0
3603
+
3604
+ # BALANCED is a best effort policy that aims to balance the sizes of
3605
+ # different zones.
3606
+ BALANCED = 1
3607
+
3608
+ # ANY policy picks zones that have the highest capacity available.
3609
+ ANY = 2
3610
+ end
3105
3611
  end
3106
3612
 
3107
3613
  # SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
@@ -3110,7 +3616,7 @@ module Google
3110
3616
  # @!attribute [rw] project_id
3111
3617
  # @return [::String]
3112
3618
  # Required. Deprecated. The Google Developers Console [project ID or project
3113
- # number](https://developers.google.com/console/help/new/#projectnumber).
3619
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3114
3620
  # This field has been deprecated and replaced by the name field.
3115
3621
  # @!attribute [rw] zone
3116
3622
  # @return [::String]
@@ -3135,7 +3641,7 @@ module Google
3135
3641
  # resource to get the latest fingerprint.
3136
3642
  # @!attribute [rw] name
3137
3643
  # @return [::String]
3138
- # The name (project, location, cluster id) of the cluster to set labels.
3644
+ # The name (project, location, cluster name) of the cluster to set labels.
3139
3645
  # Specified in the format `projects/*/locations/*/clusters/*`.
3140
3646
  class SetLabelsRequest
3141
3647
  include ::Google::Protobuf::MessageExts
@@ -3156,7 +3662,7 @@ module Google
3156
3662
  # @!attribute [rw] project_id
3157
3663
  # @return [::String]
3158
3664
  # Required. Deprecated. The Google Developers Console [project ID or project
3159
- # number](https://support.google.com/cloud/answer/6158840).
3665
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3160
3666
  # This field has been deprecated and replaced by the name field.
3161
3667
  # @!attribute [rw] zone
3162
3668
  # @return [::String]
@@ -3173,8 +3679,8 @@ module Google
3173
3679
  # Required. Whether ABAC authorization will be enabled in the cluster.
3174
3680
  # @!attribute [rw] name
3175
3681
  # @return [::String]
3176
- # The name (project, location, cluster id) of the cluster to set legacy abac.
3177
- # Specified in the format `projects/*/locations/*/clusters/*`.
3682
+ # The name (project, location, cluster name) of the cluster to set legacy
3683
+ # abac. Specified in the format `projects/*/locations/*/clusters/*`.
3178
3684
  class SetLegacyAbacRequest
3179
3685
  include ::Google::Protobuf::MessageExts
3180
3686
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3185,7 +3691,7 @@ module Google
3185
3691
  # @!attribute [rw] project_id
3186
3692
  # @return [::String]
3187
3693
  # Required. Deprecated. The Google Developers Console [project ID or project
3188
- # number](https://developers.google.com/console/help/new/#projectnumber).
3694
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3189
3695
  # This field has been deprecated and replaced by the name field.
3190
3696
  # @!attribute [rw] zone
3191
3697
  # @return [::String]
@@ -3199,7 +3705,7 @@ module Google
3199
3705
  # This field has been deprecated and replaced by the name field.
3200
3706
  # @!attribute [rw] name
3201
3707
  # @return [::String]
3202
- # The name (project, location, cluster id) of the cluster to start IP
3708
+ # The name (project, location, cluster name) of the cluster to start IP
3203
3709
  # rotation. Specified in the format `projects/*/locations/*/clusters/*`.
3204
3710
  # @!attribute [rw] rotate_credentials
3205
3711
  # @return [::Boolean]
@@ -3213,7 +3719,7 @@ module Google
3213
3719
  # @!attribute [rw] project_id
3214
3720
  # @return [::String]
3215
3721
  # Required. Deprecated. The Google Developers Console [project ID or project
3216
- # number](https://developers.google.com/console/help/new/#projectnumber).
3722
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3217
3723
  # This field has been deprecated and replaced by the name field.
3218
3724
  # @!attribute [rw] zone
3219
3725
  # @return [::String]
@@ -3227,7 +3733,7 @@ module Google
3227
3733
  # This field has been deprecated and replaced by the name field.
3228
3734
  # @!attribute [rw] name
3229
3735
  # @return [::String]
3230
- # The name (project, location, cluster id) of the cluster to complete IP
3736
+ # The name (project, location, cluster name) of the cluster to complete IP
3231
3737
  # rotation. Specified in the format `projects/*/locations/*/clusters/*`.
3232
3738
  class CompleteIPRotationRequest
3233
3739
  include ::Google::Protobuf::MessageExts
@@ -3247,11 +3753,49 @@ module Google
3247
3753
  # Size of partitions to create on the GPU. Valid values are described in the
3248
3754
  # NVIDIA [mig user
3249
3755
  # guide](https://docs.nvidia.com/datacenter/tesla/mig-user-guide/#partitioning).
3756
+ # @!attribute [rw] max_time_shared_clients_per_gpu
3757
+ # @return [::Integer]
3758
+ # The number of time-shared GPU resources to expose for each physical GPU.
3759
+ # @!attribute [rw] gpu_sharing_config
3760
+ # @return [::Google::Cloud::Container::V1beta1::GPUSharingConfig]
3761
+ # The configuration for GPU sharing options.
3250
3762
  class AcceleratorConfig
3251
3763
  include ::Google::Protobuf::MessageExts
3252
3764
  extend ::Google::Protobuf::MessageExts::ClassMethods
3253
3765
  end
3254
3766
 
3767
+ # GPUSharingConfig represents the GPU sharing configuration for Hardware
3768
+ # Accelerators.
3769
+ # @!attribute [rw] max_shared_clients_per_gpu
3770
+ # @return [::Integer]
3771
+ # The max number of containers that can share a physical GPU.
3772
+ # @!attribute [rw] gpu_sharing_strategy
3773
+ # @return [::Google::Cloud::Container::V1beta1::GPUSharingConfig::GPUSharingStrategy]
3774
+ # The type of GPU sharing strategy to enable on the GPU node.
3775
+ class GPUSharingConfig
3776
+ include ::Google::Protobuf::MessageExts
3777
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3778
+
3779
+ # The type of GPU sharing strategy currently provided.
3780
+ module GPUSharingStrategy
3781
+ # Default value.
3782
+ GPU_SHARING_STRATEGY_UNSPECIFIED = 0
3783
+
3784
+ # GPUs are time-shared between containers.
3785
+ TIME_SHARING = 1
3786
+ end
3787
+ end
3788
+
3789
+ # ManagedPrometheusConfig defines the configuration for
3790
+ # Google Cloud Managed Service for Prometheus.
3791
+ # @!attribute [rw] enabled
3792
+ # @return [::Boolean]
3793
+ # Enable Managed Collection.
3794
+ class ManagedPrometheusConfig
3795
+ include ::Google::Protobuf::MessageExts
3796
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3797
+ end
3798
+
3255
3799
  # WorkloadMetadataConfig defines the metadata configuration to expose to
3256
3800
  # workloads on the node pool.
3257
3801
  # @!attribute [rw] node_metadata
@@ -3315,7 +3859,7 @@ module Google
3315
3859
  # @!attribute [rw] project_id
3316
3860
  # @return [::String]
3317
3861
  # Required. Deprecated. The Google Developers Console [project ID or project
3318
- # number](https://developers.google.com/console/help/new/#projectnumber).
3862
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3319
3863
  # This field has been deprecated and replaced by the name field.
3320
3864
  # @!attribute [rw] zone
3321
3865
  # @return [::String]
@@ -3332,7 +3876,7 @@ module Google
3332
3876
  # Required. Configuration options for the NetworkPolicy feature.
3333
3877
  # @!attribute [rw] name
3334
3878
  # @return [::String]
3335
- # The name (project, location, cluster id) of the cluster to set networking
3879
+ # The name (project, location, cluster name) of the cluster to set networking
3336
3880
  # policy. Specified in the format `projects/*/locations/*/clusters/*`.
3337
3881
  class SetNetworkPolicyRequest
3338
3882
  include ::Google::Protobuf::MessageExts
@@ -3343,7 +3887,7 @@ module Google
3343
3887
  # @!attribute [rw] project_id
3344
3888
  # @return [::String]
3345
3889
  # Required. The Google Developers Console [project ID or project
3346
- # number](https://support.google.com/cloud/answer/6158840).
3890
+ # number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
3347
3891
  # @!attribute [rw] zone
3348
3892
  # @return [::String]
3349
3893
  # Required. The name of the Google Compute Engine
@@ -3358,8 +3902,8 @@ module Google
3358
3902
  # clears the existing maintenance policy.
3359
3903
  # @!attribute [rw] name
3360
3904
  # @return [::String]
3361
- # The name (project, location, cluster id) of the cluster to set maintenance
3362
- # policy.
3905
+ # The name (project, location, cluster name) of the cluster to set
3906
+ # maintenance policy.
3363
3907
  # Specified in the format `projects/*/locations/*/clusters/*`.
3364
3908
  class SetMaintenancePolicyRequest
3365
3909
  include ::Google::Protobuf::MessageExts
@@ -3404,7 +3948,7 @@ module Google
3404
3948
  # Specified in the format `projects/*/locations/*`.
3405
3949
  # @!attribute [rw] recommended
3406
3950
  # @return [::Boolean]
3407
- # Whether the location is recomended for GKE cluster scheduling.
3951
+ # Whether the location is recommended for GKE cluster scheduling.
3408
3952
  class Location
3409
3953
  include ::Google::Protobuf::MessageExts
3410
3954
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3736,6 +4280,20 @@ module Google
3736
4280
  extend ::Google::Protobuf::MessageExts::ClassMethods
3737
4281
  end
3738
4282
 
4283
+ # Configuration for direct-path (via ALTS) with workload identity.
4284
+ # @!attribute [rw] enable_alts
4285
+ # @return [::Google::Protobuf::BoolValue]
4286
+ # enable_alts controls whether the alts handshaker should be enabled or not
4287
+ # for direct-path.
4288
+ #
4289
+ # Requires Workload Identity
4290
+ # ({::Google::Cloud::Container::V1beta1::WorkloadIdentityConfig#workload_pool workload_pool}
4291
+ # must be non-empty).
4292
+ class WorkloadALTSConfig
4293
+ include ::Google::Protobuf::MessageExts
4294
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4295
+ end
4296
+
3739
4297
  # Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
3740
4298
  # @!attribute [rw] enable_certificates
3741
4299
  # @return [::Google::Protobuf::BoolValue]
@@ -3753,6 +4311,23 @@ module Google
3753
4311
  extend ::Google::Protobuf::MessageExts::ClassMethods
3754
4312
  end
3755
4313
 
4314
+ # Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
4315
+ # @!attribute [rw] enable_certificates
4316
+ # @return [::Google::Protobuf::BoolValue]
4317
+ # enable_certificates controls issuance of workload mTLS certificates.
4318
+ #
4319
+ # If set, the GKE Workload Identity Certificates controller and node agent
4320
+ # will be deployed in the cluster, which can then be configured by creating a
4321
+ # WorkloadCertificateConfig Custom Resource.
4322
+ #
4323
+ # Requires Workload Identity
4324
+ # ([workload_pool][google.container.v1alpha1.WorkloadIdentityConfig.workload_pool]
4325
+ # must be non-empty).
4326
+ class MeshCertificates
4327
+ include ::Google::Protobuf::MessageExts
4328
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4329
+ end
4330
+
3756
4331
  # Configuration of etcd encryption.
3757
4332
  # @!attribute [rw] state
3758
4333
  # @return [::Google::Cloud::Container::V1beta1::DatabaseEncryption::State]
@@ -3837,7 +4412,7 @@ module Google
3837
4412
  # cluster. See the OpenID Connect Discovery 1.0 specification for details.
3838
4413
  # @!attribute [rw] parent
3839
4414
  # @return [::String]
3840
- # The cluster (project, location, cluster id) to get the discovery document
4415
+ # The cluster (project, location, cluster name) to get the discovery document
3841
4416
  # for. Specified in the format `projects/*/locations/*/clusters/*`.
3842
4417
  class GetOpenIDConfigRequest
3843
4418
  include ::Google::Protobuf::MessageExts
@@ -3878,7 +4453,7 @@ module Google
3878
4453
  # Discovery 1.0 specification for details.
3879
4454
  # @!attribute [rw] parent
3880
4455
  # @return [::String]
3881
- # The cluster (project, location, cluster id) to get keys for. Specified in
4456
+ # The cluster (project, location, cluster name) to get keys for. Specified in
3882
4457
  # the format `projects/*/locations/*/clusters/*`.
3883
4458
  class GetJSONWebKeysRequest
3884
4459
  include ::Google::Protobuf::MessageExts
@@ -3965,6 +4540,15 @@ module Google
3965
4540
  end
3966
4541
  end
3967
4542
 
4543
+ # Configuration for fine-grained cost management feature.
4544
+ # @!attribute [rw] enabled
4545
+ # @return [::Boolean]
4546
+ # Whether the feature is enabled or not.
4547
+ class CostManagementConfig
4548
+ include ::Google::Protobuf::MessageExts
4549
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4550
+ end
4551
+
3968
4552
  # Configuration for Cloud TPU.
3969
4553
  # @!attribute [rw] enabled
3970
4554
  # @return [::Boolean]
@@ -4011,18 +4595,50 @@ module Google
4011
4595
  # @return [::String]
4012
4596
  # The desired Pub/Sub topic to which notifications will be
4013
4597
  # sent by GKE. Format is `projects/{project}/topics/{topic}`.
4598
+ # @!attribute [rw] filter
4599
+ # @return [::Google::Cloud::Container::V1beta1::NotificationConfig::Filter]
4600
+ # Allows filtering to one or more specific event types. If no filter is
4601
+ # specified, or if a filter is specified with no event types, all event
4602
+ # types will be sent
4014
4603
  class PubSub
4015
4604
  include ::Google::Protobuf::MessageExts
4016
4605
  extend ::Google::Protobuf::MessageExts::ClassMethods
4017
4606
  end
4607
+
4608
+ # Allows filtering to one or more specific event types. If event types are
4609
+ # present, those and only those event types will be transmitted to the
4610
+ # cluster. Other types will be skipped. If no filter is specified, or no
4611
+ # event types are present, all event types will be sent
4612
+ # @!attribute [rw] event_type
4613
+ # @return [::Array<::Google::Cloud::Container::V1beta1::NotificationConfig::EventType>]
4614
+ # Event types to allowlist.
4615
+ class Filter
4616
+ include ::Google::Protobuf::MessageExts
4617
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4618
+ end
4619
+
4620
+ # Types of notifications currently supported. Can be used to filter what
4621
+ # notifications are sent.
4622
+ module EventType
4623
+ # Not set, will be ignored.
4624
+ EVENT_TYPE_UNSPECIFIED = 0
4625
+
4626
+ # Corresponds with UpgradeAvailableEvent.
4627
+ UPGRADE_AVAILABLE_EVENT = 1
4628
+
4629
+ # Corresponds with UpgradeEvent.
4630
+ UPGRADE_EVENT = 2
4631
+
4632
+ # Corresponds with SecurityBulletinEvent.
4633
+ SECURITY_BULLETIN_EVENT = 3
4634
+ end
4018
4635
  end
4019
4636
 
4020
4637
  # ConfidentialNodes is configuration for the confidential nodes feature, which
4021
4638
  # makes nodes run on confidential VMs.
4022
4639
  # @!attribute [rw] enabled
4023
4640
  # @return [::Boolean]
4024
- # Whether Confidential Nodes feature is enabled for all nodes in this
4025
- # cluster.
4641
+ # Whether Confidential Nodes feature is enabled.
4026
4642
  class ConfidentialNodes
4027
4643
  include ::Google::Protobuf::MessageExts
4028
4644
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4078,6 +4694,51 @@ module Google
4078
4694
  extend ::Google::Protobuf::MessageExts::ClassMethods
4079
4695
  end
4080
4696
 
4697
+ # SecurityBulletinEvent is a notification sent to customers when a security
4698
+ # bulletin has been posted that they are vulnerable to.
4699
+ # @!attribute [rw] resource_type_affected
4700
+ # @return [::String]
4701
+ # The resource type (node/control plane) that has the vulnerability. Multiple
4702
+ # notifications (1 notification per resource type) will be sent for a
4703
+ # vulnerability that affects > 1 resource type.
4704
+ # @!attribute [rw] bulletin_id
4705
+ # @return [::String]
4706
+ # The ID of the bulletin corresponding to the vulnerability.
4707
+ # @!attribute [rw] cve_ids
4708
+ # @return [::Array<::String>]
4709
+ # The CVEs associated with this bulletin.
4710
+ # @!attribute [rw] severity
4711
+ # @return [::String]
4712
+ # The severity of this bulletin as it relates to GKE.
4713
+ # @!attribute [rw] bulletin_uri
4714
+ # @return [::String]
4715
+ # The URI link to the bulletin on the website for more information.
4716
+ # @!attribute [rw] brief_description
4717
+ # @return [::String]
4718
+ # A brief description of the bulletin. See the bulletin pointed to by the
4719
+ # bulletin_uri field for an expanded description.
4720
+ # @!attribute [rw] affected_supported_minors
4721
+ # @return [::Array<::String>]
4722
+ # The GKE minor versions affected by this vulnerability.
4723
+ # @!attribute [rw] patched_versions
4724
+ # @return [::Array<::String>]
4725
+ # The GKE versions where this vulnerability is patched.
4726
+ # @!attribute [rw] suggested_upgrade_target
4727
+ # @return [::String]
4728
+ # This represents a version selected from the patched_versions field that
4729
+ # the cluster receiving this notification should most likely want to upgrade
4730
+ # to based on its current version. Note that if this notification is being
4731
+ # received by a given cluster, it means that this version is currently
4732
+ # available as an upgrade target in that cluster's location.
4733
+ # @!attribute [rw] manual_steps_required
4734
+ # @return [::Boolean]
4735
+ # If this field is specified, it means there are manual steps that the user
4736
+ # must take to make their clusters safe.
4737
+ class SecurityBulletinEvent
4738
+ include ::Google::Protobuf::MessageExts
4739
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4740
+ end
4741
+
4081
4742
  # IdentityServiceConfig is configuration for Identity Service which allows
4082
4743
  # customers to use external identity providers with the K8S API
4083
4744
  # @!attribute [rw] enabled
@@ -4122,6 +4783,10 @@ module Google
4122
4783
  # @!attribute [rw] component_config
4123
4784
  # @return [::Google::Cloud::Container::V1beta1::MonitoringComponentConfig]
4124
4785
  # Monitoring components configuration
4786
+ # @!attribute [rw] managed_prometheus_config
4787
+ # @return [::Google::Cloud::Container::V1beta1::ManagedPrometheusConfig]
4788
+ # Enable Google Cloud Managed Service for Prometheus
4789
+ # in the cluster.
4125
4790
  class MonitoringConfig
4126
4791
  include ::Google::Protobuf::MessageExts
4127
4792
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4144,8 +4809,17 @@ module Google
4144
4809
  # system components
4145
4810
  SYSTEM_COMPONENTS = 1
4146
4811
 
4147
- # workloads
4812
+ # Deprecated: Use Google Cloud Managed Service for Prometheus.
4148
4813
  WORKLOADS = 2
4814
+
4815
+ # kube-apiserver
4816
+ APISERVER = 3
4817
+
4818
+ # kube-scheduler
4819
+ SCHEDULER = 4
4820
+
4821
+ # kube-controller-manager
4822
+ CONTROLLER_MANAGER = 5
4149
4823
  end
4150
4824
  end
4151
4825
 
@@ -4165,8 +4839,34 @@ module Google
4165
4839
  PRIVATE_IPV6_GOOGLE_ACCESS_BIDIRECTIONAL = 3
4166
4840
  end
4167
4841
 
4842
+ # UpgradeResourceType is the resource type that is upgrading. It is used
4843
+ # in upgrade notifications.
4844
+ module UpgradeResourceType
4845
+ # Default value. This shouldn't be used.
4846
+ UPGRADE_RESOURCE_TYPE_UNSPECIFIED = 0
4847
+
4848
+ # Master / control plane
4849
+ MASTER = 1
4850
+
4851
+ # Node pool
4852
+ NODE_POOL = 2
4853
+ end
4854
+
4855
+ # Strategy used for node pool update.
4856
+ module NodePoolUpdateStrategy
4857
+ # Default value.
4858
+ NODE_POOL_UPDATE_STRATEGY_UNSPECIFIED = 0
4859
+
4860
+ # blue-green upgrade.
4861
+ BLUE_GREEN = 2
4862
+
4863
+ # SURGE is the traditional way of upgrading a node pool.
4864
+ # max_surge and max_unavailable determines the level of upgrade parallelism.
4865
+ SURGE = 3
4866
+ end
4867
+
4168
4868
  # The datapath provider selects the implementation of the Kubernetes networking
4169
- # // model for service resolution and network policy enforcement.
4869
+ # model for service resolution and network policy enforcement.
4170
4870
  module DatapathProvider
4171
4871
  # Default value.
4172
4872
  DATAPATH_PROVIDER_UNSPECIFIED = 0
@@ -4180,19 +4880,6 @@ module Google
4180
4880
  # for more.
4181
4881
  ADVANCED_DATAPATH = 2
4182
4882
  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
4883
  end
4197
4884
  end
4198
4885
  end