google-cloud-container-v1 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -33,6 +33,7 @@ module Google
33
33
  # net.core.busy_read
34
34
  # net.core.netdev_max_backlog
35
35
  # net.core.rmem_max
36
+ # net.core.rmem_default
36
37
  # net.core.wmem_default
37
38
  # net.core.wmem_max
38
39
  # net.core.optmem_max
@@ -40,9 +41,16 @@ module Google
40
41
  # net.ipv4.tcp_rmem
41
42
  # net.ipv4.tcp_wmem
42
43
  # net.ipv4.tcp_tw_reuse
44
+ # net.netfilter.nf_conntrack_max
45
+ # net.netfilter.nf_conntrack_buckets
46
+ # net.netfilter.nf_conntrack_tcp_timeout_close_wait
47
+ # net.netfilter.nf_conntrack_tcp_timeout_time_wait
48
+ # net.netfilter.nf_conntrack_tcp_timeout_established
49
+ # net.netfilter.nf_conntrack_acct
43
50
  # kernel.shmmni
44
51
  # kernel.shmmax
45
52
  # kernel.shmall
53
+ # vm.max_map_count
46
54
  # @!attribute [rw] cgroup_mode
47
55
  # @return [::Google::Cloud::Container::V1::LinuxNodeConfig::CgroupMode]
48
56
  # cgroup_mode specifies the cgroup mode to be used on the node.
@@ -92,23 +100,23 @@ module Google
92
100
 
93
101
  # Parameters that can be configured on Windows nodes.
94
102
  # Windows Node Config that define the parameters that will be used to
95
- # configure the Windows node pool settings
103
+ # configure the Windows node pool settings.
96
104
  # @!attribute [rw] os_version
97
105
  # @return [::Google::Cloud::Container::V1::WindowsNodeConfig::OSVersion]
98
- # OSVersion specifies the Windows node config to be used on the node
106
+ # OSVersion specifies the Windows node config to be used on the node.
99
107
  class WindowsNodeConfig
100
108
  include ::Google::Protobuf::MessageExts
101
109
  extend ::Google::Protobuf::MessageExts::ClassMethods
102
110
 
103
111
  # Possible OS version that can be used.
104
112
  module OSVersion
105
- # When OSVersion is not specified
113
+ # When OSVersion is not specified.
106
114
  OS_VERSION_UNSPECIFIED = 0
107
115
 
108
- # LTSC2019 specifies to use LTSC2019 as the Windows Servercore Base Image
116
+ # LTSC2019 specifies to use LTSC2019 as the Windows Servercore Base Image.
109
117
  OS_VERSION_LTSC2019 = 1
110
118
 
111
- # LTSC2022 specifies to use LTSC2022 as the Windows Servercore Base Image
119
+ # LTSC2022 specifies to use LTSC2022 as the Windows Servercore Base Image.
112
120
  OS_VERSION_LTSC2022 = 2
113
121
  end
114
122
  end
@@ -125,6 +133,16 @@ module Google
125
133
  # * "static": allows pods with certain resource characteristics to be granted
126
134
  # increased CPU affinity and exclusivity on the node.
127
135
  # The default value is 'none' if unspecified.
136
+ # @!attribute [rw] topology_manager
137
+ # @return [::Google::Cloud::Container::V1::TopologyManager]
138
+ # Optional. Controls Topology Manager configuration on the node.
139
+ # For more information, see:
140
+ # https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/
141
+ # @!attribute [rw] memory_manager
142
+ # @return [::Google::Cloud::Container::V1::MemoryManager]
143
+ # Optional. Controls NUMA-aware Memory Manager configuration on the
144
+ # node. For more information, see:
145
+ # https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/
128
146
  # @!attribute [rw] cpu_cfs_quota
129
147
  # @return [::Google::Protobuf::BoolValue]
130
148
  # Enable CPU CFS quota enforcement for containers that specify CPU limits.
@@ -156,11 +174,152 @@ module Google
156
174
  # @!attribute [rw] insecure_kubelet_readonly_port_enabled
157
175
  # @return [::Boolean]
158
176
  # Enable or disable Kubelet read only port.
177
+ # @!attribute [rw] image_gc_low_threshold_percent
178
+ # @return [::Integer]
179
+ # Optional. Defines the percent of disk usage before which image garbage
180
+ # collection is never run. Lowest disk usage to garbage collect to. The
181
+ # percent is calculated as this field value out of 100.
182
+ #
183
+ # The value must be between 10 and 85, inclusive and smaller than
184
+ # image_gc_high_threshold_percent.
185
+ #
186
+ # The default value is 80 if unspecified.
187
+ # @!attribute [rw] image_gc_high_threshold_percent
188
+ # @return [::Integer]
189
+ # Optional. Defines the percent of disk usage after which image garbage
190
+ # collection is always run. The percent is calculated as this field value out
191
+ # of 100.
192
+ #
193
+ # The value must be between 10 and 85, inclusive and greater than
194
+ # image_gc_low_threshold_percent.
195
+ #
196
+ # The default value is 85 if unspecified.
197
+ # @!attribute [rw] image_minimum_gc_age
198
+ # @return [::String]
199
+ # Optional. Defines the minimum age for an unused image before it is garbage
200
+ # collected.
201
+ #
202
+ # The string must be a sequence of decimal numbers, each with optional
203
+ # fraction and a unit suffix, such as "300s", "1.5h", and "2h45m". Valid time
204
+ # units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
205
+ #
206
+ # The value must be a positive duration less than or equal to 2 minutes.
207
+ #
208
+ # The default value is "2m0s" if unspecified.
209
+ # @!attribute [rw] image_maximum_gc_age
210
+ # @return [::String]
211
+ # Optional. Defines the maximum age an image can be unused before it is
212
+ # garbage collected. The string must be a sequence of decimal numbers, each
213
+ # with optional fraction and a unit suffix, such as "300s", "1.5h", and
214
+ # "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
215
+ #
216
+ # The value must be a positive duration greater than image_minimum_gc_age
217
+ # or "0s".
218
+ #
219
+ # The default value is "0s" if unspecified, which disables this field,
220
+ # meaning images won't be garbage collected based on being unused for too
221
+ # long.
222
+ # @!attribute [rw] container_log_max_size
223
+ # @return [::String]
224
+ # Optional. Defines the maximum size of the container log file before it is
225
+ # rotated. See
226
+ # https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation
227
+ #
228
+ # Valid format is positive number + unit, e.g. 100Ki, 10Mi. Valid units are
229
+ # Ki, Mi, Gi.
230
+ # The value must be between 10Mi and 500Mi, inclusive.
231
+ #
232
+ # Note that the total container log size (container_log_max_size *
233
+ # container_log_max_files) cannot exceed 1% of the total
234
+ # storage of the node, to avoid disk pressure caused by log files.
235
+ #
236
+ # The default value is 10Mi if unspecified.
237
+ # @!attribute [rw] container_log_max_files
238
+ # @return [::Integer]
239
+ # Optional. Defines the maximum number of container log files that can be
240
+ # present for a container. See
241
+ # https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation
242
+ #
243
+ # The value must be an integer between 2 and 10, inclusive.
244
+ # The default value is 5 if unspecified.
245
+ # @!attribute [rw] allowed_unsafe_sysctls
246
+ # @return [::Array<::String>]
247
+ # Optional. Defines a comma-separated allowlist of unsafe sysctls or sysctl
248
+ # patterns (ending in `*`).
249
+ #
250
+ # The unsafe namespaced sysctl groups are `kernel.shm*`, `kernel.msg*`,
251
+ # `kernel.sem`, `fs.mqueue.*`, and `net.*`. Leaving this allowlist empty
252
+ # means they cannot be set on Pods.
253
+ #
254
+ # To allow certain sysctls or sysctl patterns to be set on Pods, list them
255
+ # separated by commas.
256
+ # For example: `kernel.msg*,net.ipv4.route.min_pmtu`.
257
+ #
258
+ # See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/
259
+ # for more details.
159
260
  class NodeKubeletConfig
160
261
  include ::Google::Protobuf::MessageExts
161
262
  extend ::Google::Protobuf::MessageExts::ClassMethods
162
263
  end
163
264
 
265
+ # TopologyManager defines the configuration options for Topology Manager
266
+ # feature. See
267
+ # https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/
268
+ # @!attribute [rw] policy
269
+ # @return [::String]
270
+ # Configures the strategy for resource alignment.
271
+ # Allowed values are:
272
+ #
273
+ # * none: the default policy, and does not perform any topology alignment.
274
+ # * restricted: the topology manager stores the preferred NUMA node affinity
275
+ # for the container, and will reject the pod if the affinity if not
276
+ # preferred.
277
+ # * best-effort: the topology manager stores the preferred NUMA node affinity
278
+ # for the container. If the affinity is not preferred, the topology manager
279
+ # will admit the pod to the node anyway.
280
+ # * single-numa-node: the topology manager determines if the single NUMA node
281
+ # affinity is possible. If it is, Topology Manager will store this and the
282
+ # Hint Providers can then use this information when making the resource
283
+ # allocation decision. If, however, this is not possible then the
284
+ # Topology Manager will reject the pod from the node. This will result in a
285
+ # pod in a Terminated state with a pod admission failure.
286
+ #
287
+ # The default policy value is 'none' if unspecified.
288
+ # Details about each strategy can be found
289
+ # [here](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/#topology-manager-policies).
290
+ # @!attribute [rw] scope
291
+ # @return [::String]
292
+ # The Topology Manager aligns resources in following scopes:
293
+ #
294
+ # * container
295
+ # * pod
296
+ #
297
+ # The default scope is 'container' if unspecified.
298
+ # See
299
+ # https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/#topology-manager-scopes
300
+ class TopologyManager
301
+ include ::Google::Protobuf::MessageExts
302
+ extend ::Google::Protobuf::MessageExts::ClassMethods
303
+ end
304
+
305
+ # The option enables the Kubernetes NUMA-aware Memory Manager feature.
306
+ # Detailed description about the feature can be found
307
+ # [here](https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/).
308
+ # @!attribute [rw] policy
309
+ # @return [::String]
310
+ # Controls the memory management policy on the Node.
311
+ # See
312
+ # https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/#policies
313
+ #
314
+ # The following values are allowed.
315
+ # * "none"
316
+ # * "static"
317
+ # The default value is 'none' if unspecified.
318
+ class MemoryManager
319
+ include ::Google::Protobuf::MessageExts
320
+ extend ::Google::Protobuf::MessageExts::ClassMethods
321
+ end
322
+
164
323
  # Parameters that describe the nodes in a cluster.
165
324
  #
166
325
  # GKE Autopilot clusters do not
@@ -389,16 +548,23 @@ module Google
389
548
  # @!attribute [rw] secondary_boot_disk_update_strategy
390
549
  # @return [::Google::Cloud::Container::V1::SecondaryBootDiskUpdateStrategy]
391
550
  # Secondary boot disk update strategy.
551
+ # @!attribute [rw] max_run_duration
552
+ # @return [::Google::Protobuf::Duration]
553
+ # The maximum duration for the nodes to exist.
554
+ # If unspecified, the nodes can exist indefinitely.
392
555
  # @!attribute [rw] local_ssd_encryption_mode
393
556
  # @return [::Google::Cloud::Container::V1::NodeConfig::LocalSsdEncryptionMode]
394
557
  # Specifies which method should be used for encrypting the
395
- # Local SSDs attahced to the node.
558
+ # Local SSDs attached to the node.
396
559
  # @!attribute [r] effective_cgroup_mode
397
560
  # @return [::Google::Cloud::Container::V1::NodeConfig::EffectiveCgroupMode]
398
561
  # Output only. effective_cgroup_mode is the cgroup mode actually used by the
399
562
  # node pool. It is determined by the cgroup mode specified in the
400
563
  # LinuxNodeConfig or the default cgroup mode based on the cluster creation
401
564
  # version.
565
+ # @!attribute [rw] flex_start
566
+ # @return [::Boolean]
567
+ # Flex Start flag for enabling Flex Start VM.
402
568
  class NodeConfig
403
569
  include ::Google::Protobuf::MessageExts
404
570
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -475,9 +641,28 @@ module Google
475
641
  # @!attribute [rw] enable_nested_virtualization
476
642
  # @return [::Boolean]
477
643
  # Whether or not to enable nested virtualization (defaults to false).
644
+ # @!attribute [rw] performance_monitoring_unit
645
+ # @return [::Google::Cloud::Container::V1::AdvancedMachineFeatures::PerformanceMonitoringUnit]
646
+ # Type of Performance Monitoring Unit (PMU) requested on node pool instances.
647
+ # If unset, PMU will not be available to the node.
478
648
  class AdvancedMachineFeatures
479
649
  include ::Google::Protobuf::MessageExts
480
650
  extend ::Google::Protobuf::MessageExts::ClassMethods
651
+
652
+ # Level of PMU access
653
+ module PerformanceMonitoringUnit
654
+ # PMU not enabled.
655
+ PERFORMANCE_MONITORING_UNIT_UNSPECIFIED = 0
656
+
657
+ # Architecturally defined non-LLC events.
658
+ ARCHITECTURAL = 1
659
+
660
+ # Most documented core/L2 events.
661
+ STANDARD = 2
662
+
663
+ # Most documented core/L2 and LLC events.
664
+ ENHANCED = 3
665
+ end
481
666
  end
482
667
 
483
668
  # Parameters for node pool-level network config.
@@ -762,7 +947,7 @@ module Google
762
947
  # @return [::Array<::String>]
763
948
  # List of fully qualified domain names (FQDN).
764
949
  # Specifying port is supported.
765
- # Wilcards are NOT supported.
950
+ # Wildcards are NOT supported.
766
951
  # Examples:
767
952
  # - my.customdomain.com
768
953
  # - 10.0.1.2:5000
@@ -995,6 +1180,9 @@ module Google
995
1180
  # @!attribute [rw] ray_operator_config
996
1181
  # @return [::Google::Cloud::Container::V1::RayOperatorConfig]
997
1182
  # Optional. Configuration for Ray Operator addon.
1183
+ # @!attribute [rw] high_scale_checkpointing_config
1184
+ # @return [::Google::Cloud::Container::V1::HighScaleCheckpointingConfig]
1185
+ # Configuration for the High Scale Checkpointing add-on.
998
1186
  class AddonsConfig
999
1187
  include ::Google::Protobuf::MessageExts
1000
1188
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1214,6 +1402,16 @@ module Google
1214
1402
  extend ::Google::Protobuf::MessageExts::ClassMethods
1215
1403
  end
1216
1404
 
1405
+ # Configuration for the High Scale Checkpointing.
1406
+ # @!attribute [rw] enabled
1407
+ # @return [::Boolean]
1408
+ # Whether the High Scale Checkpointing is enabled for this
1409
+ # cluster.
1410
+ class HighScaleCheckpointingConfig
1411
+ include ::Google::Protobuf::MessageExts
1412
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1413
+ end
1414
+
1217
1415
  # Configuration options for the Ray Operator add-on.
1218
1416
  # @!attribute [rw] enabled
1219
1417
  # @return [::Boolean]
@@ -1260,7 +1458,7 @@ module Google
1260
1458
  # Kubernetes master through HTTPS.
1261
1459
  # @!attribute [rw] gcp_public_cidrs_access_enabled
1262
1460
  # @return [::Boolean]
1263
- # Whether master is accessbile via Google Compute Engine Public IP addresses.
1461
+ # Whether master is accessible via Google Compute Engine Public IP addresses.
1264
1462
  # @!attribute [rw] private_endpoint_enforcement_enabled
1265
1463
  # @return [::Boolean]
1266
1464
  # Whether master authorized networks is enforced on private endpoint or not.
@@ -1455,6 +1653,7 @@ module Google
1455
1653
  # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1456
1654
  # to use.
1457
1655
  # @!attribute [rw] tpu_ipv4_cidr_block
1656
+ # @deprecated This field is deprecated and may be removed in the next major version update.
1458
1657
  # @return [::String]
1459
1658
  # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
1460
1659
  # range will be automatically chosen with the default size.
@@ -1471,6 +1670,9 @@ module Google
1471
1670
  # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1472
1671
  # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1473
1672
  # to use.
1673
+ #
1674
+ # This field is deprecated due to the deprecation of 2VM TPU. The end of life
1675
+ # date for 2VM TPU is 2025-04-25.
1474
1676
  # @!attribute [rw] use_routes
1475
1677
  # @return [::Boolean]
1476
1678
  # Whether routes will be used for pod IPs in the cluster.
@@ -1584,7 +1786,7 @@ module Google
1584
1786
  # The monitoring service the cluster should use to write metrics.
1585
1787
  # Currently available options:
1586
1788
  #
1587
- # * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
1789
+ # * `monitoring.googleapis.com/kubernetes` - The Cloud Monitoring
1588
1790
  # service with a Kubernetes-native resource model
1589
1791
  # * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
1590
1792
  # longer available as of GKE 1.15).
@@ -1638,6 +1840,11 @@ module Google
1638
1840
  # The cluster has no SLA for uptime and master/node upgrades are disabled.
1639
1841
  # Alpha enabled clusters are automatically deleted thirty days after
1640
1842
  # creation.
1843
+ # @!attribute [rw] alpha_cluster_feature_gates
1844
+ # @return [::Array<::String>]
1845
+ # The list of user specified Kubernetes feature gates.
1846
+ # Each string represents the activation status of a feature gate (e.g.
1847
+ # "featureX=true" or "featureX=false")
1641
1848
  # @!attribute [rw] resource_labels
1642
1849
  # @return [::Google::Protobuf::Map{::String => ::String}]
1643
1850
  # The resource labels for the cluster to use to annotate any related
@@ -1817,13 +2024,19 @@ module Google
1817
2024
  # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
1818
2025
  # in which the cluster resides.
1819
2026
  # @!attribute [rw] enable_tpu
2027
+ # @deprecated This field is deprecated and may be removed in the next major version update.
1820
2028
  # @return [::Boolean]
1821
2029
  # Enable the ability to use Cloud TPUs in this cluster.
2030
+ # This field is deprecated due to the deprecation of 2VM TPU. The end of life
2031
+ # date for 2VM TPU is 2025-04-25.
1822
2032
  # @!attribute [r] tpu_ipv4_cidr_block
2033
+ # @deprecated This field is deprecated and may be removed in the next major version update.
1823
2034
  # @return [::String]
1824
2035
  # Output only. The IP address range of the Cloud TPUs in this cluster, in
1825
2036
  # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1826
2037
  # notation (e.g. `1.2.3.4/29`).
2038
+ # This field is deprecated due to the deprecation of 2VM TPU. The end of life
2039
+ # date for 2VM TPU is 2025-04-25.
1827
2040
  # @!attribute [rw] conditions
1828
2041
  # @return [::Array<::Google::Cloud::Container::V1::StatusCondition>]
1829
2042
  # Which conditions caused the current cluster state.
@@ -1847,6 +2060,9 @@ module Google
1847
2060
  # @return [::Google::Cloud::Container::V1::NodePoolAutoConfig]
1848
2061
  # Node pool configs that apply to all auto-provisioned node pools
1849
2062
  # in autopilot clusters and node auto-provisioning enabled clusters.
2063
+ # @!attribute [rw] pod_autoscaling
2064
+ # @return [::Google::Cloud::Container::V1::PodAutoscaling]
2065
+ # The config for pod autoscaling.
1850
2066
  # @!attribute [rw] etag
1851
2067
  # @return [::String]
1852
2068
  # This checksum is computed by the server based on the value of cluster
@@ -1886,6 +2102,10 @@ module Google
1886
2102
  # @return [::Google::Cloud::Container::V1::RBACBindingConfig]
1887
2103
  # RBACBindingConfig allows user to restrict ClusterRoleBindings an
1888
2104
  # RoleBindings that can be created.
2105
+ # @!attribute [rw] anonymous_authentication_config
2106
+ # @return [::Google::Cloud::Container::V1::AnonymousAuthenticationConfig]
2107
+ # Configuration for limiting anonymous access to all endpoints except the
2108
+ # health checks.
1889
2109
  class Cluster
1890
2110
  include ::Google::Protobuf::MessageExts
1891
2111
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1989,6 +2209,13 @@ module Google
1989
2209
  extend ::Google::Protobuf::MessageExts::ClassMethods
1990
2210
  end
1991
2211
 
2212
+ # AnonymousAuthenticationConfig defines the settings needed to limit endpoints
2213
+ # that allow anonymous authentication.
2214
+ class AnonymousAuthenticationConfig
2215
+ include ::Google::Protobuf::MessageExts
2216
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2217
+ end
2218
+
1992
2219
  # CompliancePostureConfig defines the settings needed to enable/disable
1993
2220
  # features for the Compliance Posture.
1994
2221
  # @!attribute [rw] mode
@@ -2151,7 +2378,7 @@ module Google
2151
2378
  # The monitoring service the cluster should use to write metrics.
2152
2379
  # Currently available options:
2153
2380
  #
2154
- # * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
2381
+ # * `monitoring.googleapis.com/kubernetes` - The Cloud Monitoring
2155
2382
  # service with a Kubernetes-native resource model
2156
2383
  # * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
2157
2384
  # longer available as of GKE 1.15).
@@ -2328,6 +2555,9 @@ module Google
2328
2555
  # @return [::Google::Cloud::Container::V1::NetworkTags]
2329
2556
  # The desired network tags that apply to all auto-provisioned node pools
2330
2557
  # in autopilot clusters and node auto-provisioning enabled clusters.
2558
+ # @!attribute [rw] desired_pod_autoscaling
2559
+ # @return [::Google::Cloud::Container::V1::PodAutoscaling]
2560
+ # The desired config for pod autoscaling.
2331
2561
  # @!attribute [rw] desired_gateway_api_config
2332
2562
  # @return [::Google::Cloud::Container::V1::GatewayAPIConfig]
2333
2563
  # The desired config of Gateway API on this cluster.
@@ -2370,7 +2600,7 @@ module Google
2370
2600
  # Enable/Disable FQDN Network Policy for the cluster.
2371
2601
  # @!attribute [rw] desired_autopilot_workload_policy_config
2372
2602
  # @return [::Google::Cloud::Container::V1::WorkloadPolicyConfig]
2373
- # The desired workload policy configuration for the autopilot cluster.
2603
+ # WorkloadPolicyConfig is the configuration related to GCW workload policy
2374
2604
  # @!attribute [rw] desired_k8s_beta_apis
2375
2605
  # @return [::Google::Cloud::Container::V1::K8sBetaAPIConfig]
2376
2606
  # Desired Beta APIs to be enabled for cluster.
@@ -2413,12 +2643,19 @@ module Google
2413
2643
  # @!attribute [rw] desired_enterprise_config
2414
2644
  # @return [::Google::Cloud::Container::V1::DesiredEnterpriseConfig]
2415
2645
  # The desired enterprise configuration for the cluster.
2646
+ # @!attribute [rw] desired_disable_l4_lb_firewall_reconciliation
2647
+ # @return [::Boolean]
2648
+ # Enable/Disable L4 LB VPC firewall reconciliation for the cluster.
2416
2649
  # @!attribute [rw] desired_node_pool_auto_config_linux_node_config
2417
2650
  # @return [::Google::Cloud::Container::V1::LinuxNodeConfig]
2418
2651
  # The desired Linux node config for all auto-provisioned node pools
2419
2652
  # in autopilot clusters and node auto-provisioning enabled clusters.
2420
2653
  #
2421
2654
  # Currently only `cgroup_mode` can be set here.
2655
+ # @!attribute [rw] desired_anonymous_authentication_config
2656
+ # @return [::Google::Cloud::Container::V1::AnonymousAuthenticationConfig]
2657
+ # Configuration for limiting anonymous access to all endpoints except the
2658
+ # health checks.
2422
2659
  class ClusterUpdate
2423
2660
  include ::Google::Protobuf::MessageExts
2424
2661
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2565,16 +2802,17 @@ module Google
2565
2802
  # The cluster is being created. The cluster should be assumed to be
2566
2803
  # unusable until the operation finishes.
2567
2804
  #
2568
- # In the event of the operation failing, the cluster will enter the [ERROR
2569
- # state][Cluster.Status.ERROR] and eventually be deleted.
2805
+ # In the event of the operation failing, the cluster will enter the
2806
+ # {::Google::Cloud::Container::V1::Cluster::Status::ERROR ERROR state} and eventually be
2807
+ # deleted.
2570
2808
  CREATE_CLUSTER = 1
2571
2809
 
2572
2810
  # The cluster is being deleted. The cluster should be assumed to be
2573
2811
  # unusable as soon as this operation starts.
2574
2812
  #
2575
- # In the event of the operation failing, the cluster will enter the [ERROR
2576
- # state][Cluster.Status.ERROR] and the deletion will be automatically
2577
- # retried until completed.
2813
+ # In the event of the operation failing, the cluster will enter the
2814
+ # {::Google::Cloud::Container::V1::Cluster::Status::ERROR ERROR state} and the deletion
2815
+ # will be automatically retried until completed.
2578
2816
  DELETE_CLUSTER = 2
2579
2817
 
2580
2818
  # The [cluster
@@ -2970,6 +3208,13 @@ module Google
2970
3208
  # @return [::Array<::String>]
2971
3209
  # List of Storage Pools where boot disks are provisioned.
2972
3210
  # Existing Storage Pools will be replaced with storage-pools.
3211
+ # @!attribute [rw] max_run_duration
3212
+ # @return [::Google::Protobuf::Duration]
3213
+ # The maximum duration for the nodes to exist.
3214
+ # If unspecified, the nodes can exist indefinitely.
3215
+ # @!attribute [rw] flex_start
3216
+ # @return [::Boolean]
3217
+ # Flex Start flag for enabling Flex Start VM.
2973
3218
  class UpdateNodePoolRequest
2974
3219
  include ::Google::Protobuf::MessageExts
2975
3220
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3077,7 +3322,7 @@ module Google
3077
3322
  # Required. The monitoring service the cluster should use to write metrics.
3078
3323
  # Currently available options:
3079
3324
  #
3080
- # * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
3325
+ # * `monitoring.googleapis.com/kubernetes` - The Cloud Monitoring
3081
3326
  # service with a Kubernetes-native resource model
3082
3327
  # * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
3083
3328
  # longer available as of GKE 1.15).
@@ -4233,8 +4478,8 @@ module Google
4233
4478
  end
4234
4479
 
4235
4480
  # RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
4236
- # NodePool upgrade. This will be an no-op if the last upgrade successfully
4237
- # completed.
4481
+ # NodePool upgrade. This will be an no-op if the last upgrade successfully
4482
+ # completed.
4238
4483
  # @!attribute [rw] project_id
4239
4484
  # @deprecated This field is deprecated and may be removed in the next major version update.
4240
4485
  # @return [::String]
@@ -4379,7 +4624,7 @@ module Google
4379
4624
  # available image types.
4380
4625
  # @!attribute [rw] insecure_kubelet_readonly_port_enabled
4381
4626
  # @return [::Boolean]
4382
- # Enable or disable Kubelet read only port.
4627
+ # DEPRECATED. Use NodePoolAutoConfig.NodeKubeletConfig instead.
4383
4628
  class AutoprovisioningNodePoolDefaults
4384
4629
  include ::Google::Protobuf::MessageExts
4385
4630
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4795,6 +5040,9 @@ module Google
4795
5040
 
4796
5041
  # Cluster CA is expiring soon.
4797
5042
  CA_EXPIRING = 9
5043
+
5044
+ # Node service account is missing permissions.
5045
+ NODE_SERVICE_ACCOUNT_MISSING_PERMISSIONS = 10
4798
5046
  end
4799
5047
  end
4800
5048
 
@@ -4867,6 +5115,9 @@ module Google
4867
5115
  # and this field at the same time.
4868
5116
  # To update the default setting, use
4869
5117
  # {::Google::Cloud::Container::V1::ClusterUpdate#desired_default_enable_private_nodes ClusterUpdate.desired_default_enable_private_nodes}
5118
+ # @!attribute [rw] disable_l4_lb_firewall_reconciliation
5119
+ # @return [::Boolean]
5120
+ # Disable L4 load balancer VPC firewalls to enable firewall policies.
4870
5121
  class NetworkConfig
4871
5122
  include ::Google::Protobuf::MessageExts
4872
5123
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -5010,7 +5261,7 @@ module Google
5010
5261
  extend ::Google::Protobuf::MessageExts::ClassMethods
5011
5262
  end
5012
5263
 
5013
- # GetJSONWebKeysResponse is a valid JSON Web Key Set as specififed in rfc 7517
5264
+ # GetJSONWebKeysResponse is a valid JSON Web Key Set as specified in rfc 7517
5014
5265
  # @!attribute [rw] keys
5015
5266
  # @return [::Array<::Google::Cloud::Container::V1::Jwk>]
5016
5267
  # The public component of the keys used by the cluster to sign token
@@ -5047,7 +5298,7 @@ module Google
5047
5298
  # The name of the resources which are subject to this issue.
5048
5299
  # @!attribute [rw] documentation_url
5049
5300
  # @return [::String]
5050
- # A URL to a public documnetation, which addresses resolving this issue.
5301
+ # A URL to a public documentation, which addresses resolving this issue.
5051
5302
  # @!attribute [rw] description
5052
5303
  # @return [::String]
5053
5304
  # The description of the issue.
@@ -5575,6 +5826,9 @@ module Google
5575
5826
 
5576
5827
  # Corresponds with SecurityBulletinEvent.
5577
5828
  SECURITY_BULLETIN_EVENT = 3
5829
+
5830
+ # Corresponds with UpgradeInfoEvent.
5831
+ UPGRADE_INFO_EVENT = 4
5578
5832
  end
5579
5833
  end
5580
5834
 
@@ -5583,9 +5837,27 @@ module Google
5583
5837
  # @!attribute [rw] enabled
5584
5838
  # @return [::Boolean]
5585
5839
  # Whether Confidential Nodes feature is enabled.
5840
+ # @!attribute [rw] confidential_instance_type
5841
+ # @return [::Google::Cloud::Container::V1::ConfidentialNodes::ConfidentialInstanceType]
5842
+ # Defines the type of technology used by the confidential node.
5586
5843
  class ConfidentialNodes
5587
5844
  include ::Google::Protobuf::MessageExts
5588
5845
  extend ::Google::Protobuf::MessageExts::ClassMethods
5846
+
5847
+ # The type of technology used by the confidential node.
5848
+ module ConfidentialInstanceType
5849
+ # No type specified. Do not use this value.
5850
+ CONFIDENTIAL_INSTANCE_TYPE_UNSPECIFIED = 0
5851
+
5852
+ # AMD Secure Encrypted Virtualization.
5853
+ SEV = 1
5854
+
5855
+ # AMD Secure Encrypted Virtualization - Secure Nested Paging.
5856
+ SEV_SNP = 2
5857
+
5858
+ # Intel Trust Domain eXtension.
5859
+ TDX = 3
5860
+ end
5589
5861
  end
5590
5862
 
5591
5863
  # UpgradeEvent is a notification sent to customers by the cluster server when
@@ -5641,9 +5913,18 @@ module Google
5641
5913
  # @!attribute [r] state
5642
5914
  # @return [::Google::Cloud::Container::V1::UpgradeInfoEvent::State]
5643
5915
  # Output only. The state of the upgrade.
5916
+ # @!attribute [rw] standard_support_end_time
5917
+ # @return [::Google::Protobuf::Timestamp]
5918
+ # The end of standard support timestamp.
5919
+ # @!attribute [rw] extended_support_end_time
5920
+ # @return [::Google::Protobuf::Timestamp]
5921
+ # The end of extended support timestamp.
5644
5922
  # @!attribute [rw] description
5645
5923
  # @return [::String]
5646
5924
  # A brief description of the event.
5925
+ # @!attribute [rw] event_type
5926
+ # @return [::Google::Cloud::Container::V1::UpgradeInfoEvent::EventType]
5927
+ # The type of the event.
5647
5928
  class UpgradeInfoEvent
5648
5929
  include ::Google::Protobuf::MessageExts
5649
5930
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -5665,6 +5946,24 @@ module Google
5665
5946
  # CANCELED indicates the upgrade has canceled.
5666
5947
  CANCELED = 6
5667
5948
  end
5949
+
5950
+ # The type of the event.
5951
+ module EventType
5952
+ # EVENT_TYPE_UNSPECIFIED indicates the event type is unspecified.
5953
+ EVENT_TYPE_UNSPECIFIED = 0
5954
+
5955
+ # END_OF_SUPPORT indicates GKE version reaches end of support, check
5956
+ # standard_support_end_time and extended_support_end_time for more details.
5957
+ END_OF_SUPPORT = 1
5958
+
5959
+ # COS_MILESTONE_VERSION_UPDATE indicates that the COS node image will
5960
+ # update COS milestone version for new patch versions starting with
5961
+ # the one in the description.
5962
+ COS_MILESTONE_VERSION_UPDATE = 2
5963
+
5964
+ # UPGRADE_LIFECYCLE indicates the event is about the upgrade lifecycle.
5965
+ UPGRADE_LIFECYCLE = 3
5966
+ end
5668
5967
  end
5669
5968
 
5670
5969
  # UpgradeAvailableEvent is a notification sent to customers when a new
@@ -5728,6 +6027,9 @@ module Google
5728
6027
  # @return [::Boolean]
5729
6028
  # If this field is specified, it means there are manual steps that the user
5730
6029
  # must take to make their clusters safe.
6030
+ # @!attribute [rw] mitigated_versions
6031
+ # @return [::Array<::String>]
6032
+ # The GKE versions where this vulnerability is mitigated.
5731
6033
  class SecurityBulletinEvent
5732
6034
  include ::Google::Protobuf::MessageExts
5733
6035
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -5739,17 +6041,20 @@ module Google
5739
6041
  # Enable Autopilot
5740
6042
  # @!attribute [rw] workload_policy_config
5741
6043
  # @return [::Google::Cloud::Container::V1::WorkloadPolicyConfig]
5742
- # Workload policy configuration for Autopilot.
6044
+ # WorkloadPolicyConfig is the configuration related to GCW workload policy
5743
6045
  class Autopilot
5744
6046
  include ::Google::Protobuf::MessageExts
5745
6047
  extend ::Google::Protobuf::MessageExts::ClassMethods
5746
6048
  end
5747
6049
 
5748
- # WorkloadPolicyConfig is the configuration of workload policy for autopilot
5749
- # clusters.
6050
+ # WorkloadPolicyConfig is the configuration related to GCW workload policy
5750
6051
  # @!attribute [rw] allow_net_admin
5751
6052
  # @return [::Boolean]
5752
6053
  # If true, workloads can use NET_ADMIN capability.
6054
+ # @!attribute [rw] autopilot_compatibility_auditing_enabled
6055
+ # @return [::Boolean]
6056
+ # If true, enables the GCW Auditor that audits workloads on
6057
+ # standard clusters.
5753
6058
  class WorkloadPolicyConfig
5754
6059
  include ::Google::Protobuf::MessageExts
5755
6060
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -5797,6 +6102,9 @@ module Google
5797
6102
 
5798
6103
  # kcp connection logs
5799
6104
  KCP_CONNECTION = 8
6105
+
6106
+ # horizontal pod autoscaler decision logs
6107
+ KCP_HPA = 9
5800
6108
  end
5801
6109
  end
5802
6110
 
@@ -5948,6 +6256,9 @@ module Google
5948
6256
 
5949
6257
  # NVIDIA Data Center GPU Manager (DCGM)
5950
6258
  DCGM = 15
6259
+
6260
+ # JobSet
6261
+ JOBSET = 16
5951
6262
  end
5952
6263
  end
5953
6264
 
@@ -5956,11 +6267,60 @@ module Google
5956
6267
  # @!attribute [rw] enabled
5957
6268
  # @return [::Boolean]
5958
6269
  # Enable Managed Collection.
6270
+ # @!attribute [rw] auto_monitoring_config
6271
+ # @return [::Google::Cloud::Container::V1::AutoMonitoringConfig]
6272
+ # GKE Workload Auto-Monitoring Configuration.
5959
6273
  class ManagedPrometheusConfig
5960
6274
  include ::Google::Protobuf::MessageExts
5961
6275
  extend ::Google::Protobuf::MessageExts::ClassMethods
5962
6276
  end
5963
6277
 
6278
+ # AutoMonitoringConfig defines the configuration for GKE Workload
6279
+ # Auto-Monitoring.
6280
+ # @!attribute [rw] scope
6281
+ # @return [::Google::Cloud::Container::V1::AutoMonitoringConfig::Scope]
6282
+ # Scope for GKE Workload Auto-Monitoring.
6283
+ class AutoMonitoringConfig
6284
+ include ::Google::Protobuf::MessageExts
6285
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6286
+
6287
+ # Scope for applications monitored by Auto-Monitoring
6288
+ module Scope
6289
+ # Not set.
6290
+ SCOPE_UNSPECIFIED = 0
6291
+
6292
+ # Auto-Monitoring is enabled for all supported applications.
6293
+ ALL = 1
6294
+
6295
+ # Disable Auto-Monitoring.
6296
+ NONE = 2
6297
+ end
6298
+ end
6299
+
6300
+ # PodAutoscaling is used for configuration of parameters
6301
+ # for workload autoscaling.
6302
+ # @!attribute [rw] hpa_profile
6303
+ # @return [::Google::Cloud::Container::V1::PodAutoscaling::HPAProfile]
6304
+ # Selected Horizontal Pod Autoscaling profile.
6305
+ class PodAutoscaling
6306
+ include ::Google::Protobuf::MessageExts
6307
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6308
+
6309
+ # Possible types of Horizontal Pod Autoscaling profile.
6310
+ module HPAProfile
6311
+ # HPA_PROFILE_UNSPECIFIED is used when no custom HPA profile is set.
6312
+ HPA_PROFILE_UNSPECIFIED = 0
6313
+
6314
+ # Customers explicitly opt-out of HPA profiles.
6315
+ NONE = 1
6316
+
6317
+ # PERFORMANCE is used when customers opt-in to the performance HPA profile.
6318
+ # In this profile we support a higher number of HPAs per cluster and faster
6319
+ # metrics collection for workload autoscaling.
6320
+ PERFORMANCE = 2
6321
+ end
6322
+ end
6323
+
5964
6324
  # Fleet is the fleet configuration for the cluster.
5965
6325
  # @!attribute [rw] project
5966
6326
  # @return [::String]
@@ -6101,6 +6461,9 @@ module Google
6101
6461
  # ssds), 0 will be provisioned. See
6102
6462
  # https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds
6103
6463
  # for more info.
6464
+ # @!attribute [rw] data_cache_count
6465
+ # @return [::Integer]
6466
+ # Number of local SSDs to use for GKE Data Cache.
6104
6467
  class EphemeralStorageLocalSsdConfig
6105
6468
  include ::Google::Protobuf::MessageExts
6106
6469
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -6196,6 +6559,229 @@ module Google
6196
6559
  extend ::Google::Protobuf::MessageExts::ClassMethods
6197
6560
  end
6198
6561
 
6562
+ # FetchClusterUpgradeInfoRequest fetches the upgrade information of a cluster.
6563
+ # @!attribute [rw] name
6564
+ # @return [::String]
6565
+ # Required. The name (project, location, cluster) of the cluster to get.
6566
+ # Specified in the format `projects/*/locations/*/clusters/*` or
6567
+ # `projects/*/zones/*/clusters/*`.
6568
+ # @!attribute [rw] version
6569
+ # @return [::String]
6570
+ # API request version that initiates this operation.
6571
+ class FetchClusterUpgradeInfoRequest
6572
+ include ::Google::Protobuf::MessageExts
6573
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6574
+ end
6575
+
6576
+ # ClusterUpgradeInfo contains the upgrade information of a cluster.
6577
+ # @!attribute [rw] minor_target_version
6578
+ # @return [::String]
6579
+ # minor_target_version indicates the target version for minor upgrade.
6580
+ # @!attribute [rw] patch_target_version
6581
+ # @return [::String]
6582
+ # patch_target_version indicates the target version for patch upgrade.
6583
+ # @!attribute [rw] auto_upgrade_status
6584
+ # @return [::Array<::Google::Cloud::Container::V1::ClusterUpgradeInfo::AutoUpgradeStatus>]
6585
+ # The auto upgrade status.
6586
+ # @!attribute [rw] paused_reason
6587
+ # @return [::Array<::Google::Cloud::Container::V1::ClusterUpgradeInfo::AutoUpgradePausedReason>]
6588
+ # The auto upgrade paused reason.
6589
+ # @!attribute [rw] upgrade_details
6590
+ # @return [::Array<::Google::Cloud::Container::V1::UpgradeDetails>]
6591
+ # The list of past auto upgrades.
6592
+ # @!attribute [rw] end_of_standard_support_timestamp
6593
+ # @return [::String]
6594
+ # The cluster's current minor version's end of standard support timestamp.
6595
+ # @!attribute [rw] end_of_extended_support_timestamp
6596
+ # @return [::String]
6597
+ # The cluster's current minor version's end of extended support timestamp.
6598
+ class ClusterUpgradeInfo
6599
+ include ::Google::Protobuf::MessageExts
6600
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6601
+
6602
+ # AutoUpgradeStatus indicates the status of auto upgrade.
6603
+ module AutoUpgradeStatus
6604
+ # UNKNOWN indicates an unknown status.
6605
+ UNKNOWN = 0
6606
+
6607
+ # ACTIVE indicates an active status.
6608
+ ACTIVE = 1
6609
+
6610
+ # MINOR_UPGRADE_PAUSED indicates the minor version upgrade is
6611
+ # paused.
6612
+ MINOR_UPGRADE_PAUSED = 4
6613
+
6614
+ # UPGRADE_PAUSED indicates the upgrade is paused.
6615
+ UPGRADE_PAUSED = 5
6616
+ end
6617
+
6618
+ # AutoUpgradePausedReason indicates the reason for auto upgrade paused
6619
+ # status.
6620
+ module AutoUpgradePausedReason
6621
+ # AUTO_UPGRADE_PAUSED_REASON_UNSPECIFIED indicates an unspecified reason.
6622
+ AUTO_UPGRADE_PAUSED_REASON_UNSPECIFIED = 0
6623
+
6624
+ # MAINTENANCE_WINDOW indicates the cluster is outside customer maintenance
6625
+ # window.
6626
+ MAINTENANCE_WINDOW = 1
6627
+
6628
+ # MAINTENANCE_EXCLUSION_NO_UPGRADES indicates the cluster is in a
6629
+ # maintenance exclusion with scope NO_UPGRADES.
6630
+ MAINTENANCE_EXCLUSION_NO_UPGRADES = 5
6631
+
6632
+ # MAINTENANCE_EXCLUSION_NO_MINOR_UPGRADES indicates the cluster is in a
6633
+ # maintenance exclusion with scope NO_MINOR_UPGRADES.
6634
+ MAINTENANCE_EXCLUSION_NO_MINOR_UPGRADES = 6
6635
+
6636
+ # CLUSTER_DISRUPTION_BUDGET indicates the cluster is outside the cluster
6637
+ # disruption budget.
6638
+ CLUSTER_DISRUPTION_BUDGET = 4
6639
+
6640
+ # CLUSTER_DISRUPTION_BUDGET_MINOR_UPGRADE indicates the cluster is outside
6641
+ # the cluster disruption budget for minor version upgrade.
6642
+ CLUSTER_DISRUPTION_BUDGET_MINOR_UPGRADE = 7
6643
+
6644
+ # SYSTEM_CONFIG indicates the cluster upgrade is paused by system config.
6645
+ SYSTEM_CONFIG = 8
6646
+ end
6647
+ end
6648
+
6649
+ # UpgradeDetails contains detailed information of each individual upgrade
6650
+ # operation.
6651
+ # @!attribute [r] state
6652
+ # @return [::Google::Cloud::Container::V1::UpgradeDetails::State]
6653
+ # Output only. The state of the upgrade.
6654
+ # @!attribute [rw] start_time
6655
+ # @return [::Google::Protobuf::Timestamp]
6656
+ # The start timestamp of the upgrade.
6657
+ # @!attribute [rw] end_time
6658
+ # @return [::Google::Protobuf::Timestamp]
6659
+ # The end timestamp of the upgrade.
6660
+ # @!attribute [rw] initial_version
6661
+ # @return [::String]
6662
+ # The version before the upgrade.
6663
+ # @!attribute [rw] target_version
6664
+ # @return [::String]
6665
+ # The version after the upgrade.
6666
+ # @!attribute [rw] start_type
6667
+ # @return [::Google::Cloud::Container::V1::UpgradeDetails::StartType]
6668
+ # The start type of the upgrade.
6669
+ class UpgradeDetails
6670
+ include ::Google::Protobuf::MessageExts
6671
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6672
+
6673
+ # State indicates the state of the upgrade.
6674
+ module State
6675
+ # Upgrade state is unknown.
6676
+ UNKNOWN = 0
6677
+
6678
+ # Upgrade has failed with an error.
6679
+ FAILED = 1
6680
+
6681
+ # Upgrade has succeeded.
6682
+ SUCCEEDED = 2
6683
+
6684
+ # Upgrade has been canceled.
6685
+ CANCELED = 3
6686
+
6687
+ # Upgrade is running.
6688
+ RUNNING = 4
6689
+ end
6690
+
6691
+ # StartType indicates the type of starting the upgrade.
6692
+ module StartType
6693
+ # Upgrade start type is unspecified.
6694
+ START_TYPE_UNSPECIFIED = 0
6695
+
6696
+ # Upgrade started automatically.
6697
+ AUTOMATIC = 1
6698
+
6699
+ # Upgrade started manually.
6700
+ MANUAL = 2
6701
+ end
6702
+ end
6703
+
6704
+ # FetchNodePoolUpgradeInfoRequest fetches the upgrade information of a
6705
+ # nodepool.
6706
+ # @!attribute [rw] name
6707
+ # @return [::String]
6708
+ # Required. The name (project, location, cluster, nodepool) of the nodepool
6709
+ # to get. Specified in the format
6710
+ # `projects/*/locations/*/clusters/*/nodePools/*` or
6711
+ # `projects/*/zones/*/clusters/*/nodePools/*`.
6712
+ # @!attribute [rw] version
6713
+ # @return [::String]
6714
+ # API request version that initiates this operation.
6715
+ class FetchNodePoolUpgradeInfoRequest
6716
+ include ::Google::Protobuf::MessageExts
6717
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6718
+ end
6719
+
6720
+ # NodePoolUpgradeInfo contains the upgrade information of a nodepool.
6721
+ # @!attribute [rw] minor_target_version
6722
+ # @return [::String]
6723
+ # minor_target_version indicates the target version for minor upgrade.
6724
+ # @!attribute [rw] patch_target_version
6725
+ # @return [::String]
6726
+ # patch_target_version indicates the target version for patch upgrade.
6727
+ # @!attribute [rw] auto_upgrade_status
6728
+ # @return [::Array<::Google::Cloud::Container::V1::NodePoolUpgradeInfo::AutoUpgradeStatus>]
6729
+ # The auto upgrade status.
6730
+ # @!attribute [rw] paused_reason
6731
+ # @return [::Array<::Google::Cloud::Container::V1::NodePoolUpgradeInfo::AutoUpgradePausedReason>]
6732
+ # The auto upgrade paused reason.
6733
+ # @!attribute [rw] upgrade_details
6734
+ # @return [::Array<::Google::Cloud::Container::V1::UpgradeDetails>]
6735
+ # The list of past auto upgrades.
6736
+ # @!attribute [rw] end_of_standard_support_timestamp
6737
+ # @return [::String]
6738
+ # The nodepool's current minor version's end of standard support timestamp.
6739
+ # @!attribute [rw] end_of_extended_support_timestamp
6740
+ # @return [::String]
6741
+ # The nodepool's current minor version's end of extended support timestamp.
6742
+ class NodePoolUpgradeInfo
6743
+ include ::Google::Protobuf::MessageExts
6744
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6745
+
6746
+ # AutoUpgradeStatus indicates the status of auto upgrade.
6747
+ module AutoUpgradeStatus
6748
+ # UNKNOWN indicates an unknown status.
6749
+ UNKNOWN = 0
6750
+
6751
+ # ACTIVE indicates an active status.
6752
+ ACTIVE = 1
6753
+
6754
+ # MINOR_UPGRADE_PAUSED indicates the minor version upgrade is
6755
+ # paused.
6756
+ MINOR_UPGRADE_PAUSED = 2
6757
+
6758
+ # UPGRADE_PAUSED indicates the upgrade is paused.
6759
+ UPGRADE_PAUSED = 3
6760
+ end
6761
+
6762
+ # AutoUpgradePausedReason indicates the reason for auto upgrade paused
6763
+ # status.
6764
+ module AutoUpgradePausedReason
6765
+ # AUTO_UPGRADE_PAUSED_REASON_UNSPECIFIED indicates an unspecified reason.
6766
+ AUTO_UPGRADE_PAUSED_REASON_UNSPECIFIED = 0
6767
+
6768
+ # MAINTENANCE_WINDOW indicates the cluster is outside customer maintenance
6769
+ # window.
6770
+ MAINTENANCE_WINDOW = 1
6771
+
6772
+ # MAINTENANCE_EXCLUSION_NO_UPGRADES indicates the cluster is in a
6773
+ # maintenance exclusion with scope NO_UPGRADES.
6774
+ MAINTENANCE_EXCLUSION_NO_UPGRADES = 2
6775
+
6776
+ # MAINTENANCE_EXCLUSION_NO_MINOR_UPGRADES indicates the cluster is in a
6777
+ # maintenance exclusion with scope NO_MINOR_UPGRADES.
6778
+ MAINTENANCE_EXCLUSION_NO_MINOR_UPGRADES = 3
6779
+
6780
+ # SYSTEM_CONFIG indicates the cluster upgrade is paused by system config.
6781
+ SYSTEM_CONFIG = 4
6782
+ end
6783
+ end
6784
+
6199
6785
  # PrivateIPv6GoogleAccess controls whether and how the pods can communicate
6200
6786
  # with Google Services through gRPC over IPv6.
6201
6787
  module PrivateIPv6GoogleAccess