google-apis-container_v1 0.43.0 → 0.89.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +188 -0
- data/OVERVIEW.md +3 -3
- data/lib/google/apis/container_v1/classes.rb +2234 -109
- data/lib/google/apis/container_v1/gem_version.rb +3 -3
- data/lib/google/apis/container_v1/representations.rb +838 -0
- data/lib/google/apis/container_v1/service.rb +37 -6
- data/lib/google/apis/container_v1.rb +1 -1
- metadata +7 -10
@@ -37,6 +37,12 @@ module Google
|
|
37
37
|
# @return [String]
|
38
38
|
attr_accessor :accelerator_type
|
39
39
|
|
40
|
+
# GPUDriverInstallationConfig specifies the version of GPU driver to be auto
|
41
|
+
# installed.
|
42
|
+
# Corresponds to the JSON property `gpuDriverInstallationConfig`
|
43
|
+
# @return [Google::Apis::ContainerV1::GpuDriverInstallationConfig]
|
44
|
+
attr_accessor :gpu_driver_installation_config
|
45
|
+
|
40
46
|
# Size of partitions to create on the GPU. Valid values are described in the
|
41
47
|
# NVIDIA [mig user guide](https://docs.nvidia.com/datacenter/tesla/mig-user-
|
42
48
|
# guide/#partitioning).
|
@@ -58,11 +64,104 @@ module Google
|
|
58
64
|
def update!(**args)
|
59
65
|
@accelerator_count = args[:accelerator_count] if args.key?(:accelerator_count)
|
60
66
|
@accelerator_type = args[:accelerator_type] if args.key?(:accelerator_type)
|
67
|
+
@gpu_driver_installation_config = args[:gpu_driver_installation_config] if args.key?(:gpu_driver_installation_config)
|
61
68
|
@gpu_partition_size = args[:gpu_partition_size] if args.key?(:gpu_partition_size)
|
62
69
|
@gpu_sharing_config = args[:gpu_sharing_config] if args.key?(:gpu_sharing_config)
|
63
70
|
end
|
64
71
|
end
|
65
72
|
|
73
|
+
# AdditionalNodeNetworkConfig is the configuration for additional node networks
|
74
|
+
# within the NodeNetworkConfig message
|
75
|
+
class AdditionalNodeNetworkConfig
|
76
|
+
include Google::Apis::Core::Hashable
|
77
|
+
|
78
|
+
# Name of the VPC where the additional interface belongs
|
79
|
+
# Corresponds to the JSON property `network`
|
80
|
+
# @return [String]
|
81
|
+
attr_accessor :network
|
82
|
+
|
83
|
+
# Name of the subnetwork where the additional interface belongs
|
84
|
+
# Corresponds to the JSON property `subnetwork`
|
85
|
+
# @return [String]
|
86
|
+
attr_accessor :subnetwork
|
87
|
+
|
88
|
+
def initialize(**args)
|
89
|
+
update!(**args)
|
90
|
+
end
|
91
|
+
|
92
|
+
# Update properties of this object
|
93
|
+
def update!(**args)
|
94
|
+
@network = args[:network] if args.key?(:network)
|
95
|
+
@subnetwork = args[:subnetwork] if args.key?(:subnetwork)
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
# AdditionalPodNetworkConfig is the configuration for additional pod networks
|
100
|
+
# within the NodeNetworkConfig message
|
101
|
+
class AdditionalPodNetworkConfig
|
102
|
+
include Google::Apis::Core::Hashable
|
103
|
+
|
104
|
+
# Constraints applied to pods.
|
105
|
+
# Corresponds to the JSON property `maxPodsPerNode`
|
106
|
+
# @return [Google::Apis::ContainerV1::MaxPodsConstraint]
|
107
|
+
attr_accessor :max_pods_per_node
|
108
|
+
|
109
|
+
# The name of the network attachment for pods to communicate to; cannot be
|
110
|
+
# specified along with subnetwork or secondary_pod_range.
|
111
|
+
# Corresponds to the JSON property `networkAttachment`
|
112
|
+
# @return [String]
|
113
|
+
attr_accessor :network_attachment
|
114
|
+
|
115
|
+
# The name of the secondary range on the subnet which provides IP address for
|
116
|
+
# this pod range.
|
117
|
+
# Corresponds to the JSON property `secondaryPodRange`
|
118
|
+
# @return [String]
|
119
|
+
attr_accessor :secondary_pod_range
|
120
|
+
|
121
|
+
# Name of the subnetwork where the additional pod network belongs.
|
122
|
+
# Corresponds to the JSON property `subnetwork`
|
123
|
+
# @return [String]
|
124
|
+
attr_accessor :subnetwork
|
125
|
+
|
126
|
+
def initialize(**args)
|
127
|
+
update!(**args)
|
128
|
+
end
|
129
|
+
|
130
|
+
# Update properties of this object
|
131
|
+
def update!(**args)
|
132
|
+
@max_pods_per_node = args[:max_pods_per_node] if args.key?(:max_pods_per_node)
|
133
|
+
@network_attachment = args[:network_attachment] if args.key?(:network_attachment)
|
134
|
+
@secondary_pod_range = args[:secondary_pod_range] if args.key?(:secondary_pod_range)
|
135
|
+
@subnetwork = args[:subnetwork] if args.key?(:subnetwork)
|
136
|
+
end
|
137
|
+
end
|
138
|
+
|
139
|
+
# AdditionalPodRangesConfig is the configuration for additional pod secondary
|
140
|
+
# ranges supporting the ClusterUpdate message.
|
141
|
+
class AdditionalPodRangesConfig
|
142
|
+
include Google::Apis::Core::Hashable
|
143
|
+
|
144
|
+
# Output only. Information for additional pod range.
|
145
|
+
# Corresponds to the JSON property `podRangeInfo`
|
146
|
+
# @return [Array<Google::Apis::ContainerV1::RangeInfo>]
|
147
|
+
attr_accessor :pod_range_info
|
148
|
+
|
149
|
+
# Name for pod secondary ipv4 range which has the actual range defined ahead.
|
150
|
+
# Corresponds to the JSON property `podRangeNames`
|
151
|
+
# @return [Array<String>]
|
152
|
+
attr_accessor :pod_range_names
|
153
|
+
|
154
|
+
def initialize(**args)
|
155
|
+
update!(**args)
|
156
|
+
end
|
157
|
+
|
158
|
+
# Update properties of this object
|
159
|
+
def update!(**args)
|
160
|
+
@pod_range_info = args[:pod_range_info] if args.key?(:pod_range_info)
|
161
|
+
@pod_range_names = args[:pod_range_names] if args.key?(:pod_range_names)
|
162
|
+
end
|
163
|
+
end
|
164
|
+
|
66
165
|
# Configuration for the addons that can be automatically spun up in the cluster,
|
67
166
|
# enabling additional functionality.
|
68
167
|
class AddonsConfig
|
@@ -93,6 +192,11 @@ module Google
|
|
93
192
|
# @return [Google::Apis::ContainerV1::GcpFilestoreCsiDriverConfig]
|
94
193
|
attr_accessor :gcp_filestore_csi_driver_config
|
95
194
|
|
195
|
+
# Configuration for the Cloud Storage Fuse CSI driver.
|
196
|
+
# Corresponds to the JSON property `gcsFuseCsiDriverConfig`
|
197
|
+
# @return [Google::Apis::ContainerV1::GcsFuseCsiDriverConfig]
|
198
|
+
attr_accessor :gcs_fuse_csi_driver_config
|
199
|
+
|
96
200
|
# Configuration for the Backup for GKE Agent.
|
97
201
|
# Corresponds to the JSON property `gkeBackupAgentConfig`
|
98
202
|
# @return [Google::Apis::ContainerV1::GkeBackupAgentConfig]
|
@@ -123,6 +227,21 @@ module Google
|
|
123
227
|
# @return [Google::Apis::ContainerV1::NetworkPolicyConfig]
|
124
228
|
attr_accessor :network_policy_config
|
125
229
|
|
230
|
+
# Configuration for the Cloud Storage Parallelstore CSI driver.
|
231
|
+
# Corresponds to the JSON property `parallelstoreCsiDriverConfig`
|
232
|
+
# @return [Google::Apis::ContainerV1::ParallelstoreCsiDriverConfig]
|
233
|
+
attr_accessor :parallelstore_csi_driver_config
|
234
|
+
|
235
|
+
# Configuration options for the Ray Operator add-on.
|
236
|
+
# Corresponds to the JSON property `rayOperatorConfig`
|
237
|
+
# @return [Google::Apis::ContainerV1::RayOperatorConfig]
|
238
|
+
attr_accessor :ray_operator_config
|
239
|
+
|
240
|
+
# Configuration for the Stateful HA add-on.
|
241
|
+
# Corresponds to the JSON property `statefulHaConfig`
|
242
|
+
# @return [Google::Apis::ContainerV1::StatefulHaConfig]
|
243
|
+
attr_accessor :stateful_ha_config
|
244
|
+
|
126
245
|
def initialize(**args)
|
127
246
|
update!(**args)
|
128
247
|
end
|
@@ -134,11 +253,49 @@ module Google
|
|
134
253
|
@dns_cache_config = args[:dns_cache_config] if args.key?(:dns_cache_config)
|
135
254
|
@gce_persistent_disk_csi_driver_config = args[:gce_persistent_disk_csi_driver_config] if args.key?(:gce_persistent_disk_csi_driver_config)
|
136
255
|
@gcp_filestore_csi_driver_config = args[:gcp_filestore_csi_driver_config] if args.key?(:gcp_filestore_csi_driver_config)
|
256
|
+
@gcs_fuse_csi_driver_config = args[:gcs_fuse_csi_driver_config] if args.key?(:gcs_fuse_csi_driver_config)
|
137
257
|
@gke_backup_agent_config = args[:gke_backup_agent_config] if args.key?(:gke_backup_agent_config)
|
138
258
|
@horizontal_pod_autoscaling = args[:horizontal_pod_autoscaling] if args.key?(:horizontal_pod_autoscaling)
|
139
259
|
@http_load_balancing = args[:http_load_balancing] if args.key?(:http_load_balancing)
|
140
260
|
@kubernetes_dashboard = args[:kubernetes_dashboard] if args.key?(:kubernetes_dashboard)
|
141
261
|
@network_policy_config = args[:network_policy_config] if args.key?(:network_policy_config)
|
262
|
+
@parallelstore_csi_driver_config = args[:parallelstore_csi_driver_config] if args.key?(:parallelstore_csi_driver_config)
|
263
|
+
@ray_operator_config = args[:ray_operator_config] if args.key?(:ray_operator_config)
|
264
|
+
@stateful_ha_config = args[:stateful_ha_config] if args.key?(:stateful_ha_config)
|
265
|
+
end
|
266
|
+
end
|
267
|
+
|
268
|
+
# AdvancedDatapathObservabilityConfig specifies configuration of observability
|
269
|
+
# features of advanced datapath.
|
270
|
+
class AdvancedDatapathObservabilityConfig
|
271
|
+
include Google::Apis::Core::Hashable
|
272
|
+
|
273
|
+
# Expose flow metrics on nodes
|
274
|
+
# Corresponds to the JSON property `enableMetrics`
|
275
|
+
# @return [Boolean]
|
276
|
+
attr_accessor :enable_metrics
|
277
|
+
alias_method :enable_metrics?, :enable_metrics
|
278
|
+
|
279
|
+
# Enable Relay component
|
280
|
+
# Corresponds to the JSON property `enableRelay`
|
281
|
+
# @return [Boolean]
|
282
|
+
attr_accessor :enable_relay
|
283
|
+
alias_method :enable_relay?, :enable_relay
|
284
|
+
|
285
|
+
# Method used to make Relay available
|
286
|
+
# Corresponds to the JSON property `relayMode`
|
287
|
+
# @return [String]
|
288
|
+
attr_accessor :relay_mode
|
289
|
+
|
290
|
+
def initialize(**args)
|
291
|
+
update!(**args)
|
292
|
+
end
|
293
|
+
|
294
|
+
# Update properties of this object
|
295
|
+
def update!(**args)
|
296
|
+
@enable_metrics = args[:enable_metrics] if args.key?(:enable_metrics)
|
297
|
+
@enable_relay = args[:enable_relay] if args.key?(:enable_relay)
|
298
|
+
@relay_mode = args[:relay_mode] if args.key?(:relay_mode)
|
142
299
|
end
|
143
300
|
end
|
144
301
|
|
@@ -146,6 +303,12 @@ module Google
|
|
146
303
|
class AdvancedMachineFeatures
|
147
304
|
include Google::Apis::Core::Hashable
|
148
305
|
|
306
|
+
# Whether or not to enable nested virtualization (defaults to false).
|
307
|
+
# Corresponds to the JSON property `enableNestedVirtualization`
|
308
|
+
# @return [Boolean]
|
309
|
+
attr_accessor :enable_nested_virtualization
|
310
|
+
alias_method :enable_nested_virtualization?, :enable_nested_virtualization
|
311
|
+
|
149
312
|
# The number of threads per physical core. To disable simultaneous
|
150
313
|
# multithreading (SMT) set this to 1. If unset, the maximum number of threads
|
151
314
|
# supported per core by the underlying processor is assumed.
|
@@ -159,6 +322,7 @@ module Google
|
|
159
322
|
|
160
323
|
# Update properties of this object
|
161
324
|
def update!(**args)
|
325
|
+
@enable_nested_virtualization = args[:enable_nested_virtualization] if args.key?(:enable_nested_virtualization)
|
162
326
|
@threads_per_core = args[:threads_per_core] if args.key?(:threads_per_core)
|
163
327
|
end
|
164
328
|
end
|
@@ -196,14 +360,14 @@ module Google
|
|
196
360
|
class AutoUpgradeOptions
|
197
361
|
include Google::Apis::Core::Hashable
|
198
362
|
|
199
|
-
#
|
363
|
+
# Output only. This field is set when upgrades are about to commence with the
|
200
364
|
# approximate start time for the upgrades, in [RFC3339](https://www.ietf.org/rfc/
|
201
365
|
# rfc3339.txt) text format.
|
202
366
|
# Corresponds to the JSON property `autoUpgradeStartTime`
|
203
367
|
# @return [String]
|
204
368
|
attr_accessor :auto_upgrade_start_time
|
205
369
|
|
206
|
-
#
|
370
|
+
# Output only. This field is set when upgrades are about to commence with the
|
207
371
|
# description of the upgrade.
|
208
372
|
# Corresponds to the JSON property `description`
|
209
373
|
# @return [String]
|
@@ -230,6 +394,82 @@ module Google
|
|
230
394
|
attr_accessor :enabled
|
231
395
|
alias_method :enabled?, :enabled
|
232
396
|
|
397
|
+
# WorkloadPolicyConfig is the configuration related to GCW workload policy
|
398
|
+
# Corresponds to the JSON property `workloadPolicyConfig`
|
399
|
+
# @return [Google::Apis::ContainerV1::WorkloadPolicyConfig]
|
400
|
+
attr_accessor :workload_policy_config
|
401
|
+
|
402
|
+
def initialize(**args)
|
403
|
+
update!(**args)
|
404
|
+
end
|
405
|
+
|
406
|
+
# Update properties of this object
|
407
|
+
def update!(**args)
|
408
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
409
|
+
@workload_policy_config = args[:workload_policy_config] if args.key?(:workload_policy_config)
|
410
|
+
end
|
411
|
+
end
|
412
|
+
|
413
|
+
# AutopilotCompatibilityIssue contains information about a specific
|
414
|
+
# compatibility issue with Autopilot mode.
|
415
|
+
class AutopilotCompatibilityIssue
|
416
|
+
include Google::Apis::Core::Hashable
|
417
|
+
|
418
|
+
# The constraint type of the issue.
|
419
|
+
# Corresponds to the JSON property `constraintType`
|
420
|
+
# @return [String]
|
421
|
+
attr_accessor :constraint_type
|
422
|
+
|
423
|
+
# The description of the issue.
|
424
|
+
# Corresponds to the JSON property `description`
|
425
|
+
# @return [String]
|
426
|
+
attr_accessor :description
|
427
|
+
|
428
|
+
# A URL to a public documentation, which addresses resolving this issue.
|
429
|
+
# Corresponds to the JSON property `documentationUrl`
|
430
|
+
# @return [String]
|
431
|
+
attr_accessor :documentation_url
|
432
|
+
|
433
|
+
# The incompatibility type of this issue.
|
434
|
+
# Corresponds to the JSON property `incompatibilityType`
|
435
|
+
# @return [String]
|
436
|
+
attr_accessor :incompatibility_type
|
437
|
+
|
438
|
+
# The last time when this issue was observed.
|
439
|
+
# Corresponds to the JSON property `lastObservation`
|
440
|
+
# @return [String]
|
441
|
+
attr_accessor :last_observation
|
442
|
+
|
443
|
+
# The name of the resources which are subject to this issue.
|
444
|
+
# Corresponds to the JSON property `subjects`
|
445
|
+
# @return [Array<String>]
|
446
|
+
attr_accessor :subjects
|
447
|
+
|
448
|
+
def initialize(**args)
|
449
|
+
update!(**args)
|
450
|
+
end
|
451
|
+
|
452
|
+
# Update properties of this object
|
453
|
+
def update!(**args)
|
454
|
+
@constraint_type = args[:constraint_type] if args.key?(:constraint_type)
|
455
|
+
@description = args[:description] if args.key?(:description)
|
456
|
+
@documentation_url = args[:documentation_url] if args.key?(:documentation_url)
|
457
|
+
@incompatibility_type = args[:incompatibility_type] if args.key?(:incompatibility_type)
|
458
|
+
@last_observation = args[:last_observation] if args.key?(:last_observation)
|
459
|
+
@subjects = args[:subjects] if args.key?(:subjects)
|
460
|
+
end
|
461
|
+
end
|
462
|
+
|
463
|
+
# AutopilotConfig contains configuration of autopilot feature for this nodepool.
|
464
|
+
class AutopilotConfig
|
465
|
+
include Google::Apis::Core::Hashable
|
466
|
+
|
467
|
+
# Denotes that nodes belonging to this node pool are Autopilot nodes.
|
468
|
+
# Corresponds to the JSON property `enabled`
|
469
|
+
# @return [Boolean]
|
470
|
+
attr_accessor :enabled
|
471
|
+
alias_method :enabled?, :enabled
|
472
|
+
|
233
473
|
def initialize(**args)
|
234
474
|
update!(**args)
|
235
475
|
end
|
@@ -266,11 +506,18 @@ module Google
|
|
266
506
|
# @return [String]
|
267
507
|
attr_accessor :disk_type
|
268
508
|
|
269
|
-
# The image type to use for NAP created node.
|
509
|
+
# The image type to use for NAP created node. Please see https://cloud.google.
|
510
|
+
# com/kubernetes-engine/docs/concepts/node-images for available image types.
|
270
511
|
# Corresponds to the JSON property `imageType`
|
271
512
|
# @return [String]
|
272
513
|
attr_accessor :image_type
|
273
514
|
|
515
|
+
# Enable or disable Kubelet read only port.
|
516
|
+
# Corresponds to the JSON property `insecureKubeletReadonlyPortEnabled`
|
517
|
+
# @return [Boolean]
|
518
|
+
attr_accessor :insecure_kubelet_readonly_port_enabled
|
519
|
+
alias_method :insecure_kubelet_readonly_port_enabled?, :insecure_kubelet_readonly_port_enabled
|
520
|
+
|
274
521
|
# NodeManagement defines the set of node management services turned on for the
|
275
522
|
# node pool.
|
276
523
|
# Corresponds to the JSON property `management`
|
@@ -283,7 +530,7 @@ module Google
|
|
283
530
|
# Haswell or minCpuPlatform: Intel Sandy Bridge. For more information, read [how
|
284
531
|
# to specify min CPU platform](https://cloud.google.com/compute/docs/instances/
|
285
532
|
# specify-min-cpu-platform). This field is deprecated, min_cpu_platform should
|
286
|
-
# be specified using
|
533
|
+
# be specified using `cloud.google.com/requested-min-cpu-platform` label
|
287
534
|
# selector on the pod. To unset the min cpu platform field pass "automatic" as
|
288
535
|
# field value.
|
289
536
|
# Corresponds to the JSON property `minCpuPlatform`
|
@@ -350,6 +597,7 @@ module Google
|
|
350
597
|
@disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
|
351
598
|
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
352
599
|
@image_type = args[:image_type] if args.key?(:image_type)
|
600
|
+
@insecure_kubelet_readonly_port_enabled = args[:insecure_kubelet_readonly_port_enabled] if args.key?(:insecure_kubelet_readonly_port_enabled)
|
353
601
|
@management = args[:management] if args.key?(:management)
|
354
602
|
@min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
|
355
603
|
@oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes)
|
@@ -359,6 +607,36 @@ module Google
|
|
359
607
|
end
|
360
608
|
end
|
361
609
|
|
610
|
+
# Best effort provisioning.
|
611
|
+
class BestEffortProvisioning
|
612
|
+
include Google::Apis::Core::Hashable
|
613
|
+
|
614
|
+
# When this is enabled, cluster/node pool creations will ignore non-fatal errors
|
615
|
+
# like stockout to best provision as many nodes as possible right now and
|
616
|
+
# eventually bring up all target number of nodes
|
617
|
+
# Corresponds to the JSON property `enabled`
|
618
|
+
# @return [Boolean]
|
619
|
+
attr_accessor :enabled
|
620
|
+
alias_method :enabled?, :enabled
|
621
|
+
|
622
|
+
# Minimum number of nodes to be provisioned to be considered as succeeded, and
|
623
|
+
# the rest of nodes will be provisioned gradually and eventually when stockout
|
624
|
+
# issue has been resolved.
|
625
|
+
# Corresponds to the JSON property `minProvisionNodes`
|
626
|
+
# @return [Fixnum]
|
627
|
+
attr_accessor :min_provision_nodes
|
628
|
+
|
629
|
+
def initialize(**args)
|
630
|
+
update!(**args)
|
631
|
+
end
|
632
|
+
|
633
|
+
# Update properties of this object
|
634
|
+
def update!(**args)
|
635
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
636
|
+
@min_provision_nodes = args[:min_provision_nodes] if args.key?(:min_provision_nodes)
|
637
|
+
end
|
638
|
+
end
|
639
|
+
|
362
640
|
# Parameters for using BigQuery as the destination of resource usage export.
|
363
641
|
class BigQueryDestination
|
364
642
|
include Google::Apis::Core::Hashable
|
@@ -522,6 +800,59 @@ module Google
|
|
522
800
|
end
|
523
801
|
end
|
524
802
|
|
803
|
+
# CertificateAuthorityDomainConfig configures one or more fully qualified domain
|
804
|
+
# names (FQDN) to a specific certificate.
|
805
|
+
class CertificateAuthorityDomainConfig
|
806
|
+
include Google::Apis::Core::Hashable
|
807
|
+
|
808
|
+
# List of fully qualified domain names (FQDN). Specifying port is supported.
|
809
|
+
# Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000
|
810
|
+
# Corresponds to the JSON property `fqdns`
|
811
|
+
# @return [Array<String>]
|
812
|
+
attr_accessor :fqdns
|
813
|
+
|
814
|
+
# GCPSecretManagerCertificateConfig configures a secret from [Google Secret
|
815
|
+
# Manager](https://cloud.google.com/secret-manager).
|
816
|
+
# Corresponds to the JSON property `gcpSecretManagerCertificateConfig`
|
817
|
+
# @return [Google::Apis::ContainerV1::GcpSecretManagerCertificateConfig]
|
818
|
+
attr_accessor :gcp_secret_manager_certificate_config
|
819
|
+
|
820
|
+
def initialize(**args)
|
821
|
+
update!(**args)
|
822
|
+
end
|
823
|
+
|
824
|
+
# Update properties of this object
|
825
|
+
def update!(**args)
|
826
|
+
@fqdns = args[:fqdns] if args.key?(:fqdns)
|
827
|
+
@gcp_secret_manager_certificate_config = args[:gcp_secret_manager_certificate_config] if args.key?(:gcp_secret_manager_certificate_config)
|
828
|
+
end
|
829
|
+
end
|
830
|
+
|
831
|
+
# CheckAutopilotCompatibilityResponse has a list of compatibility issues.
|
832
|
+
class CheckAutopilotCompatibilityResponse
|
833
|
+
include Google::Apis::Core::Hashable
|
834
|
+
|
835
|
+
# The list of issues for the given operation.
|
836
|
+
# Corresponds to the JSON property `issues`
|
837
|
+
# @return [Array<Google::Apis::ContainerV1::AutopilotCompatibilityIssue>]
|
838
|
+
attr_accessor :issues
|
839
|
+
|
840
|
+
# The summary of the autopilot compatibility response.
|
841
|
+
# Corresponds to the JSON property `summary`
|
842
|
+
# @return [String]
|
843
|
+
attr_accessor :summary
|
844
|
+
|
845
|
+
def initialize(**args)
|
846
|
+
update!(**args)
|
847
|
+
end
|
848
|
+
|
849
|
+
# Update properties of this object
|
850
|
+
def update!(**args)
|
851
|
+
@issues = args[:issues] if args.key?(:issues)
|
852
|
+
@summary = args[:summary] if args.key?(:summary)
|
853
|
+
end
|
854
|
+
end
|
855
|
+
|
525
856
|
# CidrBlock contains an optional name and one CIDR block.
|
526
857
|
class CidrBlock
|
527
858
|
include Google::Apis::Core::Hashable
|
@@ -633,6 +964,12 @@ module Google
|
|
633
964
|
# @return [String]
|
634
965
|
attr_accessor :cluster_ipv4_cidr
|
635
966
|
|
967
|
+
# CompliancePostureConfig defines the settings needed to enable/disable features
|
968
|
+
# for the Compliance Posture.
|
969
|
+
# Corresponds to the JSON property `compliancePostureConfig`
|
970
|
+
# @return [Google::Apis::ContainerV1::CompliancePostureConfig]
|
971
|
+
attr_accessor :compliance_posture_config
|
972
|
+
|
636
973
|
# Which conditions caused the current cluster state.
|
637
974
|
# Corresponds to the JSON property `conditions`
|
638
975
|
# @return [Array<Google::Apis::ContainerV1::StatusCondition>]
|
@@ -644,29 +981,34 @@ module Google
|
|
644
981
|
# @return [Google::Apis::ContainerV1::ConfidentialNodes]
|
645
982
|
attr_accessor :confidential_nodes
|
646
983
|
|
984
|
+
# Configuration for all of the cluster's control plane endpoints.
|
985
|
+
# Corresponds to the JSON property `controlPlaneEndpointsConfig`
|
986
|
+
# @return [Google::Apis::ContainerV1::ControlPlaneEndpointsConfig]
|
987
|
+
attr_accessor :control_plane_endpoints_config
|
988
|
+
|
647
989
|
# Configuration for fine-grained cost management feature.
|
648
990
|
# Corresponds to the JSON property `costManagementConfig`
|
649
991
|
# @return [Google::Apis::ContainerV1::CostManagementConfig]
|
650
992
|
attr_accessor :cost_management_config
|
651
993
|
|
652
|
-
#
|
994
|
+
# Output only. The time the cluster was created, in [RFC3339](https://www.ietf.
|
653
995
|
# org/rfc/rfc3339.txt) text format.
|
654
996
|
# Corresponds to the JSON property `createTime`
|
655
997
|
# @return [String]
|
656
998
|
attr_accessor :create_time
|
657
999
|
|
658
|
-
#
|
1000
|
+
# Output only. The current software version of the master endpoint.
|
659
1001
|
# Corresponds to the JSON property `currentMasterVersion`
|
660
1002
|
# @return [String]
|
661
1003
|
attr_accessor :current_master_version
|
662
1004
|
|
663
|
-
#
|
1005
|
+
# Output only. The number of nodes currently in the cluster. Deprecated. Call
|
664
1006
|
# Kubernetes API directly to retrieve node information.
|
665
1007
|
# Corresponds to the JSON property `currentNodeCount`
|
666
1008
|
# @return [Fixnum]
|
667
1009
|
attr_accessor :current_node_count
|
668
1010
|
|
669
|
-
#
|
1011
|
+
# Output only. Deprecated, use [NodePools.version](https://cloud.google.com/
|
670
1012
|
# kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools)
|
671
1013
|
# instead. The current version of the node software components. If they are
|
672
1014
|
# currently at multiple versions because they're in the process of being
|
@@ -690,6 +1032,11 @@ module Google
|
|
690
1032
|
# @return [String]
|
691
1033
|
attr_accessor :description
|
692
1034
|
|
1035
|
+
# K8sBetaAPIConfig , configuration for beta APIs
|
1036
|
+
# Corresponds to the JSON property `enableK8sBetaApis`
|
1037
|
+
# @return [Google::Apis::ContainerV1::K8sBetaApiConfig]
|
1038
|
+
attr_accessor :enable_k8s_beta_apis
|
1039
|
+
|
693
1040
|
# Kubernetes alpha features are enabled on this cluster. This includes alpha API
|
694
1041
|
# groups (e.g. v1alpha1) and features that may not be production ready in the
|
695
1042
|
# kubernetes version of the master and nodes. The cluster has no SLA for uptime
|
@@ -700,13 +1047,15 @@ module Google
|
|
700
1047
|
attr_accessor :enable_kubernetes_alpha
|
701
1048
|
alias_method :enable_kubernetes_alpha?, :enable_kubernetes_alpha
|
702
1049
|
|
703
|
-
# Enable the ability to use Cloud TPUs in this cluster.
|
1050
|
+
# Enable the ability to use Cloud TPUs in this cluster. This field is deprecated
|
1051
|
+
# due to the deprecation of 2VM TPU. The end of life date for 2VM TPU is 2025-04-
|
1052
|
+
# 25.
|
704
1053
|
# Corresponds to the JSON property `enableTpu`
|
705
1054
|
# @return [Boolean]
|
706
1055
|
attr_accessor :enable_tpu
|
707
1056
|
alias_method :enable_tpu?, :enable_tpu
|
708
1057
|
|
709
|
-
#
|
1058
|
+
# Output only. The IP address of this cluster's master endpoint. The endpoint
|
710
1059
|
# can be accessed from the internet at `https://username:password@endpoint/`.
|
711
1060
|
# See the `masterAuth` property of this resource for username and password
|
712
1061
|
# information.
|
@@ -714,6 +1063,11 @@ module Google
|
|
714
1063
|
# @return [String]
|
715
1064
|
attr_accessor :endpoint
|
716
1065
|
|
1066
|
+
# EnterpriseConfig is the cluster enterprise configuration.
|
1067
|
+
# Corresponds to the JSON property `enterpriseConfig`
|
1068
|
+
# @return [Google::Apis::ContainerV1::EnterpriseConfig]
|
1069
|
+
attr_accessor :enterprise_config
|
1070
|
+
|
717
1071
|
# This checksum is computed by the server based on the value of cluster fields,
|
718
1072
|
# and may be sent on update requests to ensure the client has an up-to-date
|
719
1073
|
# value before proceeding.
|
@@ -721,12 +1075,17 @@ module Google
|
|
721
1075
|
# @return [String]
|
722
1076
|
attr_accessor :etag
|
723
1077
|
|
724
|
-
#
|
1078
|
+
# Output only. The time the cluster will be automatically deleted in [RFC3339](
|
725
1079
|
# https://www.ietf.org/rfc/rfc3339.txt) text format.
|
726
1080
|
# Corresponds to the JSON property `expireTime`
|
727
1081
|
# @return [String]
|
728
1082
|
attr_accessor :expire_time
|
729
1083
|
|
1084
|
+
# Fleet is the fleet configuration for the cluster.
|
1085
|
+
# Corresponds to the JSON property `fleet`
|
1086
|
+
# @return [Google::Apis::ContainerV1::Fleet]
|
1087
|
+
attr_accessor :fleet
|
1088
|
+
|
730
1089
|
# Output only. Unique id for the cluster.
|
731
1090
|
# Corresponds to the JSON property `id`
|
732
1091
|
# @return [String]
|
@@ -763,7 +1122,7 @@ module Google
|
|
763
1122
|
# @return [Fixnum]
|
764
1123
|
attr_accessor :initial_node_count
|
765
1124
|
|
766
|
-
# Deprecated. Use node_pools.instance_group_urls.
|
1125
|
+
# Output only. Deprecated. Use node_pools.instance_group_urls.
|
767
1126
|
# Corresponds to the JSON property `instanceGroupUrls`
|
768
1127
|
# @return [Array<String>]
|
769
1128
|
attr_accessor :instance_group_urls
|
@@ -783,10 +1142,7 @@ module Google
|
|
783
1142
|
# @return [Google::Apis::ContainerV1::LegacyAbac]
|
784
1143
|
attr_accessor :legacy_abac
|
785
1144
|
|
786
|
-
#
|
787
|
-
# google.com/compute/docs/regions-zones/regions-zones#available) or [region](
|
788
|
-
# https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
|
789
|
-
# in which the cluster resides.
|
1145
|
+
#
|
790
1146
|
# Corresponds to the JSON property `location`
|
791
1147
|
# @return [String]
|
792
1148
|
attr_accessor :location
|
@@ -893,9 +1249,9 @@ module Google
|
|
893
1249
|
# @return [Google::Apis::ContainerV1::NodeConfig]
|
894
1250
|
attr_accessor :node_config
|
895
1251
|
|
896
|
-
#
|
897
|
-
#
|
898
|
-
#
|
1252
|
+
# Output only. The size of the address space on each node for hosting containers.
|
1253
|
+
# This is provisioned from within the `container_ipv4_cidr` range. This field
|
1254
|
+
# will only be set when cluster is in route-based network mode.
|
899
1255
|
# Corresponds to the JSON property `nodeIpv4CidrSize`
|
900
1256
|
# @return [Fixnum]
|
901
1257
|
attr_accessor :node_ipv4_cidr_size
|
@@ -922,11 +1278,24 @@ module Google
|
|
922
1278
|
# @return [Google::Apis::ContainerV1::NotificationConfig]
|
923
1279
|
attr_accessor :notification_config
|
924
1280
|
|
1281
|
+
# ParentProductConfig is the configuration of the parent product of the cluster.
|
1282
|
+
# This field is used by Google internal products that are built on top of a GKE
|
1283
|
+
# cluster and take the ownership of the cluster.
|
1284
|
+
# Corresponds to the JSON property `parentProductConfig`
|
1285
|
+
# @return [Google::Apis::ContainerV1::ParentProductConfig]
|
1286
|
+
attr_accessor :parent_product_config
|
1287
|
+
|
925
1288
|
# Configuration options for private clusters.
|
926
1289
|
# Corresponds to the JSON property `privateClusterConfig`
|
927
1290
|
# @return [Google::Apis::ContainerV1::PrivateClusterConfig]
|
928
1291
|
attr_accessor :private_cluster_config
|
929
1292
|
|
1293
|
+
# RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings
|
1294
|
+
# that can be created.
|
1295
|
+
# Corresponds to the JSON property `rbacBindingConfig`
|
1296
|
+
# @return [Google::Apis::ContainerV1::RbacBindingConfig]
|
1297
|
+
attr_accessor :rbac_binding_config
|
1298
|
+
|
930
1299
|
# ReleaseChannel indicates which release channel a cluster is subscribed to.
|
931
1300
|
# Release channels are arranged in order of risk. When a cluster is subscribed
|
932
1301
|
# to a release channel, Google maintains both the master version and the node
|
@@ -946,12 +1315,35 @@ module Google
|
|
946
1315
|
# @return [Google::Apis::ContainerV1::ResourceUsageExportConfig]
|
947
1316
|
attr_accessor :resource_usage_export_config
|
948
1317
|
|
949
|
-
#
|
1318
|
+
# Output only. Reserved for future use.
|
1319
|
+
# Corresponds to the JSON property `satisfiesPzi`
|
1320
|
+
# @return [Boolean]
|
1321
|
+
attr_accessor :satisfies_pzi
|
1322
|
+
alias_method :satisfies_pzi?, :satisfies_pzi
|
1323
|
+
|
1324
|
+
# Output only. Reserved for future use.
|
1325
|
+
# Corresponds to the JSON property `satisfiesPzs`
|
1326
|
+
# @return [Boolean]
|
1327
|
+
attr_accessor :satisfies_pzs
|
1328
|
+
alias_method :satisfies_pzs?, :satisfies_pzs
|
1329
|
+
|
1330
|
+
# SecretManagerConfig is config for secret manager enablement.
|
1331
|
+
# Corresponds to the JSON property `secretManagerConfig`
|
1332
|
+
# @return [Google::Apis::ContainerV1::SecretManagerConfig]
|
1333
|
+
attr_accessor :secret_manager_config
|
1334
|
+
|
1335
|
+
# SecurityPostureConfig defines the flags needed to enable/disable features for
|
1336
|
+
# the Security Posture API.
|
1337
|
+
# Corresponds to the JSON property `securityPostureConfig`
|
1338
|
+
# @return [Google::Apis::ContainerV1::SecurityPostureConfig]
|
1339
|
+
attr_accessor :security_posture_config
|
1340
|
+
|
1341
|
+
# Output only. Server-defined URL for the resource.
|
950
1342
|
# Corresponds to the JSON property `selfLink`
|
951
1343
|
# @return [String]
|
952
1344
|
attr_accessor :self_link
|
953
1345
|
|
954
|
-
#
|
1346
|
+
# Output only. The IP address range of the Kubernetes services in this cluster,
|
955
1347
|
# in [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
|
956
1348
|
# notation (e.g. `1.2.3.4/29`). Service addresses are typically put in the last `
|
957
1349
|
# /16` from the container CIDR.
|
@@ -964,12 +1356,12 @@ module Google
|
|
964
1356
|
# @return [Google::Apis::ContainerV1::ShieldedNodes]
|
965
1357
|
attr_accessor :shielded_nodes
|
966
1358
|
|
967
|
-
#
|
1359
|
+
# Output only. The current status of this cluster.
|
968
1360
|
# Corresponds to the JSON property `status`
|
969
1361
|
# @return [String]
|
970
1362
|
attr_accessor :status
|
971
1363
|
|
972
|
-
#
|
1364
|
+
# Output only. Deprecated. Use conditions instead. Additional information about
|
973
1365
|
# the current status of this cluster, if available.
|
974
1366
|
# Corresponds to the JSON property `statusMessage`
|
975
1367
|
# @return [String]
|
@@ -981,13 +1373,20 @@ module Google
|
|
981
1373
|
# @return [String]
|
982
1374
|
attr_accessor :subnetwork
|
983
1375
|
|
984
|
-
#
|
985
|
-
#
|
986
|
-
#
|
1376
|
+
# Output only. The IP address range of the Cloud TPUs in this cluster, in [CIDR](
|
1377
|
+
# http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) notation (e.g. `1.
|
1378
|
+
# 2.3.4/29`). This field is deprecated due to the deprecation of 2VM TPU. The
|
1379
|
+
# end of life date for 2VM TPU is 2025-04-25.
|
987
1380
|
# Corresponds to the JSON property `tpuIpv4CidrBlock`
|
988
1381
|
# @return [String]
|
989
1382
|
attr_accessor :tpu_ipv4_cidr_block
|
990
1383
|
|
1384
|
+
# UserManagedKeysConfig holds the resource address to Keys which are used for
|
1385
|
+
# signing certs and token that are used for communication within cluster.
|
1386
|
+
# Corresponds to the JSON property `userManagedKeysConfig`
|
1387
|
+
# @return [Google::Apis::ContainerV1::UserManagedKeysConfig]
|
1388
|
+
attr_accessor :user_managed_keys_config
|
1389
|
+
|
991
1390
|
# VerticalPodAutoscaling contains global, per-cluster information required by
|
992
1391
|
# Vertical Pod Autoscaler to automatically adjust the resources of pods
|
993
1392
|
# controlled by it.
|
@@ -1000,9 +1399,9 @@ module Google
|
|
1000
1399
|
# @return [Google::Apis::ContainerV1::WorkloadIdentityConfig]
|
1001
1400
|
attr_accessor :workload_identity_config
|
1002
1401
|
|
1003
|
-
#
|
1004
|
-
#
|
1005
|
-
#
|
1402
|
+
# Output only. The name of the Google Compute Engine [zone](https://cloud.google.
|
1403
|
+
# com/compute/docs/zones#available) in which the cluster resides. This field is
|
1404
|
+
# deprecated, use location instead.
|
1006
1405
|
# Corresponds to the JSON property `zone`
|
1007
1406
|
# @return [String]
|
1008
1407
|
attr_accessor :zone
|
@@ -1019,8 +1418,10 @@ module Google
|
|
1019
1418
|
@autoscaling = args[:autoscaling] if args.key?(:autoscaling)
|
1020
1419
|
@binary_authorization = args[:binary_authorization] if args.key?(:binary_authorization)
|
1021
1420
|
@cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr)
|
1421
|
+
@compliance_posture_config = args[:compliance_posture_config] if args.key?(:compliance_posture_config)
|
1022
1422
|
@conditions = args[:conditions] if args.key?(:conditions)
|
1023
1423
|
@confidential_nodes = args[:confidential_nodes] if args.key?(:confidential_nodes)
|
1424
|
+
@control_plane_endpoints_config = args[:control_plane_endpoints_config] if args.key?(:control_plane_endpoints_config)
|
1024
1425
|
@cost_management_config = args[:cost_management_config] if args.key?(:cost_management_config)
|
1025
1426
|
@create_time = args[:create_time] if args.key?(:create_time)
|
1026
1427
|
@current_master_version = args[:current_master_version] if args.key?(:current_master_version)
|
@@ -1029,11 +1430,14 @@ module Google
|
|
1029
1430
|
@database_encryption = args[:database_encryption] if args.key?(:database_encryption)
|
1030
1431
|
@default_max_pods_constraint = args[:default_max_pods_constraint] if args.key?(:default_max_pods_constraint)
|
1031
1432
|
@description = args[:description] if args.key?(:description)
|
1433
|
+
@enable_k8s_beta_apis = args[:enable_k8s_beta_apis] if args.key?(:enable_k8s_beta_apis)
|
1032
1434
|
@enable_kubernetes_alpha = args[:enable_kubernetes_alpha] if args.key?(:enable_kubernetes_alpha)
|
1033
1435
|
@enable_tpu = args[:enable_tpu] if args.key?(:enable_tpu)
|
1034
1436
|
@endpoint = args[:endpoint] if args.key?(:endpoint)
|
1437
|
+
@enterprise_config = args[:enterprise_config] if args.key?(:enterprise_config)
|
1035
1438
|
@etag = args[:etag] if args.key?(:etag)
|
1036
1439
|
@expire_time = args[:expire_time] if args.key?(:expire_time)
|
1440
|
+
@fleet = args[:fleet] if args.key?(:fleet)
|
1037
1441
|
@id = args[:id] if args.key?(:id)
|
1038
1442
|
@identity_service_config = args[:identity_service_config] if args.key?(:identity_service_config)
|
1039
1443
|
@initial_cluster_version = args[:initial_cluster_version] if args.key?(:initial_cluster_version)
|
@@ -1062,10 +1466,16 @@ module Google
|
|
1062
1466
|
@node_pool_defaults = args[:node_pool_defaults] if args.key?(:node_pool_defaults)
|
1063
1467
|
@node_pools = args[:node_pools] if args.key?(:node_pools)
|
1064
1468
|
@notification_config = args[:notification_config] if args.key?(:notification_config)
|
1469
|
+
@parent_product_config = args[:parent_product_config] if args.key?(:parent_product_config)
|
1065
1470
|
@private_cluster_config = args[:private_cluster_config] if args.key?(:private_cluster_config)
|
1471
|
+
@rbac_binding_config = args[:rbac_binding_config] if args.key?(:rbac_binding_config)
|
1066
1472
|
@release_channel = args[:release_channel] if args.key?(:release_channel)
|
1067
1473
|
@resource_labels = args[:resource_labels] if args.key?(:resource_labels)
|
1068
1474
|
@resource_usage_export_config = args[:resource_usage_export_config] if args.key?(:resource_usage_export_config)
|
1475
|
+
@satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
|
1476
|
+
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
1477
|
+
@secret_manager_config = args[:secret_manager_config] if args.key?(:secret_manager_config)
|
1478
|
+
@security_posture_config = args[:security_posture_config] if args.key?(:security_posture_config)
|
1069
1479
|
@self_link = args[:self_link] if args.key?(:self_link)
|
1070
1480
|
@services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr)
|
1071
1481
|
@shielded_nodes = args[:shielded_nodes] if args.key?(:shielded_nodes)
|
@@ -1073,6 +1483,7 @@ module Google
|
|
1073
1483
|
@status_message = args[:status_message] if args.key?(:status_message)
|
1074
1484
|
@subnetwork = args[:subnetwork] if args.key?(:subnetwork)
|
1075
1485
|
@tpu_ipv4_cidr_block = args[:tpu_ipv4_cidr_block] if args.key?(:tpu_ipv4_cidr_block)
|
1486
|
+
@user_managed_keys_config = args[:user_managed_keys_config] if args.key?(:user_managed_keys_config)
|
1076
1487
|
@vertical_pod_autoscaling = args[:vertical_pod_autoscaling] if args.key?(:vertical_pod_autoscaling)
|
1077
1488
|
@workload_identity_config = args[:workload_identity_config] if args.key?(:workload_identity_config)
|
1078
1489
|
@zone = args[:zone] if args.key?(:zone)
|
@@ -1128,11 +1539,36 @@ module Google
|
|
1128
1539
|
end
|
1129
1540
|
end
|
1130
1541
|
|
1542
|
+
# Configuration of network bandwidth tiers
|
1543
|
+
class ClusterNetworkPerformanceConfig
|
1544
|
+
include Google::Apis::Core::Hashable
|
1545
|
+
|
1546
|
+
# Specifies the total network bandwidth tier for NodePools in the cluster.
|
1547
|
+
# Corresponds to the JSON property `totalEgressBandwidthTier`
|
1548
|
+
# @return [String]
|
1549
|
+
attr_accessor :total_egress_bandwidth_tier
|
1550
|
+
|
1551
|
+
def initialize(**args)
|
1552
|
+
update!(**args)
|
1553
|
+
end
|
1554
|
+
|
1555
|
+
# Update properties of this object
|
1556
|
+
def update!(**args)
|
1557
|
+
@total_egress_bandwidth_tier = args[:total_egress_bandwidth_tier] if args.key?(:total_egress_bandwidth_tier)
|
1558
|
+
end
|
1559
|
+
end
|
1560
|
+
|
1131
1561
|
# ClusterUpdate describes an update to the cluster. Exactly one update can be
|
1132
1562
|
# applied to a cluster with each request, so at most one field can be provided.
|
1133
1563
|
class ClusterUpdate
|
1134
1564
|
include Google::Apis::Core::Hashable
|
1135
1565
|
|
1566
|
+
# AdditionalPodRangesConfig is the configuration for additional pod secondary
|
1567
|
+
# ranges supporting the ClusterUpdate message.
|
1568
|
+
# Corresponds to the JSON property `additionalPodRangesConfig`
|
1569
|
+
# @return [Google::Apis::ContainerV1::AdditionalPodRangesConfig]
|
1570
|
+
attr_accessor :additional_pod_ranges_config
|
1571
|
+
|
1136
1572
|
# Configuration for the addons that can be automatically spun up in the cluster,
|
1137
1573
|
# enabling additional functionality.
|
1138
1574
|
# Corresponds to the JSON property `desiredAddonsConfig`
|
@@ -1144,6 +1580,11 @@ module Google
|
|
1144
1580
|
# @return [Google::Apis::ContainerV1::AuthenticatorGroupsConfig]
|
1145
1581
|
attr_accessor :desired_authenticator_groups_config
|
1146
1582
|
|
1583
|
+
# WorkloadPolicyConfig is the configuration related to GCW workload policy
|
1584
|
+
# Corresponds to the JSON property `desiredAutopilotWorkloadPolicyConfig`
|
1585
|
+
# @return [Google::Apis::ContainerV1::WorkloadPolicyConfig]
|
1586
|
+
attr_accessor :desired_autopilot_workload_policy_config
|
1587
|
+
|
1147
1588
|
# Configuration for Binary Authorization.
|
1148
1589
|
# Corresponds to the JSON property `desiredBinaryAuthorization`
|
1149
1590
|
# @return [Google::Apis::ContainerV1::BinaryAuthorization]
|
@@ -1156,6 +1597,22 @@ module Google
|
|
1156
1597
|
# @return [Google::Apis::ContainerV1::ClusterAutoscaling]
|
1157
1598
|
attr_accessor :desired_cluster_autoscaling
|
1158
1599
|
|
1600
|
+
# CompliancePostureConfig defines the settings needed to enable/disable features
|
1601
|
+
# for the Compliance Posture.
|
1602
|
+
# Corresponds to the JSON property `desiredCompliancePostureConfig`
|
1603
|
+
# @return [Google::Apis::ContainerV1::CompliancePostureConfig]
|
1604
|
+
attr_accessor :desired_compliance_posture_config
|
1605
|
+
|
1606
|
+
# ContainerdConfig contains configuration to customize containerd.
|
1607
|
+
# Corresponds to the JSON property `desiredContainerdConfig`
|
1608
|
+
# @return [Google::Apis::ContainerV1::ContainerdConfig]
|
1609
|
+
attr_accessor :desired_containerd_config
|
1610
|
+
|
1611
|
+
# Configuration for all of the cluster's control plane endpoints.
|
1612
|
+
# Corresponds to the JSON property `desiredControlPlaneEndpointsConfig`
|
1613
|
+
# @return [Google::Apis::ContainerV1::ControlPlaneEndpointsConfig]
|
1614
|
+
attr_accessor :desired_control_plane_endpoints_config
|
1615
|
+
|
1159
1616
|
# Configuration for fine-grained cost management feature.
|
1160
1617
|
# Corresponds to the JSON property `desiredCostManagementConfig`
|
1161
1618
|
# @return [Google::Apis::ContainerV1::CostManagementConfig]
|
@@ -1171,23 +1628,68 @@ module Google
|
|
1171
1628
|
# @return [String]
|
1172
1629
|
attr_accessor :desired_datapath_provider
|
1173
1630
|
|
1631
|
+
# Override the default setting of whether future created nodes have private IP
|
1632
|
+
# addresses only, namely NetworkConfig.default_enable_private_nodes
|
1633
|
+
# Corresponds to the JSON property `desiredDefaultEnablePrivateNodes`
|
1634
|
+
# @return [Boolean]
|
1635
|
+
attr_accessor :desired_default_enable_private_nodes
|
1636
|
+
alias_method :desired_default_enable_private_nodes?, :desired_default_enable_private_nodes
|
1637
|
+
|
1174
1638
|
# DefaultSnatStatus contains the desired state of whether default sNAT should be
|
1175
1639
|
# disabled on the cluster.
|
1176
1640
|
# Corresponds to the JSON property `desiredDefaultSnatStatus`
|
1177
1641
|
# @return [Google::Apis::ContainerV1::DefaultSnatStatus]
|
1178
1642
|
attr_accessor :desired_default_snat_status
|
1179
1643
|
|
1644
|
+
# Enable/Disable L4 LB VPC firewall reconciliation for the cluster.
|
1645
|
+
# Corresponds to the JSON property `desiredDisableL4LbFirewallReconciliation`
|
1646
|
+
# @return [Boolean]
|
1647
|
+
attr_accessor :desired_disable_l4_lb_firewall_reconciliation
|
1648
|
+
alias_method :desired_disable_l4_lb_firewall_reconciliation?, :desired_disable_l4_lb_firewall_reconciliation
|
1649
|
+
|
1180
1650
|
# DNSConfig contains the desired set of options for configuring clusterDNS.
|
1181
1651
|
# Corresponds to the JSON property `desiredDnsConfig`
|
1182
1652
|
# @return [Google::Apis::ContainerV1::DnsConfig]
|
1183
1653
|
attr_accessor :desired_dns_config
|
1184
1654
|
|
1185
|
-
# Enable/Disable
|
1655
|
+
# Enable/Disable Cilium Clusterwide Network Policy for the cluster.
|
1656
|
+
# Corresponds to the JSON property `desiredEnableCiliumClusterwideNetworkPolicy`
|
1657
|
+
# @return [Boolean]
|
1658
|
+
attr_accessor :desired_enable_cilium_clusterwide_network_policy
|
1659
|
+
alias_method :desired_enable_cilium_clusterwide_network_policy?, :desired_enable_cilium_clusterwide_network_policy
|
1660
|
+
|
1661
|
+
# Enable/Disable FQDN Network Policy for the cluster.
|
1662
|
+
# Corresponds to the JSON property `desiredEnableFqdnNetworkPolicy`
|
1663
|
+
# @return [Boolean]
|
1664
|
+
attr_accessor :desired_enable_fqdn_network_policy
|
1665
|
+
alias_method :desired_enable_fqdn_network_policy?, :desired_enable_fqdn_network_policy
|
1666
|
+
|
1667
|
+
# Enable/Disable Multi-Networking for the cluster
|
1668
|
+
# Corresponds to the JSON property `desiredEnableMultiNetworking`
|
1669
|
+
# @return [Boolean]
|
1670
|
+
attr_accessor :desired_enable_multi_networking
|
1671
|
+
alias_method :desired_enable_multi_networking?, :desired_enable_multi_networking
|
1672
|
+
|
1673
|
+
# Enable/Disable private endpoint for the cluster's master. Deprecated: Use
|
1674
|
+
# desired_control_plane_endpoints_config.ip_endpoints_config.
|
1675
|
+
# enable_public_endpoint instead. Note that the value of enable_public_endpoint
|
1676
|
+
# is reversed: if enable_private_endpoint is false, then enable_public_endpoint
|
1677
|
+
# will be true.
|
1186
1678
|
# Corresponds to the JSON property `desiredEnablePrivateEndpoint`
|
1187
1679
|
# @return [Boolean]
|
1188
1680
|
attr_accessor :desired_enable_private_endpoint
|
1189
1681
|
alias_method :desired_enable_private_endpoint?, :desired_enable_private_endpoint
|
1190
1682
|
|
1683
|
+
# DesiredEnterpriseConfig is a wrapper used for updating enterprise_config.
|
1684
|
+
# Corresponds to the JSON property `desiredEnterpriseConfig`
|
1685
|
+
# @return [Google::Apis::ContainerV1::DesiredEnterpriseConfig]
|
1686
|
+
attr_accessor :desired_enterprise_config
|
1687
|
+
|
1688
|
+
# Fleet is the fleet configuration for the cluster.
|
1689
|
+
# Corresponds to the JSON property `desiredFleet`
|
1690
|
+
# @return [Google::Apis::ContainerV1::Fleet]
|
1691
|
+
attr_accessor :desired_fleet
|
1692
|
+
|
1191
1693
|
# GatewayAPIConfig contains the desired config of Gateway API on this cluster.
|
1192
1694
|
# Corresponds to the JSON property `desiredGatewayApiConfig`
|
1193
1695
|
# @return [Google::Apis::ContainerV1::GatewayApiConfig]
|
@@ -1211,12 +1713,22 @@ module Google
|
|
1211
1713
|
# @return [String]
|
1212
1714
|
attr_accessor :desired_image_type
|
1213
1715
|
|
1716
|
+
# Specify the details of in-transit encryption.
|
1717
|
+
# Corresponds to the JSON property `desiredInTransitEncryptionConfig`
|
1718
|
+
# @return [String]
|
1719
|
+
attr_accessor :desired_in_transit_encryption_config
|
1720
|
+
|
1214
1721
|
# IntraNodeVisibilityConfig contains the desired config of the intra-node
|
1215
1722
|
# visibility on this cluster.
|
1216
1723
|
# Corresponds to the JSON property `desiredIntraNodeVisibilityConfig`
|
1217
1724
|
# @return [Google::Apis::ContainerV1::IntraNodeVisibilityConfig]
|
1218
1725
|
attr_accessor :desired_intra_node_visibility_config
|
1219
1726
|
|
1727
|
+
# K8sBetaAPIConfig , configuration for beta APIs
|
1728
|
+
# Corresponds to the JSON property `desiredK8sBetaApis`
|
1729
|
+
# @return [Google::Apis::ContainerV1::K8sBetaApiConfig]
|
1730
|
+
attr_accessor :desired_k8s_beta_apis
|
1731
|
+
|
1220
1732
|
# ILBSubsettingConfig contains the desired config of L4 Internal LoadBalancer
|
1221
1733
|
# subsetting on this cluster.
|
1222
1734
|
# Corresponds to the JSON property `desiredL4ilbSubsettingConfig`
|
@@ -1288,12 +1800,41 @@ module Google
|
|
1288
1800
|
# @return [String]
|
1289
1801
|
attr_accessor :desired_monitoring_service
|
1290
1802
|
|
1803
|
+
# Configuration of network bandwidth tiers
|
1804
|
+
# Corresponds to the JSON property `desiredNetworkPerformanceConfig`
|
1805
|
+
# @return [Google::Apis::ContainerV1::ClusterNetworkPerformanceConfig]
|
1806
|
+
attr_accessor :desired_network_performance_config
|
1807
|
+
|
1808
|
+
# Node kubelet configs.
|
1809
|
+
# Corresponds to the JSON property `desiredNodeKubeletConfig`
|
1810
|
+
# @return [Google::Apis::ContainerV1::NodeKubeletConfig]
|
1811
|
+
attr_accessor :desired_node_kubelet_config
|
1812
|
+
|
1813
|
+
# Node kubelet configs.
|
1814
|
+
# Corresponds to the JSON property `desiredNodePoolAutoConfigKubeletConfig`
|
1815
|
+
# @return [Google::Apis::ContainerV1::NodeKubeletConfig]
|
1816
|
+
attr_accessor :desired_node_pool_auto_config_kubelet_config
|
1817
|
+
|
1818
|
+
# Parameters that can be configured on Linux nodes.
|
1819
|
+
# Corresponds to the JSON property `desiredNodePoolAutoConfigLinuxNodeConfig`
|
1820
|
+
# @return [Google::Apis::ContainerV1::LinuxNodeConfig]
|
1821
|
+
attr_accessor :desired_node_pool_auto_config_linux_node_config
|
1822
|
+
|
1291
1823
|
# Collection of Compute Engine network tags that can be applied to a node's
|
1292
1824
|
# underlying VM instance.
|
1293
1825
|
# Corresponds to the JSON property `desiredNodePoolAutoConfigNetworkTags`
|
1294
1826
|
# @return [Google::Apis::ContainerV1::NetworkTags]
|
1295
1827
|
attr_accessor :desired_node_pool_auto_config_network_tags
|
1296
1828
|
|
1829
|
+
# A map of resource manager tag keys and values to be attached to the nodes for
|
1830
|
+
# managing Compute Engine firewalls using Network Firewall Policies. Tags must
|
1831
|
+
# be according to specifications in https://cloud.google.com/vpc/docs/tags-
|
1832
|
+
# firewalls-overview#specifications. A maximum of 5 tag key-value pairs can be
|
1833
|
+
# specified. Existing tags will be replaced with new values.
|
1834
|
+
# Corresponds to the JSON property `desiredNodePoolAutoConfigResourceManagerTags`
|
1835
|
+
# @return [Google::Apis::ContainerV1::ResourceManagerTags]
|
1836
|
+
attr_accessor :desired_node_pool_auto_config_resource_manager_tags
|
1837
|
+
|
1297
1838
|
# NodePoolAutoscaling contains information required by cluster autoscaler to
|
1298
1839
|
# adjust the size of the node pool to the current cluster usage.
|
1299
1840
|
# Corresponds to the JSON property `desiredNodePoolAutoscaling`
|
@@ -1328,6 +1869,13 @@ module Google
|
|
1328
1869
|
# @return [Google::Apis::ContainerV1::NotificationConfig]
|
1329
1870
|
attr_accessor :desired_notification_config
|
1330
1871
|
|
1872
|
+
# ParentProductConfig is the configuration of the parent product of the cluster.
|
1873
|
+
# This field is used by Google internal products that are built on top of a GKE
|
1874
|
+
# cluster and take the ownership of the cluster.
|
1875
|
+
# Corresponds to the JSON property `desiredParentProductConfig`
|
1876
|
+
# @return [Google::Apis::ContainerV1::ParentProductConfig]
|
1877
|
+
attr_accessor :desired_parent_product_config
|
1878
|
+
|
1331
1879
|
# Configuration options for private clusters.
|
1332
1880
|
# Corresponds to the JSON property `desiredPrivateClusterConfig`
|
1333
1881
|
# @return [Google::Apis::ContainerV1::PrivateClusterConfig]
|
@@ -1338,6 +1886,12 @@ module Google
|
|
1338
1886
|
# @return [String]
|
1339
1887
|
attr_accessor :desired_private_ipv6_google_access
|
1340
1888
|
|
1889
|
+
# RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings
|
1890
|
+
# that can be created.
|
1891
|
+
# Corresponds to the JSON property `desiredRbacBindingConfig`
|
1892
|
+
# @return [Google::Apis::ContainerV1::RbacBindingConfig]
|
1893
|
+
attr_accessor :desired_rbac_binding_config
|
1894
|
+
|
1341
1895
|
# ReleaseChannel indicates which release channel a cluster is subscribed to.
|
1342
1896
|
# Release channels are arranged in order of risk. When a cluster is subscribed
|
1343
1897
|
# to a release channel, Google maintains both the master version and the node
|
@@ -1351,6 +1905,17 @@ module Google
|
|
1351
1905
|
# @return [Google::Apis::ContainerV1::ResourceUsageExportConfig]
|
1352
1906
|
attr_accessor :desired_resource_usage_export_config
|
1353
1907
|
|
1908
|
+
# SecretManagerConfig is config for secret manager enablement.
|
1909
|
+
# Corresponds to the JSON property `desiredSecretManagerConfig`
|
1910
|
+
# @return [Google::Apis::ContainerV1::SecretManagerConfig]
|
1911
|
+
attr_accessor :desired_secret_manager_config
|
1912
|
+
|
1913
|
+
# SecurityPostureConfig defines the flags needed to enable/disable features for
|
1914
|
+
# the Security Posture API.
|
1915
|
+
# Corresponds to the JSON property `desiredSecurityPostureConfig`
|
1916
|
+
# @return [Google::Apis::ContainerV1::SecurityPostureConfig]
|
1917
|
+
attr_accessor :desired_security_posture_config
|
1918
|
+
|
1354
1919
|
# Config to block services with externalIPs field.
|
1355
1920
|
# Corresponds to the JSON property `desiredServiceExternalIpsConfig`
|
1356
1921
|
# @return [Google::Apis::ContainerV1::ServiceExternalIPsConfig]
|
@@ -1380,6 +1945,11 @@ module Google
|
|
1380
1945
|
# @return [Google::Apis::ContainerV1::WorkloadIdentityConfig]
|
1381
1946
|
attr_accessor :desired_workload_identity_config
|
1382
1947
|
|
1948
|
+
# K8sBetaAPIConfig , configuration for beta APIs
|
1949
|
+
# Corresponds to the JSON property `enableK8sBetaApis`
|
1950
|
+
# @return [Google::Apis::ContainerV1::K8sBetaApiConfig]
|
1951
|
+
attr_accessor :enable_k8s_beta_apis
|
1952
|
+
|
1383
1953
|
# The current etag of the cluster. If an etag is provided and does not match the
|
1384
1954
|
# current etag of the cluster, update will be blocked and an ABORTED error will
|
1385
1955
|
# be returned.
|
@@ -1387,27 +1957,53 @@ module Google
|
|
1387
1957
|
# @return [String]
|
1388
1958
|
attr_accessor :etag
|
1389
1959
|
|
1960
|
+
# AdditionalPodRangesConfig is the configuration for additional pod secondary
|
1961
|
+
# ranges supporting the ClusterUpdate message.
|
1962
|
+
# Corresponds to the JSON property `removedAdditionalPodRangesConfig`
|
1963
|
+
# @return [Google::Apis::ContainerV1::AdditionalPodRangesConfig]
|
1964
|
+
attr_accessor :removed_additional_pod_ranges_config
|
1965
|
+
|
1966
|
+
# UserManagedKeysConfig holds the resource address to Keys which are used for
|
1967
|
+
# signing certs and token that are used for communication within cluster.
|
1968
|
+
# Corresponds to the JSON property `userManagedKeysConfig`
|
1969
|
+
# @return [Google::Apis::ContainerV1::UserManagedKeysConfig]
|
1970
|
+
attr_accessor :user_managed_keys_config
|
1971
|
+
|
1390
1972
|
def initialize(**args)
|
1391
1973
|
update!(**args)
|
1392
1974
|
end
|
1393
1975
|
|
1394
1976
|
# Update properties of this object
|
1395
1977
|
def update!(**args)
|
1978
|
+
@additional_pod_ranges_config = args[:additional_pod_ranges_config] if args.key?(:additional_pod_ranges_config)
|
1396
1979
|
@desired_addons_config = args[:desired_addons_config] if args.key?(:desired_addons_config)
|
1397
1980
|
@desired_authenticator_groups_config = args[:desired_authenticator_groups_config] if args.key?(:desired_authenticator_groups_config)
|
1981
|
+
@desired_autopilot_workload_policy_config = args[:desired_autopilot_workload_policy_config] if args.key?(:desired_autopilot_workload_policy_config)
|
1398
1982
|
@desired_binary_authorization = args[:desired_binary_authorization] if args.key?(:desired_binary_authorization)
|
1399
1983
|
@desired_cluster_autoscaling = args[:desired_cluster_autoscaling] if args.key?(:desired_cluster_autoscaling)
|
1984
|
+
@desired_compliance_posture_config = args[:desired_compliance_posture_config] if args.key?(:desired_compliance_posture_config)
|
1985
|
+
@desired_containerd_config = args[:desired_containerd_config] if args.key?(:desired_containerd_config)
|
1986
|
+
@desired_control_plane_endpoints_config = args[:desired_control_plane_endpoints_config] if args.key?(:desired_control_plane_endpoints_config)
|
1400
1987
|
@desired_cost_management_config = args[:desired_cost_management_config] if args.key?(:desired_cost_management_config)
|
1401
1988
|
@desired_database_encryption = args[:desired_database_encryption] if args.key?(:desired_database_encryption)
|
1402
1989
|
@desired_datapath_provider = args[:desired_datapath_provider] if args.key?(:desired_datapath_provider)
|
1990
|
+
@desired_default_enable_private_nodes = args[:desired_default_enable_private_nodes] if args.key?(:desired_default_enable_private_nodes)
|
1403
1991
|
@desired_default_snat_status = args[:desired_default_snat_status] if args.key?(:desired_default_snat_status)
|
1992
|
+
@desired_disable_l4_lb_firewall_reconciliation = args[:desired_disable_l4_lb_firewall_reconciliation] if args.key?(:desired_disable_l4_lb_firewall_reconciliation)
|
1404
1993
|
@desired_dns_config = args[:desired_dns_config] if args.key?(:desired_dns_config)
|
1994
|
+
@desired_enable_cilium_clusterwide_network_policy = args[:desired_enable_cilium_clusterwide_network_policy] if args.key?(:desired_enable_cilium_clusterwide_network_policy)
|
1995
|
+
@desired_enable_fqdn_network_policy = args[:desired_enable_fqdn_network_policy] if args.key?(:desired_enable_fqdn_network_policy)
|
1996
|
+
@desired_enable_multi_networking = args[:desired_enable_multi_networking] if args.key?(:desired_enable_multi_networking)
|
1405
1997
|
@desired_enable_private_endpoint = args[:desired_enable_private_endpoint] if args.key?(:desired_enable_private_endpoint)
|
1998
|
+
@desired_enterprise_config = args[:desired_enterprise_config] if args.key?(:desired_enterprise_config)
|
1999
|
+
@desired_fleet = args[:desired_fleet] if args.key?(:desired_fleet)
|
1406
2000
|
@desired_gateway_api_config = args[:desired_gateway_api_config] if args.key?(:desired_gateway_api_config)
|
1407
2001
|
@desired_gcfs_config = args[:desired_gcfs_config] if args.key?(:desired_gcfs_config)
|
1408
2002
|
@desired_identity_service_config = args[:desired_identity_service_config] if args.key?(:desired_identity_service_config)
|
1409
2003
|
@desired_image_type = args[:desired_image_type] if args.key?(:desired_image_type)
|
2004
|
+
@desired_in_transit_encryption_config = args[:desired_in_transit_encryption_config] if args.key?(:desired_in_transit_encryption_config)
|
1410
2005
|
@desired_intra_node_visibility_config = args[:desired_intra_node_visibility_config] if args.key?(:desired_intra_node_visibility_config)
|
2006
|
+
@desired_k8s_beta_apis = args[:desired_k8s_beta_apis] if args.key?(:desired_k8s_beta_apis)
|
1411
2007
|
@desired_l4ilb_subsetting_config = args[:desired_l4ilb_subsetting_config] if args.key?(:desired_l4ilb_subsetting_config)
|
1412
2008
|
@desired_locations = args[:desired_locations] if args.key?(:desired_locations)
|
1413
2009
|
@desired_logging_config = args[:desired_logging_config] if args.key?(:desired_logging_config)
|
@@ -1417,22 +2013,34 @@ module Google
|
|
1417
2013
|
@desired_mesh_certificates = args[:desired_mesh_certificates] if args.key?(:desired_mesh_certificates)
|
1418
2014
|
@desired_monitoring_config = args[:desired_monitoring_config] if args.key?(:desired_monitoring_config)
|
1419
2015
|
@desired_monitoring_service = args[:desired_monitoring_service] if args.key?(:desired_monitoring_service)
|
2016
|
+
@desired_network_performance_config = args[:desired_network_performance_config] if args.key?(:desired_network_performance_config)
|
2017
|
+
@desired_node_kubelet_config = args[:desired_node_kubelet_config] if args.key?(:desired_node_kubelet_config)
|
2018
|
+
@desired_node_pool_auto_config_kubelet_config = args[:desired_node_pool_auto_config_kubelet_config] if args.key?(:desired_node_pool_auto_config_kubelet_config)
|
2019
|
+
@desired_node_pool_auto_config_linux_node_config = args[:desired_node_pool_auto_config_linux_node_config] if args.key?(:desired_node_pool_auto_config_linux_node_config)
|
1420
2020
|
@desired_node_pool_auto_config_network_tags = args[:desired_node_pool_auto_config_network_tags] if args.key?(:desired_node_pool_auto_config_network_tags)
|
2021
|
+
@desired_node_pool_auto_config_resource_manager_tags = args[:desired_node_pool_auto_config_resource_manager_tags] if args.key?(:desired_node_pool_auto_config_resource_manager_tags)
|
1421
2022
|
@desired_node_pool_autoscaling = args[:desired_node_pool_autoscaling] if args.key?(:desired_node_pool_autoscaling)
|
1422
2023
|
@desired_node_pool_id = args[:desired_node_pool_id] if args.key?(:desired_node_pool_id)
|
1423
2024
|
@desired_node_pool_logging_config = args[:desired_node_pool_logging_config] if args.key?(:desired_node_pool_logging_config)
|
1424
2025
|
@desired_node_version = args[:desired_node_version] if args.key?(:desired_node_version)
|
1425
2026
|
@desired_notification_config = args[:desired_notification_config] if args.key?(:desired_notification_config)
|
2027
|
+
@desired_parent_product_config = args[:desired_parent_product_config] if args.key?(:desired_parent_product_config)
|
1426
2028
|
@desired_private_cluster_config = args[:desired_private_cluster_config] if args.key?(:desired_private_cluster_config)
|
1427
2029
|
@desired_private_ipv6_google_access = args[:desired_private_ipv6_google_access] if args.key?(:desired_private_ipv6_google_access)
|
2030
|
+
@desired_rbac_binding_config = args[:desired_rbac_binding_config] if args.key?(:desired_rbac_binding_config)
|
1428
2031
|
@desired_release_channel = args[:desired_release_channel] if args.key?(:desired_release_channel)
|
1429
2032
|
@desired_resource_usage_export_config = args[:desired_resource_usage_export_config] if args.key?(:desired_resource_usage_export_config)
|
2033
|
+
@desired_secret_manager_config = args[:desired_secret_manager_config] if args.key?(:desired_secret_manager_config)
|
2034
|
+
@desired_security_posture_config = args[:desired_security_posture_config] if args.key?(:desired_security_posture_config)
|
1430
2035
|
@desired_service_external_ips_config = args[:desired_service_external_ips_config] if args.key?(:desired_service_external_ips_config)
|
1431
2036
|
@desired_shielded_nodes = args[:desired_shielded_nodes] if args.key?(:desired_shielded_nodes)
|
1432
2037
|
@desired_stack_type = args[:desired_stack_type] if args.key?(:desired_stack_type)
|
1433
2038
|
@desired_vertical_pod_autoscaling = args[:desired_vertical_pod_autoscaling] if args.key?(:desired_vertical_pod_autoscaling)
|
1434
2039
|
@desired_workload_identity_config = args[:desired_workload_identity_config] if args.key?(:desired_workload_identity_config)
|
2040
|
+
@enable_k8s_beta_apis = args[:enable_k8s_beta_apis] if args.key?(:enable_k8s_beta_apis)
|
1435
2041
|
@etag = args[:etag] if args.key?(:etag)
|
2042
|
+
@removed_additional_pod_ranges_config = args[:removed_additional_pod_ranges_config] if args.key?(:removed_additional_pod_ranges_config)
|
2043
|
+
@user_managed_keys_config = args[:user_managed_keys_config] if args.key?(:user_managed_keys_config)
|
1436
2044
|
end
|
1437
2045
|
end
|
1438
2046
|
|
@@ -1493,18 +2101,63 @@ module Google
|
|
1493
2101
|
end
|
1494
2102
|
end
|
1495
2103
|
|
1496
|
-
#
|
1497
|
-
#
|
1498
|
-
class
|
2104
|
+
# CompliancePostureConfig defines the settings needed to enable/disable features
|
2105
|
+
# for the Compliance Posture.
|
2106
|
+
class CompliancePostureConfig
|
1499
2107
|
include Google::Apis::Core::Hashable
|
1500
2108
|
|
1501
|
-
#
|
1502
|
-
# Corresponds to the JSON property `
|
1503
|
-
# @return [
|
1504
|
-
attr_accessor :
|
1505
|
-
alias_method :enabled?, :enabled
|
2109
|
+
# List of enabled compliance standards.
|
2110
|
+
# Corresponds to the JSON property `complianceStandards`
|
2111
|
+
# @return [Array<Google::Apis::ContainerV1::ComplianceStandard>]
|
2112
|
+
attr_accessor :compliance_standards
|
1506
2113
|
|
1507
|
-
|
2114
|
+
# Defines the enablement mode for Compliance Posture.
|
2115
|
+
# Corresponds to the JSON property `mode`
|
2116
|
+
# @return [String]
|
2117
|
+
attr_accessor :mode
|
2118
|
+
|
2119
|
+
def initialize(**args)
|
2120
|
+
update!(**args)
|
2121
|
+
end
|
2122
|
+
|
2123
|
+
# Update properties of this object
|
2124
|
+
def update!(**args)
|
2125
|
+
@compliance_standards = args[:compliance_standards] if args.key?(:compliance_standards)
|
2126
|
+
@mode = args[:mode] if args.key?(:mode)
|
2127
|
+
end
|
2128
|
+
end
|
2129
|
+
|
2130
|
+
# Defines the details of a compliance standard.
|
2131
|
+
class ComplianceStandard
|
2132
|
+
include Google::Apis::Core::Hashable
|
2133
|
+
|
2134
|
+
# Name of the compliance standard.
|
2135
|
+
# Corresponds to the JSON property `standard`
|
2136
|
+
# @return [String]
|
2137
|
+
attr_accessor :standard
|
2138
|
+
|
2139
|
+
def initialize(**args)
|
2140
|
+
update!(**args)
|
2141
|
+
end
|
2142
|
+
|
2143
|
+
# Update properties of this object
|
2144
|
+
def update!(**args)
|
2145
|
+
@standard = args[:standard] if args.key?(:standard)
|
2146
|
+
end
|
2147
|
+
end
|
2148
|
+
|
2149
|
+
# ConfidentialNodes is configuration for the confidential nodes feature, which
|
2150
|
+
# makes nodes run on confidential VMs.
|
2151
|
+
class ConfidentialNodes
|
2152
|
+
include Google::Apis::Core::Hashable
|
2153
|
+
|
2154
|
+
# Whether Confidential Nodes feature is enabled.
|
2155
|
+
# Corresponds to the JSON property `enabled`
|
2156
|
+
# @return [Boolean]
|
2157
|
+
attr_accessor :enabled
|
2158
|
+
alias_method :enabled?, :enabled
|
2159
|
+
|
2160
|
+
def initialize(**args)
|
1508
2161
|
update!(**args)
|
1509
2162
|
end
|
1510
2163
|
|
@@ -1555,6 +2208,51 @@ module Google
|
|
1555
2208
|
end
|
1556
2209
|
end
|
1557
2210
|
|
2211
|
+
# ContainerdConfig contains configuration to customize containerd.
|
2212
|
+
class ContainerdConfig
|
2213
|
+
include Google::Apis::Core::Hashable
|
2214
|
+
|
2215
|
+
# PrivateRegistryAccessConfig contains access configuration for private
|
2216
|
+
# container registries.
|
2217
|
+
# Corresponds to the JSON property `privateRegistryAccessConfig`
|
2218
|
+
# @return [Google::Apis::ContainerV1::PrivateRegistryAccessConfig]
|
2219
|
+
attr_accessor :private_registry_access_config
|
2220
|
+
|
2221
|
+
def initialize(**args)
|
2222
|
+
update!(**args)
|
2223
|
+
end
|
2224
|
+
|
2225
|
+
# Update properties of this object
|
2226
|
+
def update!(**args)
|
2227
|
+
@private_registry_access_config = args[:private_registry_access_config] if args.key?(:private_registry_access_config)
|
2228
|
+
end
|
2229
|
+
end
|
2230
|
+
|
2231
|
+
# Configuration for all of the cluster's control plane endpoints.
|
2232
|
+
class ControlPlaneEndpointsConfig
|
2233
|
+
include Google::Apis::Core::Hashable
|
2234
|
+
|
2235
|
+
# Describes the configuration of a DNS endpoint.
|
2236
|
+
# Corresponds to the JSON property `dnsEndpointConfig`
|
2237
|
+
# @return [Google::Apis::ContainerV1::DnsEndpointConfig]
|
2238
|
+
attr_accessor :dns_endpoint_config
|
2239
|
+
|
2240
|
+
# IP endpoints configuration.
|
2241
|
+
# Corresponds to the JSON property `ipEndpointsConfig`
|
2242
|
+
# @return [Google::Apis::ContainerV1::IpEndpointsConfig]
|
2243
|
+
attr_accessor :ip_endpoints_config
|
2244
|
+
|
2245
|
+
def initialize(**args)
|
2246
|
+
update!(**args)
|
2247
|
+
end
|
2248
|
+
|
2249
|
+
# Update properties of this object
|
2250
|
+
def update!(**args)
|
2251
|
+
@dns_endpoint_config = args[:dns_endpoint_config] if args.key?(:dns_endpoint_config)
|
2252
|
+
@ip_endpoints_config = args[:ip_endpoints_config] if args.key?(:ip_endpoints_config)
|
2253
|
+
end
|
2254
|
+
end
|
2255
|
+
|
1558
2256
|
# Configuration for fine-grained cost management feature.
|
1559
2257
|
class CostManagementConfig
|
1560
2258
|
include Google::Apis::Core::Hashable
|
@@ -1675,6 +2373,11 @@ module Google
|
|
1675
2373
|
class DnsConfig
|
1676
2374
|
include Google::Apis::Core::Hashable
|
1677
2375
|
|
2376
|
+
# Optional. The domain used in Additive VPC scope.
|
2377
|
+
# Corresponds to the JSON property `additiveVpcScopeDnsDomain`
|
2378
|
+
# @return [String]
|
2379
|
+
attr_accessor :additive_vpc_scope_dns_domain
|
2380
|
+
|
1678
2381
|
# cluster_dns indicates which in-cluster DNS provider should be used.
|
1679
2382
|
# Corresponds to the JSON property `clusterDns`
|
1680
2383
|
# @return [String]
|
@@ -1696,17 +2399,48 @@ module Google
|
|
1696
2399
|
|
1697
2400
|
# Update properties of this object
|
1698
2401
|
def update!(**args)
|
2402
|
+
@additive_vpc_scope_dns_domain = args[:additive_vpc_scope_dns_domain] if args.key?(:additive_vpc_scope_dns_domain)
|
1699
2403
|
@cluster_dns = args[:cluster_dns] if args.key?(:cluster_dns)
|
1700
2404
|
@cluster_dns_domain = args[:cluster_dns_domain] if args.key?(:cluster_dns_domain)
|
1701
2405
|
@cluster_dns_scope = args[:cluster_dns_scope] if args.key?(:cluster_dns_scope)
|
1702
2406
|
end
|
1703
2407
|
end
|
1704
2408
|
|
2409
|
+
# Describes the configuration of a DNS endpoint.
|
2410
|
+
class DnsEndpointConfig
|
2411
|
+
include Google::Apis::Core::Hashable
|
2412
|
+
|
2413
|
+
# Controls whether user traffic is allowed over this endpoint. Note that GCP-
|
2414
|
+
# managed services may still use the endpoint even if this is false.
|
2415
|
+
# Corresponds to the JSON property `allowExternalTraffic`
|
2416
|
+
# @return [Boolean]
|
2417
|
+
attr_accessor :allow_external_traffic
|
2418
|
+
alias_method :allow_external_traffic?, :allow_external_traffic
|
2419
|
+
|
2420
|
+
# Output only. The cluster's DNS endpoint configuration. A DNS format address.
|
2421
|
+
# This is accessible from the public internet. Ex: uid.us-central1.gke.goog.
|
2422
|
+
# Always present, but the behavior may change according to the value of
|
2423
|
+
# DNSEndpointConfig.allow_external_traffic.
|
2424
|
+
# Corresponds to the JSON property `endpoint`
|
2425
|
+
# @return [String]
|
2426
|
+
attr_accessor :endpoint
|
2427
|
+
|
2428
|
+
def initialize(**args)
|
2429
|
+
update!(**args)
|
2430
|
+
end
|
2431
|
+
|
2432
|
+
# Update properties of this object
|
2433
|
+
def update!(**args)
|
2434
|
+
@allow_external_traffic = args[:allow_external_traffic] if args.key?(:allow_external_traffic)
|
2435
|
+
@endpoint = args[:endpoint] if args.key?(:endpoint)
|
2436
|
+
end
|
2437
|
+
end
|
2438
|
+
|
1705
2439
|
# Time window specified for daily maintenance operations.
|
1706
2440
|
class DailyMaintenanceWindow
|
1707
2441
|
include Google::Apis::Core::Hashable
|
1708
2442
|
|
1709
|
-
#
|
2443
|
+
# Output only. Duration of the time window, automatically chosen to be smallest
|
1710
2444
|
# possible in the given scenario. Duration will be in [RFC3339](https://www.ietf.
|
1711
2445
|
# org/rfc/rfc3339.txt) format "PTnHnMnS".
|
1712
2446
|
# Corresponds to the JSON property `duration`
|
@@ -1735,13 +2469,29 @@ module Google
|
|
1735
2469
|
class DatabaseEncryption
|
1736
2470
|
include Google::Apis::Core::Hashable
|
1737
2471
|
|
2472
|
+
# Output only. The current state of etcd encryption.
|
2473
|
+
# Corresponds to the JSON property `currentState`
|
2474
|
+
# @return [String]
|
2475
|
+
attr_accessor :current_state
|
2476
|
+
|
2477
|
+
# Output only. Keys in use by the cluster for decrypting existing objects, in
|
2478
|
+
# addition to the key in `key_name`. Each item is a CloudKMS key resource.
|
2479
|
+
# Corresponds to the JSON property `decryptionKeys`
|
2480
|
+
# @return [Array<String>]
|
2481
|
+
attr_accessor :decryption_keys
|
2482
|
+
|
1738
2483
|
# Name of CloudKMS key to use for the encryption of secrets in etcd. Ex.
|
1739
2484
|
# projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
|
1740
2485
|
# Corresponds to the JSON property `keyName`
|
1741
2486
|
# @return [String]
|
1742
2487
|
attr_accessor :key_name
|
1743
2488
|
|
1744
|
-
#
|
2489
|
+
# Output only. Records errors seen during DatabaseEncryption update operations.
|
2490
|
+
# Corresponds to the JSON property `lastOperationErrors`
|
2491
|
+
# @return [Array<Google::Apis::ContainerV1::OperationError>]
|
2492
|
+
attr_accessor :last_operation_errors
|
2493
|
+
|
2494
|
+
# The desired state of etcd encryption.
|
1745
2495
|
# Corresponds to the JSON property `state`
|
1746
2496
|
# @return [String]
|
1747
2497
|
attr_accessor :state
|
@@ -1752,7 +2502,10 @@ module Google
|
|
1752
2502
|
|
1753
2503
|
# Update properties of this object
|
1754
2504
|
def update!(**args)
|
2505
|
+
@current_state = args[:current_state] if args.key?(:current_state)
|
2506
|
+
@decryption_keys = args[:decryption_keys] if args.key?(:decryption_keys)
|
1755
2507
|
@key_name = args[:key_name] if args.key?(:key_name)
|
2508
|
+
@last_operation_errors = args[:last_operation_errors] if args.key?(:last_operation_errors)
|
1756
2509
|
@state = args[:state] if args.key?(:state)
|
1757
2510
|
end
|
1758
2511
|
end
|
@@ -1778,6 +2531,25 @@ module Google
|
|
1778
2531
|
end
|
1779
2532
|
end
|
1780
2533
|
|
2534
|
+
# DesiredEnterpriseConfig is a wrapper used for updating enterprise_config.
|
2535
|
+
class DesiredEnterpriseConfig
|
2536
|
+
include Google::Apis::Core::Hashable
|
2537
|
+
|
2538
|
+
# desired_tier specifies the desired tier of the cluster.
|
2539
|
+
# Corresponds to the JSON property `desiredTier`
|
2540
|
+
# @return [String]
|
2541
|
+
attr_accessor :desired_tier
|
2542
|
+
|
2543
|
+
def initialize(**args)
|
2544
|
+
update!(**args)
|
2545
|
+
end
|
2546
|
+
|
2547
|
+
# Update properties of this object
|
2548
|
+
def update!(**args)
|
2549
|
+
@desired_tier = args[:desired_tier] if args.key?(:desired_tier)
|
2550
|
+
end
|
2551
|
+
end
|
2552
|
+
|
1781
2553
|
# Configuration for NodeLocal DNSCache
|
1782
2554
|
class DnsCacheConfig
|
1783
2555
|
include Google::Apis::Core::Hashable
|
@@ -1814,16 +2586,48 @@ module Google
|
|
1814
2586
|
end
|
1815
2587
|
end
|
1816
2588
|
|
2589
|
+
# EnterpriseConfig is the cluster enterprise configuration.
|
2590
|
+
class EnterpriseConfig
|
2591
|
+
include Google::Apis::Core::Hashable
|
2592
|
+
|
2593
|
+
# Output only. cluster_tier indicates the effective tier of the cluster.
|
2594
|
+
# Corresponds to the JSON property `clusterTier`
|
2595
|
+
# @return [String]
|
2596
|
+
attr_accessor :cluster_tier
|
2597
|
+
|
2598
|
+
# desired_tier specifies the desired tier of the cluster.
|
2599
|
+
# Corresponds to the JSON property `desiredTier`
|
2600
|
+
# @return [String]
|
2601
|
+
attr_accessor :desired_tier
|
2602
|
+
|
2603
|
+
def initialize(**args)
|
2604
|
+
update!(**args)
|
2605
|
+
end
|
2606
|
+
|
2607
|
+
# Update properties of this object
|
2608
|
+
def update!(**args)
|
2609
|
+
@cluster_tier = args[:cluster_tier] if args.key?(:cluster_tier)
|
2610
|
+
@desired_tier = args[:desired_tier] if args.key?(:desired_tier)
|
2611
|
+
end
|
2612
|
+
end
|
2613
|
+
|
1817
2614
|
# EphemeralStorageLocalSsdConfig contains configuration for the node ephemeral
|
1818
|
-
# storage using Local
|
2615
|
+
# storage using Local SSDs.
|
1819
2616
|
class EphemeralStorageLocalSsdConfig
|
1820
2617
|
include Google::Apis::Core::Hashable
|
1821
2618
|
|
1822
|
-
# Number of local SSDs to use to back ephemeral storage. Uses NVMe interfaces.
|
1823
|
-
#
|
1824
|
-
#
|
1825
|
-
#
|
1826
|
-
#
|
2619
|
+
# Number of local SSDs to use to back ephemeral storage. Uses NVMe interfaces. A
|
2620
|
+
# zero (or unset) value has different meanings depending on machine type being
|
2621
|
+
# used: 1. For pre-Gen3 machines, which support flexible numbers of local ssds,
|
2622
|
+
# zero (or unset) means to disable using local SSDs as ephemeral storage. The
|
2623
|
+
# limit for this value is dependent upon the maximum number of disk available on
|
2624
|
+
# a machine per zone. See: https://cloud.google.com/compute/docs/disks/local-ssd
|
2625
|
+
# for more information. 2. For Gen3 machines which dictate a specific number of
|
2626
|
+
# local ssds, zero (or unset) means to use the default number of local ssds that
|
2627
|
+
# goes with that machine type. For example, for a c3-standard-8-lssd machine, 2
|
2628
|
+
# local ssds would be provisioned. For c3-standard-8 (which doesn't support
|
2629
|
+
# local ssds), 0 will be provisioned. See https://cloud.google.com/compute/docs/
|
2630
|
+
# disks/local-ssd#choose_number_local_ssds for more info.
|
1827
2631
|
# Corresponds to the JSON property `localSsdCount`
|
1828
2632
|
# @return [Fixnum]
|
1829
2633
|
attr_accessor :local_ssd_count
|
@@ -1880,6 +2684,83 @@ module Google
|
|
1880
2684
|
end
|
1881
2685
|
end
|
1882
2686
|
|
2687
|
+
# Fleet is the fleet configuration for the cluster.
|
2688
|
+
class Fleet
|
2689
|
+
include Google::Apis::Core::Hashable
|
2690
|
+
|
2691
|
+
# Output only. The full resource name of the registered fleet membership of the
|
2692
|
+
# cluster, in the format `//gkehub.googleapis.com/projects/*/locations/*/
|
2693
|
+
# memberships/*`.
|
2694
|
+
# Corresponds to the JSON property `membership`
|
2695
|
+
# @return [String]
|
2696
|
+
attr_accessor :membership
|
2697
|
+
|
2698
|
+
# Output only. Whether the cluster has been registered through the fleet API.
|
2699
|
+
# Corresponds to the JSON property `preRegistered`
|
2700
|
+
# @return [Boolean]
|
2701
|
+
attr_accessor :pre_registered
|
2702
|
+
alias_method :pre_registered?, :pre_registered
|
2703
|
+
|
2704
|
+
# The Fleet host project(project ID or project number) where this cluster will
|
2705
|
+
# be registered to. This field cannot be changed after the cluster has been
|
2706
|
+
# registered.
|
2707
|
+
# Corresponds to the JSON property `project`
|
2708
|
+
# @return [String]
|
2709
|
+
attr_accessor :project
|
2710
|
+
|
2711
|
+
def initialize(**args)
|
2712
|
+
update!(**args)
|
2713
|
+
end
|
2714
|
+
|
2715
|
+
# Update properties of this object
|
2716
|
+
def update!(**args)
|
2717
|
+
@membership = args[:membership] if args.key?(:membership)
|
2718
|
+
@pre_registered = args[:pre_registered] if args.key?(:pre_registered)
|
2719
|
+
@project = args[:project] if args.key?(:project)
|
2720
|
+
end
|
2721
|
+
end
|
2722
|
+
|
2723
|
+
# GCPSecretManagerCertificateConfig configures a secret from [Google Secret
|
2724
|
+
# Manager](https://cloud.google.com/secret-manager).
|
2725
|
+
class GcpSecretManagerCertificateConfig
|
2726
|
+
include Google::Apis::Core::Hashable
|
2727
|
+
|
2728
|
+
# Secret URI, in the form "projects/$PROJECT_ID/secrets/$SECRET_NAME/versions/$
|
2729
|
+
# VERSION". Version can be fixed (e.g. "2") or "latest"
|
2730
|
+
# Corresponds to the JSON property `secretUri`
|
2731
|
+
# @return [String]
|
2732
|
+
attr_accessor :secret_uri
|
2733
|
+
|
2734
|
+
def initialize(**args)
|
2735
|
+
update!(**args)
|
2736
|
+
end
|
2737
|
+
|
2738
|
+
# Update properties of this object
|
2739
|
+
def update!(**args)
|
2740
|
+
@secret_uri = args[:secret_uri] if args.key?(:secret_uri)
|
2741
|
+
end
|
2742
|
+
end
|
2743
|
+
|
2744
|
+
# GPUDriverInstallationConfig specifies the version of GPU driver to be auto
|
2745
|
+
# installed.
|
2746
|
+
class GpuDriverInstallationConfig
|
2747
|
+
include Google::Apis::Core::Hashable
|
2748
|
+
|
2749
|
+
# Mode for how the GPU driver is installed.
|
2750
|
+
# Corresponds to the JSON property `gpuDriverVersion`
|
2751
|
+
# @return [String]
|
2752
|
+
attr_accessor :gpu_driver_version
|
2753
|
+
|
2754
|
+
def initialize(**args)
|
2755
|
+
update!(**args)
|
2756
|
+
end
|
2757
|
+
|
2758
|
+
# Update properties of this object
|
2759
|
+
def update!(**args)
|
2760
|
+
@gpu_driver_version = args[:gpu_driver_version] if args.key?(:gpu_driver_version)
|
2761
|
+
end
|
2762
|
+
end
|
2763
|
+
|
1883
2764
|
# GPUSharingConfig represents the GPU sharing configuration for Hardware
|
1884
2765
|
# Accelerators.
|
1885
2766
|
class GpuSharingConfig
|
@@ -1986,7 +2867,27 @@ module Google
|
|
1986
2867
|
end
|
1987
2868
|
end
|
1988
2869
|
|
1989
|
-
#
|
2870
|
+
# Configuration for the Cloud Storage Fuse CSI driver.
|
2871
|
+
class GcsFuseCsiDriverConfig
|
2872
|
+
include Google::Apis::Core::Hashable
|
2873
|
+
|
2874
|
+
# Whether the Cloud Storage Fuse CSI driver is enabled for this cluster.
|
2875
|
+
# Corresponds to the JSON property `enabled`
|
2876
|
+
# @return [Boolean]
|
2877
|
+
attr_accessor :enabled
|
2878
|
+
alias_method :enabled?, :enabled
|
2879
|
+
|
2880
|
+
def initialize(**args)
|
2881
|
+
update!(**args)
|
2882
|
+
end
|
2883
|
+
|
2884
|
+
# Update properties of this object
|
2885
|
+
def update!(**args)
|
2886
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
2887
|
+
end
|
2888
|
+
end
|
2889
|
+
|
2890
|
+
# GetJSONWebKeysResponse is a valid JSON Web Key Set as specified in rfc 7517
|
1990
2891
|
class GetJsonWebKeysResponse
|
1991
2892
|
include Google::Apis::Core::Hashable
|
1992
2893
|
|
@@ -2169,6 +3070,31 @@ module Google
|
|
2169
3070
|
end
|
2170
3071
|
end
|
2171
3072
|
|
3073
|
+
# Hugepages amount in both 2m and 1g size
|
3074
|
+
class HugepagesConfig
|
3075
|
+
include Google::Apis::Core::Hashable
|
3076
|
+
|
3077
|
+
# Optional. Amount of 1G hugepages
|
3078
|
+
# Corresponds to the JSON property `hugepageSize1g`
|
3079
|
+
# @return [Fixnum]
|
3080
|
+
attr_accessor :hugepage_size1g
|
3081
|
+
|
3082
|
+
# Optional. Amount of 2M hugepages
|
3083
|
+
# Corresponds to the JSON property `hugepageSize2m`
|
3084
|
+
# @return [Fixnum]
|
3085
|
+
attr_accessor :hugepage_size2m
|
3086
|
+
|
3087
|
+
def initialize(**args)
|
3088
|
+
update!(**args)
|
3089
|
+
end
|
3090
|
+
|
3091
|
+
# Update properties of this object
|
3092
|
+
def update!(**args)
|
3093
|
+
@hugepage_size1g = args[:hugepage_size1g] if args.key?(:hugepage_size1g)
|
3094
|
+
@hugepage_size2m = args[:hugepage_size2m] if args.key?(:hugepage_size2m)
|
3095
|
+
end
|
3096
|
+
end
|
3097
|
+
|
2172
3098
|
# ILBSubsettingConfig contains the desired config of L4 Internal LoadBalancer
|
2173
3099
|
# subsetting on this cluster.
|
2174
3100
|
class IlbSubsettingConfig
|
@@ -2194,6 +3120,12 @@ module Google
|
|
2194
3120
|
class IpAllocationPolicy
|
2195
3121
|
include Google::Apis::Core::Hashable
|
2196
3122
|
|
3123
|
+
# AdditionalPodRangesConfig is the configuration for additional pod secondary
|
3124
|
+
# ranges supporting the ClusterUpdate message.
|
3125
|
+
# Corresponds to the JSON property `additionalPodRangesConfig`
|
3126
|
+
# @return [Google::Apis::ContainerV1::AdditionalPodRangesConfig]
|
3127
|
+
attr_accessor :additional_pod_ranges_config
|
3128
|
+
|
2197
3129
|
# This field is deprecated, use cluster_ipv4_cidr_block.
|
2198
3130
|
# Corresponds to the JSON property `clusterIpv4Cidr`
|
2199
3131
|
# @return [String]
|
@@ -2226,6 +3158,13 @@ module Google
|
|
2226
3158
|
attr_accessor :create_subnetwork
|
2227
3159
|
alias_method :create_subnetwork?, :create_subnetwork
|
2228
3160
|
|
3161
|
+
# Output only. The utilization of the cluster default IPv4 range for the pod.
|
3162
|
+
# The ratio is Usage/[Total number of IPs in the secondary range], Usage=
|
3163
|
+
# numNodes*numZones*podIPsPerNode.
|
3164
|
+
# Corresponds to the JSON property `defaultPodIpv4RangeUtilization`
|
3165
|
+
# @return [Float]
|
3166
|
+
attr_accessor :default_pod_ipv4_range_utilization
|
3167
|
+
|
2229
3168
|
# The ipv6 access type (internal or external) when create_subnetwork is true
|
2230
3169
|
# Corresponds to the JSON property `ipv6AccessType`
|
2231
3170
|
# @return [String]
|
@@ -2247,6 +3186,11 @@ module Google
|
|
2247
3186
|
# @return [String]
|
2248
3187
|
attr_accessor :node_ipv4_cidr_block
|
2249
3188
|
|
3189
|
+
# [PRIVATE FIELD] Config for pod CIDR size overprovisioning.
|
3190
|
+
# Corresponds to the JSON property `podCidrOverprovisionConfig`
|
3191
|
+
# @return [Google::Apis::ContainerV1::PodCidrOverprovisionConfig]
|
3192
|
+
attr_accessor :pod_cidr_overprovision_config
|
3193
|
+
|
2250
3194
|
# This field is deprecated, use services_ipv4_cidr_block.
|
2251
3195
|
# Corresponds to the JSON property `servicesIpv4Cidr`
|
2252
3196
|
# @return [String]
|
@@ -2264,6 +3208,11 @@ module Google
|
|
2264
3208
|
# @return [String]
|
2265
3209
|
attr_accessor :services_ipv4_cidr_block
|
2266
3210
|
|
3211
|
+
# Output only. The services IPv6 CIDR block for the cluster.
|
3212
|
+
# Corresponds to the JSON property `servicesIpv6CidrBlock`
|
3213
|
+
# @return [String]
|
3214
|
+
attr_accessor :services_ipv6_cidr_block
|
3215
|
+
|
2267
3216
|
# The name of the secondary range to be used as for the services CIDR block. The
|
2268
3217
|
# secondary range will be used for service ClusterIPs. This must be an existing
|
2269
3218
|
# secondary range associated with the cluster subnetwork. This field is only
|
@@ -2277,6 +3226,11 @@ module Google
|
|
2277
3226
|
# @return [String]
|
2278
3227
|
attr_accessor :stack_type
|
2279
3228
|
|
3229
|
+
# Output only. The subnet's IPv6 CIDR block used by nodes and pods.
|
3230
|
+
# Corresponds to the JSON property `subnetIpv6CidrBlock`
|
3231
|
+
# @return [String]
|
3232
|
+
attr_accessor :subnet_ipv6_cidr_block
|
3233
|
+
|
2280
3234
|
# A custom subnetwork name to be used if `create_subnetwork` is true. If this
|
2281
3235
|
# field is empty, then an automatic name will be chosen for the new subnetwork.
|
2282
3236
|
# Corresponds to the JSON property `subnetworkName`
|
@@ -2290,7 +3244,8 @@ module Google
|
|
2290
3244
|
# specific netmask. Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-
|
2291
3245
|
# Domain_Routing) notation (e.g. `10.96.0.0/14`) from the RFC-1918 private
|
2292
3246
|
# networks (e.g. `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a
|
2293
|
-
# specific range to use.
|
3247
|
+
# specific range to use. This field is deprecated due to the deprecation of 2VM
|
3248
|
+
# TPU. The end of life date for 2VM TPU is 2025-04-25.
|
2294
3249
|
# Corresponds to the JSON property `tpuIpv4CidrBlock`
|
2295
3250
|
# @return [String]
|
2296
3251
|
attr_accessor :tpu_ipv4_cidr_block
|
@@ -2319,17 +3274,22 @@ module Google
|
|
2319
3274
|
|
2320
3275
|
# Update properties of this object
|
2321
3276
|
def update!(**args)
|
3277
|
+
@additional_pod_ranges_config = args[:additional_pod_ranges_config] if args.key?(:additional_pod_ranges_config)
|
2322
3278
|
@cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr)
|
2323
3279
|
@cluster_ipv4_cidr_block = args[:cluster_ipv4_cidr_block] if args.key?(:cluster_ipv4_cidr_block)
|
2324
3280
|
@cluster_secondary_range_name = args[:cluster_secondary_range_name] if args.key?(:cluster_secondary_range_name)
|
2325
3281
|
@create_subnetwork = args[:create_subnetwork] if args.key?(:create_subnetwork)
|
3282
|
+
@default_pod_ipv4_range_utilization = args[:default_pod_ipv4_range_utilization] if args.key?(:default_pod_ipv4_range_utilization)
|
2326
3283
|
@ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
|
2327
3284
|
@node_ipv4_cidr = args[:node_ipv4_cidr] if args.key?(:node_ipv4_cidr)
|
2328
3285
|
@node_ipv4_cidr_block = args[:node_ipv4_cidr_block] if args.key?(:node_ipv4_cidr_block)
|
3286
|
+
@pod_cidr_overprovision_config = args[:pod_cidr_overprovision_config] if args.key?(:pod_cidr_overprovision_config)
|
2329
3287
|
@services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr)
|
2330
3288
|
@services_ipv4_cidr_block = args[:services_ipv4_cidr_block] if args.key?(:services_ipv4_cidr_block)
|
3289
|
+
@services_ipv6_cidr_block = args[:services_ipv6_cidr_block] if args.key?(:services_ipv6_cidr_block)
|
2331
3290
|
@services_secondary_range_name = args[:services_secondary_range_name] if args.key?(:services_secondary_range_name)
|
2332
3291
|
@stack_type = args[:stack_type] if args.key?(:stack_type)
|
3292
|
+
@subnet_ipv6_cidr_block = args[:subnet_ipv6_cidr_block] if args.key?(:subnet_ipv6_cidr_block)
|
2333
3293
|
@subnetwork_name = args[:subnetwork_name] if args.key?(:subnetwork_name)
|
2334
3294
|
@tpu_ipv4_cidr_block = args[:tpu_ipv4_cidr_block] if args.key?(:tpu_ipv4_cidr_block)
|
2335
3295
|
@use_ip_aliases = args[:use_ip_aliases] if args.key?(:use_ip_aliases)
|
@@ -2337,6 +3297,76 @@ module Google
|
|
2337
3297
|
end
|
2338
3298
|
end
|
2339
3299
|
|
3300
|
+
# IP endpoints configuration.
|
3301
|
+
class IpEndpointsConfig
|
3302
|
+
include Google::Apis::Core::Hashable
|
3303
|
+
|
3304
|
+
# Configuration options for the master authorized networks feature. Enabled
|
3305
|
+
# master authorized networks will disallow all external traffic to access
|
3306
|
+
# Kubernetes master through HTTPS except traffic from the given CIDR blocks,
|
3307
|
+
# Google Compute Engine Public IPs and Google Prod IPs.
|
3308
|
+
# Corresponds to the JSON property `authorizedNetworksConfig`
|
3309
|
+
# @return [Google::Apis::ContainerV1::MasterAuthorizedNetworksConfig]
|
3310
|
+
attr_accessor :authorized_networks_config
|
3311
|
+
|
3312
|
+
# Controls whether the control plane allows access through a public IP. It is
|
3313
|
+
# invalid to specify both PrivateClusterConfig.enablePrivateEndpoint and this
|
3314
|
+
# field at the same time.
|
3315
|
+
# Corresponds to the JSON property `enablePublicEndpoint`
|
3316
|
+
# @return [Boolean]
|
3317
|
+
attr_accessor :enable_public_endpoint
|
3318
|
+
alias_method :enable_public_endpoint?, :enable_public_endpoint
|
3319
|
+
|
3320
|
+
# Controls whether to allow direct IP access.
|
3321
|
+
# Corresponds to the JSON property `enabled`
|
3322
|
+
# @return [Boolean]
|
3323
|
+
attr_accessor :enabled
|
3324
|
+
alias_method :enabled?, :enabled
|
3325
|
+
|
3326
|
+
# Controls whether the control plane's private endpoint is accessible from
|
3327
|
+
# sources in other regions. It is invalid to specify both
|
3328
|
+
# PrivateClusterMasterGlobalAccessConfig.enabled and this field at the same time.
|
3329
|
+
# Corresponds to the JSON property `globalAccess`
|
3330
|
+
# @return [Boolean]
|
3331
|
+
attr_accessor :global_access
|
3332
|
+
alias_method :global_access?, :global_access
|
3333
|
+
|
3334
|
+
# Output only. The internal IP address of this cluster's control plane. Only
|
3335
|
+
# populated if enabled.
|
3336
|
+
# Corresponds to the JSON property `privateEndpoint`
|
3337
|
+
# @return [String]
|
3338
|
+
attr_accessor :private_endpoint
|
3339
|
+
|
3340
|
+
# Subnet to provision the master's private endpoint during cluster creation.
|
3341
|
+
# Specified in projects/*/regions/*/subnetworks/* format. It is invalid to
|
3342
|
+
# specify both PrivateClusterConfig.privateEndpointSubnetwork and this field at
|
3343
|
+
# the same time.
|
3344
|
+
# Corresponds to the JSON property `privateEndpointSubnetwork`
|
3345
|
+
# @return [String]
|
3346
|
+
attr_accessor :private_endpoint_subnetwork
|
3347
|
+
|
3348
|
+
# Output only. The external IP address of this cluster's control plane. Only
|
3349
|
+
# populated if enabled.
|
3350
|
+
# Corresponds to the JSON property `publicEndpoint`
|
3351
|
+
# @return [String]
|
3352
|
+
attr_accessor :public_endpoint
|
3353
|
+
|
3354
|
+
def initialize(**args)
|
3355
|
+
update!(**args)
|
3356
|
+
end
|
3357
|
+
|
3358
|
+
# Update properties of this object
|
3359
|
+
def update!(**args)
|
3360
|
+
@authorized_networks_config = args[:authorized_networks_config] if args.key?(:authorized_networks_config)
|
3361
|
+
@enable_public_endpoint = args[:enable_public_endpoint] if args.key?(:enable_public_endpoint)
|
3362
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
3363
|
+
@global_access = args[:global_access] if args.key?(:global_access)
|
3364
|
+
@private_endpoint = args[:private_endpoint] if args.key?(:private_endpoint)
|
3365
|
+
@private_endpoint_subnetwork = args[:private_endpoint_subnetwork] if args.key?(:private_endpoint_subnetwork)
|
3366
|
+
@public_endpoint = args[:public_endpoint] if args.key?(:public_endpoint)
|
3367
|
+
end
|
3368
|
+
end
|
3369
|
+
|
2340
3370
|
# IdentityServiceConfig is configuration for Identity Service which allows
|
2341
3371
|
# customers to use external identity providers with the K8S API
|
2342
3372
|
class IdentityServiceConfig
|
@@ -2446,6 +3476,25 @@ module Google
|
|
2446
3476
|
end
|
2447
3477
|
end
|
2448
3478
|
|
3479
|
+
# K8sBetaAPIConfig , configuration for beta APIs
|
3480
|
+
class K8sBetaApiConfig
|
3481
|
+
include Google::Apis::Core::Hashable
|
3482
|
+
|
3483
|
+
# Enabled k8s beta APIs.
|
3484
|
+
# Corresponds to the JSON property `enabledApis`
|
3485
|
+
# @return [Array<String>]
|
3486
|
+
attr_accessor :enabled_apis
|
3487
|
+
|
3488
|
+
def initialize(**args)
|
3489
|
+
update!(**args)
|
3490
|
+
end
|
3491
|
+
|
3492
|
+
# Update properties of this object
|
3493
|
+
def update!(**args)
|
3494
|
+
@enabled_apis = args[:enabled_apis] if args.key?(:enabled_apis)
|
3495
|
+
end
|
3496
|
+
end
|
3497
|
+
|
2449
3498
|
# Configuration for the Kubernetes Dashboard.
|
2450
3499
|
class KubernetesDashboard
|
2451
3500
|
include Google::Apis::Core::Hashable
|
@@ -2498,11 +3547,21 @@ module Google
|
|
2498
3547
|
# @return [String]
|
2499
3548
|
attr_accessor :cgroup_mode
|
2500
3549
|
|
3550
|
+
# Hugepages amount in both 2m and 1g size
|
3551
|
+
# Corresponds to the JSON property `hugepages`
|
3552
|
+
# @return [Google::Apis::ContainerV1::HugepagesConfig]
|
3553
|
+
attr_accessor :hugepages
|
3554
|
+
|
2501
3555
|
# The Linux kernel parameters to be applied to the nodes and all pods running on
|
2502
3556
|
# the nodes. The following parameters are supported. net.core.busy_poll net.core.
|
2503
|
-
# busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.
|
2504
|
-
# net.core.
|
2505
|
-
# ipv4.tcp_wmem net.ipv4.tcp_tw_reuse
|
3557
|
+
# busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default
|
3558
|
+
# net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn
|
3559
|
+
# net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.netfilter.
|
3560
|
+
# nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.
|
3561
|
+
# nf_conntrack_tcp_timeout_close_wait net.netfilter.
|
3562
|
+
# nf_conntrack_tcp_timeout_time_wait net.netfilter.
|
3563
|
+
# nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.
|
3564
|
+
# shmmni kernel.shmmax kernel.shmall vm.max_map_count
|
2506
3565
|
# Corresponds to the JSON property `sysctls`
|
2507
3566
|
# @return [Hash<String,String>]
|
2508
3567
|
attr_accessor :sysctls
|
@@ -2514,6 +3573,7 @@ module Google
|
|
2514
3573
|
# Update properties of this object
|
2515
3574
|
def update!(**args)
|
2516
3575
|
@cgroup_mode = args[:cgroup_mode] if args.key?(:cgroup_mode)
|
3576
|
+
@hugepages = args[:hugepages] if args.key?(:hugepages)
|
2517
3577
|
@sysctls = args[:sysctls] if args.key?(:sysctls)
|
2518
3578
|
end
|
2519
3579
|
end
|
@@ -2618,15 +3678,22 @@ module Google
|
|
2618
3678
|
end
|
2619
3679
|
|
2620
3680
|
# LocalNvmeSsdBlockConfig contains configuration for using raw-block local NVMe
|
2621
|
-
#
|
3681
|
+
# SSDs
|
2622
3682
|
class LocalNvmeSsdBlockConfig
|
2623
3683
|
include Google::Apis::Core::Hashable
|
2624
3684
|
|
2625
|
-
#
|
2626
|
-
#
|
2627
|
-
# disks
|
2628
|
-
#
|
2629
|
-
#
|
3685
|
+
# Number of local NVMe SSDs to use. The limit for this value is dependent upon
|
3686
|
+
# the maximum number of disk available on a machine per zone. See: https://cloud.
|
3687
|
+
# google.com/compute/docs/disks/local-ssd for more information. A zero (or unset)
|
3688
|
+
# value has different meanings depending on machine type being used: 1. For pre-
|
3689
|
+
# Gen3 machines, which support flexible numbers of local ssds, zero (or unset)
|
3690
|
+
# means to disable using local SSDs as ephemeral storage. 2. For Gen3 machines
|
3691
|
+
# which dictate a specific number of local ssds, zero (or unset) means to use
|
3692
|
+
# the default number of local ssds that goes with that machine type. For example,
|
3693
|
+
# for a c3-standard-8-lssd machine, 2 local ssds would be provisioned. For c3-
|
3694
|
+
# standard-8 (which doesn't support local ssds), 0 will be provisioned. See
|
3695
|
+
# https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds
|
3696
|
+
# for more info.
|
2630
3697
|
# Corresponds to the JSON property `localSsdCount`
|
2631
3698
|
# @return [Fixnum]
|
2632
3699
|
attr_accessor :local_ssd_count
|
@@ -2804,8 +3871,8 @@ module Google
|
|
2804
3871
|
class MasterAuth
|
2805
3872
|
include Google::Apis::Core::Hashable
|
2806
3873
|
|
2807
|
-
#
|
2808
|
-
#
|
3874
|
+
# Output only. Base64-encoded public certificate used by clients to authenticate
|
3875
|
+
# to the cluster endpoint. Issued only if client_certificate_config is set.
|
2809
3876
|
# Corresponds to the JSON property `clientCertificate`
|
2810
3877
|
# @return [String]
|
2811
3878
|
attr_accessor :client_certificate
|
@@ -2815,13 +3882,13 @@ module Google
|
|
2815
3882
|
# @return [Google::Apis::ContainerV1::ClientCertificateConfig]
|
2816
3883
|
attr_accessor :client_certificate_config
|
2817
3884
|
|
2818
|
-
#
|
2819
|
-
#
|
3885
|
+
# Output only. Base64-encoded private key used by clients to authenticate to the
|
3886
|
+
# cluster endpoint.
|
2820
3887
|
# Corresponds to the JSON property `clientKey`
|
2821
3888
|
# @return [String]
|
2822
3889
|
attr_accessor :client_key
|
2823
3890
|
|
2824
|
-
#
|
3891
|
+
# Output only. Base64-encoded public certificate that is the root of trust for
|
2825
3892
|
# the cluster.
|
2826
3893
|
# Corresponds to the JSON property `clusterCaCertificate`
|
2827
3894
|
# @return [String]
|
@@ -2883,12 +3950,18 @@ module Google
|
|
2883
3950
|
attr_accessor :enabled
|
2884
3951
|
alias_method :enabled?, :enabled
|
2885
3952
|
|
2886
|
-
# Whether master is
|
3953
|
+
# Whether master is accessible via Google Compute Engine Public IP addresses.
|
2887
3954
|
# Corresponds to the JSON property `gcpPublicCidrsAccessEnabled`
|
2888
3955
|
# @return [Boolean]
|
2889
3956
|
attr_accessor :gcp_public_cidrs_access_enabled
|
2890
3957
|
alias_method :gcp_public_cidrs_access_enabled?, :gcp_public_cidrs_access_enabled
|
2891
3958
|
|
3959
|
+
# Whether master authorized networks is enforced on private endpoint or not.
|
3960
|
+
# Corresponds to the JSON property `privateEndpointEnforcementEnabled`
|
3961
|
+
# @return [Boolean]
|
3962
|
+
attr_accessor :private_endpoint_enforcement_enabled
|
3963
|
+
alias_method :private_endpoint_enforcement_enabled?, :private_endpoint_enforcement_enabled
|
3964
|
+
|
2892
3965
|
def initialize(**args)
|
2893
3966
|
update!(**args)
|
2894
3967
|
end
|
@@ -2898,6 +3971,7 @@ module Google
|
|
2898
3971
|
@cidr_blocks = args[:cidr_blocks] if args.key?(:cidr_blocks)
|
2899
3972
|
@enabled = args[:enabled] if args.key?(:enabled)
|
2900
3973
|
@gcp_public_cidrs_access_enabled = args[:gcp_public_cidrs_access_enabled] if args.key?(:gcp_public_cidrs_access_enabled)
|
3974
|
+
@private_endpoint_enforcement_enabled = args[:private_endpoint_enforcement_enabled] if args.key?(:private_endpoint_enforcement_enabled)
|
2901
3975
|
end
|
2902
3976
|
end
|
2903
3977
|
|
@@ -3005,6 +4079,12 @@ module Google
|
|
3005
4079
|
class MonitoringConfig
|
3006
4080
|
include Google::Apis::Core::Hashable
|
3007
4081
|
|
4082
|
+
# AdvancedDatapathObservabilityConfig specifies configuration of observability
|
4083
|
+
# features of advanced datapath.
|
4084
|
+
# Corresponds to the JSON property `advancedDatapathObservabilityConfig`
|
4085
|
+
# @return [Google::Apis::ContainerV1::AdvancedDatapathObservabilityConfig]
|
4086
|
+
attr_accessor :advanced_datapath_observability_config
|
4087
|
+
|
3008
4088
|
# MonitoringComponentConfig is cluster monitoring component configuration.
|
3009
4089
|
# Corresponds to the JSON property `componentConfig`
|
3010
4090
|
# @return [Google::Apis::ContainerV1::MonitoringComponentConfig]
|
@@ -3022,6 +4102,7 @@ module Google
|
|
3022
4102
|
|
3023
4103
|
# Update properties of this object
|
3024
4104
|
def update!(**args)
|
4105
|
+
@advanced_datapath_observability_config = args[:advanced_datapath_observability_config] if args.key?(:advanced_datapath_observability_config)
|
3025
4106
|
@component_config = args[:component_config] if args.key?(:component_config)
|
3026
4107
|
@managed_prometheus_config = args[:managed_prometheus_config] if args.key?(:managed_prometheus_config)
|
3027
4108
|
end
|
@@ -3037,17 +4118,44 @@ module Google
|
|
3037
4118
|
# @return [String]
|
3038
4119
|
attr_accessor :datapath_provider
|
3039
4120
|
|
4121
|
+
# Controls whether by default nodes have private IP addresses only. It is
|
4122
|
+
# invalid to specify both PrivateClusterConfig.enablePrivateNodes and this field
|
4123
|
+
# at the same time. To update the default setting, use ClusterUpdate.
|
4124
|
+
# desired_default_enable_private_nodes
|
4125
|
+
# Corresponds to the JSON property `defaultEnablePrivateNodes`
|
4126
|
+
# @return [Boolean]
|
4127
|
+
attr_accessor :default_enable_private_nodes
|
4128
|
+
alias_method :default_enable_private_nodes?, :default_enable_private_nodes
|
4129
|
+
|
3040
4130
|
# DefaultSnatStatus contains the desired state of whether default sNAT should be
|
3041
4131
|
# disabled on the cluster.
|
3042
4132
|
# Corresponds to the JSON property `defaultSnatStatus`
|
3043
4133
|
# @return [Google::Apis::ContainerV1::DefaultSnatStatus]
|
3044
4134
|
attr_accessor :default_snat_status
|
3045
4135
|
|
4136
|
+
# Disable L4 load balancer VPC firewalls to enable firewall policies.
|
4137
|
+
# Corresponds to the JSON property `disableL4LbFirewallReconciliation`
|
4138
|
+
# @return [Boolean]
|
4139
|
+
attr_accessor :disable_l4_lb_firewall_reconciliation
|
4140
|
+
alias_method :disable_l4_lb_firewall_reconciliation?, :disable_l4_lb_firewall_reconciliation
|
4141
|
+
|
3046
4142
|
# DNSConfig contains the desired set of options for configuring clusterDNS.
|
3047
4143
|
# Corresponds to the JSON property `dnsConfig`
|
3048
4144
|
# @return [Google::Apis::ContainerV1::DnsConfig]
|
3049
4145
|
attr_accessor :dns_config
|
3050
4146
|
|
4147
|
+
# Whether CiliumClusterwideNetworkPolicy is enabled on this cluster.
|
4148
|
+
# Corresponds to the JSON property `enableCiliumClusterwideNetworkPolicy`
|
4149
|
+
# @return [Boolean]
|
4150
|
+
attr_accessor :enable_cilium_clusterwide_network_policy
|
4151
|
+
alias_method :enable_cilium_clusterwide_network_policy?, :enable_cilium_clusterwide_network_policy
|
4152
|
+
|
4153
|
+
# Whether FQDN Network Policy is enabled on this cluster.
|
4154
|
+
# Corresponds to the JSON property `enableFqdnNetworkPolicy`
|
4155
|
+
# @return [Boolean]
|
4156
|
+
attr_accessor :enable_fqdn_network_policy
|
4157
|
+
alias_method :enable_fqdn_network_policy?, :enable_fqdn_network_policy
|
4158
|
+
|
3051
4159
|
# Whether Intra-node visibility is enabled for this cluster. This makes same
|
3052
4160
|
# node pod to pod traffic visible for VPC network.
|
3053
4161
|
# Corresponds to the JSON property `enableIntraNodeVisibility`
|
@@ -3061,18 +4169,35 @@ module Google
|
|
3061
4169
|
attr_accessor :enable_l4ilb_subsetting
|
3062
4170
|
alias_method :enable_l4ilb_subsetting?, :enable_l4ilb_subsetting
|
3063
4171
|
|
4172
|
+
# Whether multi-networking is enabled for this cluster.
|
4173
|
+
# Corresponds to the JSON property `enableMultiNetworking`
|
4174
|
+
# @return [Boolean]
|
4175
|
+
attr_accessor :enable_multi_networking
|
4176
|
+
alias_method :enable_multi_networking?, :enable_multi_networking
|
4177
|
+
|
3064
4178
|
# GatewayAPIConfig contains the desired config of Gateway API on this cluster.
|
3065
4179
|
# Corresponds to the JSON property `gatewayApiConfig`
|
3066
4180
|
# @return [Google::Apis::ContainerV1::GatewayApiConfig]
|
3067
4181
|
attr_accessor :gateway_api_config
|
3068
4182
|
|
3069
|
-
#
|
4183
|
+
# Specify the details of in-transit encryption. Now named inter-node transparent
|
4184
|
+
# encryption.
|
4185
|
+
# Corresponds to the JSON property `inTransitEncryptionConfig`
|
4186
|
+
# @return [String]
|
4187
|
+
attr_accessor :in_transit_encryption_config
|
4188
|
+
|
4189
|
+
# Output only. The relative name of the Google Compute Engine [network](https://
|
3070
4190
|
# cloud.google.com/compute/docs/networks-and-firewalls#networks) to which the
|
3071
4191
|
# cluster is connected. Example: projects/my-project/global/networks/my-network
|
3072
4192
|
# Corresponds to the JSON property `network`
|
3073
4193
|
# @return [String]
|
3074
4194
|
attr_accessor :network
|
3075
4195
|
|
4196
|
+
# Configuration of network bandwidth tiers
|
4197
|
+
# Corresponds to the JSON property `networkPerformanceConfig`
|
4198
|
+
# @return [Google::Apis::ContainerV1::ClusterNetworkPerformanceConfig]
|
4199
|
+
attr_accessor :network_performance_config
|
4200
|
+
|
3076
4201
|
# The desired state of IPv6 connectivity to Google Services. By default, no
|
3077
4202
|
# private IPv6 access to or from Google Services (all access will be via IPv4)
|
3078
4203
|
# Corresponds to the JSON property `privateIpv6GoogleAccess`
|
@@ -3098,12 +4223,19 @@ module Google
|
|
3098
4223
|
# Update properties of this object
|
3099
4224
|
def update!(**args)
|
3100
4225
|
@datapath_provider = args[:datapath_provider] if args.key?(:datapath_provider)
|
4226
|
+
@default_enable_private_nodes = args[:default_enable_private_nodes] if args.key?(:default_enable_private_nodes)
|
3101
4227
|
@default_snat_status = args[:default_snat_status] if args.key?(:default_snat_status)
|
4228
|
+
@disable_l4_lb_firewall_reconciliation = args[:disable_l4_lb_firewall_reconciliation] if args.key?(:disable_l4_lb_firewall_reconciliation)
|
3102
4229
|
@dns_config = args[:dns_config] if args.key?(:dns_config)
|
4230
|
+
@enable_cilium_clusterwide_network_policy = args[:enable_cilium_clusterwide_network_policy] if args.key?(:enable_cilium_clusterwide_network_policy)
|
4231
|
+
@enable_fqdn_network_policy = args[:enable_fqdn_network_policy] if args.key?(:enable_fqdn_network_policy)
|
3103
4232
|
@enable_intra_node_visibility = args[:enable_intra_node_visibility] if args.key?(:enable_intra_node_visibility)
|
3104
4233
|
@enable_l4ilb_subsetting = args[:enable_l4ilb_subsetting] if args.key?(:enable_l4ilb_subsetting)
|
4234
|
+
@enable_multi_networking = args[:enable_multi_networking] if args.key?(:enable_multi_networking)
|
3105
4235
|
@gateway_api_config = args[:gateway_api_config] if args.key?(:gateway_api_config)
|
4236
|
+
@in_transit_encryption_config = args[:in_transit_encryption_config] if args.key?(:in_transit_encryption_config)
|
3106
4237
|
@network = args[:network] if args.key?(:network)
|
4238
|
+
@network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
|
3107
4239
|
@private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
|
3108
4240
|
@service_external_ips_config = args[:service_external_ips_config] if args.key?(:service_external_ips_config)
|
3109
4241
|
@subnetwork = args[:subnetwork] if args.key?(:subnetwork)
|
@@ -3183,10 +4315,41 @@ module Google
|
|
3183
4315
|
class NetworkTags
|
3184
4316
|
include Google::Apis::Core::Hashable
|
3185
4317
|
|
3186
|
-
# List of network tags.
|
3187
|
-
# Corresponds to the JSON property `tags`
|
4318
|
+
# List of network tags.
|
4319
|
+
# Corresponds to the JSON property `tags`
|
4320
|
+
# @return [Array<String>]
|
4321
|
+
attr_accessor :tags
|
4322
|
+
|
4323
|
+
def initialize(**args)
|
4324
|
+
update!(**args)
|
4325
|
+
end
|
4326
|
+
|
4327
|
+
# Update properties of this object
|
4328
|
+
def update!(**args)
|
4329
|
+
@tags = args[:tags] if args.key?(:tags)
|
4330
|
+
end
|
4331
|
+
end
|
4332
|
+
|
4333
|
+
# Specifies the NodeAffinity key, values, and affinity operator according to [
|
4334
|
+
# shared sole tenant node group affinities](https://cloud.google.com/compute/
|
4335
|
+
# docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity).
|
4336
|
+
class NodeAffinity
|
4337
|
+
include Google::Apis::Core::Hashable
|
4338
|
+
|
4339
|
+
# Key for NodeAffinity.
|
4340
|
+
# Corresponds to the JSON property `key`
|
4341
|
+
# @return [String]
|
4342
|
+
attr_accessor :key
|
4343
|
+
|
4344
|
+
# Operator for NodeAffinity.
|
4345
|
+
# Corresponds to the JSON property `operator`
|
4346
|
+
# @return [String]
|
4347
|
+
attr_accessor :operator
|
4348
|
+
|
4349
|
+
# Values for NodeAffinity.
|
4350
|
+
# Corresponds to the JSON property `values`
|
3188
4351
|
# @return [Array<String>]
|
3189
|
-
attr_accessor :
|
4352
|
+
attr_accessor :values
|
3190
4353
|
|
3191
4354
|
def initialize(**args)
|
3192
4355
|
update!(**args)
|
@@ -3194,7 +4357,9 @@ module Google
|
|
3194
4357
|
|
3195
4358
|
# Update properties of this object
|
3196
4359
|
def update!(**args)
|
3197
|
-
@
|
4360
|
+
@key = args[:key] if args.key?(:key)
|
4361
|
+
@operator = args[:operator] if args.key?(:operator)
|
4362
|
+
@values = args[:values] if args.key?(:values)
|
3198
4363
|
end
|
3199
4364
|
end
|
3200
4365
|
|
@@ -3230,6 +4395,11 @@ module Google
|
|
3230
4395
|
# @return [Google::Apis::ContainerV1::ConfidentialNodes]
|
3231
4396
|
attr_accessor :confidential_nodes
|
3232
4397
|
|
4398
|
+
# ContainerdConfig contains configuration to customize containerd.
|
4399
|
+
# Corresponds to the JSON property `containerdConfig`
|
4400
|
+
# @return [Google::Apis::ContainerV1::ContainerdConfig]
|
4401
|
+
attr_accessor :containerd_config
|
4402
|
+
|
3233
4403
|
# Size of the disk attached to each node, specified in GB. The smallest allowed
|
3234
4404
|
# disk size is 10GB. If unspecified, the default disk size is 100GB.
|
3235
4405
|
# Corresponds to the JSON property `diskSizeGb`
|
@@ -3242,8 +4412,22 @@ module Google
|
|
3242
4412
|
# @return [String]
|
3243
4413
|
attr_accessor :disk_type
|
3244
4414
|
|
4415
|
+
# Output only. effective_cgroup_mode is the cgroup mode actually used by the
|
4416
|
+
# node pool. It is determined by the cgroup mode specified in the
|
4417
|
+
# LinuxNodeConfig or the default cgroup mode based on the cluster creation
|
4418
|
+
# version.
|
4419
|
+
# Corresponds to the JSON property `effectiveCgroupMode`
|
4420
|
+
# @return [String]
|
4421
|
+
attr_accessor :effective_cgroup_mode
|
4422
|
+
|
4423
|
+
# Optional. Reserved for future use.
|
4424
|
+
# Corresponds to the JSON property `enableConfidentialStorage`
|
4425
|
+
# @return [Boolean]
|
4426
|
+
attr_accessor :enable_confidential_storage
|
4427
|
+
alias_method :enable_confidential_storage?, :enable_confidential_storage
|
4428
|
+
|
3245
4429
|
# EphemeralStorageLocalSsdConfig contains configuration for the node ephemeral
|
3246
|
-
# storage using Local
|
4430
|
+
# storage using Local SSDs.
|
3247
4431
|
# Corresponds to the JSON property `ephemeralStorageLocalSsdConfig`
|
3248
4432
|
# @return [Google::Apis::ContainerV1::EphemeralStorageLocalSsdConfig]
|
3249
4433
|
attr_accessor :ephemeral_storage_local_ssd_config
|
@@ -3265,7 +4449,8 @@ module Google
|
|
3265
4449
|
attr_accessor :gvnic
|
3266
4450
|
|
3267
4451
|
# The image type to use for this node. Note that for a given image type, the
|
3268
|
-
# latest version of it will be used.
|
4452
|
+
# latest version of it will be used. Please see https://cloud.google.com/
|
4453
|
+
# kubernetes-engine/docs/concepts/node-images for available image types.
|
3269
4454
|
# Corresponds to the JSON property `imageType`
|
3270
4455
|
# @return [String]
|
3271
4456
|
attr_accessor :image_type
|
@@ -3292,7 +4477,7 @@ module Google
|
|
3292
4477
|
attr_accessor :linux_node_config
|
3293
4478
|
|
3294
4479
|
# LocalNvmeSsdBlockConfig contains configuration for using raw-block local NVMe
|
3295
|
-
#
|
4480
|
+
# SSDs
|
3296
4481
|
# Corresponds to the JSON property `localNvmeSsdBlockConfig`
|
3297
4482
|
# @return [Google::Apis::ContainerV1::LocalNvmeSsdBlockConfig]
|
3298
4483
|
attr_accessor :local_nvme_ssd_block_config
|
@@ -3305,6 +4490,12 @@ module Google
|
|
3305
4490
|
# @return [Fixnum]
|
3306
4491
|
attr_accessor :local_ssd_count
|
3307
4492
|
|
4493
|
+
# Specifies which method should be used for encrypting the Local SSDs attached
|
4494
|
+
# to the node.
|
4495
|
+
# Corresponds to the JSON property `localSsdEncryptionMode`
|
4496
|
+
# @return [String]
|
4497
|
+
attr_accessor :local_ssd_encryption_mode
|
4498
|
+
|
3308
4499
|
# NodePoolLoggingConfig specifies logging configuration for nodepools.
|
3309
4500
|
# Corresponds to the JSON property `loggingConfig`
|
3310
4501
|
# @return [Google::Apis::ContainerV1::NodePoolLoggingConfig]
|
@@ -3317,6 +4508,12 @@ module Google
|
|
3317
4508
|
# @return [String]
|
3318
4509
|
attr_accessor :machine_type
|
3319
4510
|
|
4511
|
+
# The maximum duration for the nodes to exist. If unspecified, the nodes can
|
4512
|
+
# exist indefinitely.
|
4513
|
+
# Corresponds to the JSON property `maxRunDuration`
|
4514
|
+
# @return [String]
|
4515
|
+
attr_accessor :max_run_duration
|
4516
|
+
|
3320
4517
|
# The metadata key/value pairs assigned to instances in the cluster. Keys must
|
3321
4518
|
# conform to the regexp `[a-zA-Z0-9-_]+` and be less than 128 bytes in length.
|
3322
4519
|
# These are reflected as part of a URL in the metadata server. Additionally, to
|
@@ -3386,11 +4583,31 @@ module Google
|
|
3386
4583
|
# @return [Hash<String,String>]
|
3387
4584
|
attr_accessor :resource_labels
|
3388
4585
|
|
4586
|
+
# A map of resource manager tag keys and values to be attached to the nodes for
|
4587
|
+
# managing Compute Engine firewalls using Network Firewall Policies. Tags must
|
4588
|
+
# be according to specifications in https://cloud.google.com/vpc/docs/tags-
|
4589
|
+
# firewalls-overview#specifications. A maximum of 5 tag key-value pairs can be
|
4590
|
+
# specified. Existing tags will be replaced with new values.
|
4591
|
+
# Corresponds to the JSON property `resourceManagerTags`
|
4592
|
+
# @return [Google::Apis::ContainerV1::ResourceManagerTags]
|
4593
|
+
attr_accessor :resource_manager_tags
|
4594
|
+
|
3389
4595
|
# SandboxConfig contains configurations of the sandbox to use for the node.
|
3390
4596
|
# Corresponds to the JSON property `sandboxConfig`
|
3391
4597
|
# @return [Google::Apis::ContainerV1::SandboxConfig]
|
3392
4598
|
attr_accessor :sandbox_config
|
3393
4599
|
|
4600
|
+
# SecondaryBootDiskUpdateStrategy is a placeholder which will be extended in the
|
4601
|
+
# future to define different options for updating secondary boot disks.
|
4602
|
+
# Corresponds to the JSON property `secondaryBootDiskUpdateStrategy`
|
4603
|
+
# @return [Google::Apis::ContainerV1::SecondaryBootDiskUpdateStrategy]
|
4604
|
+
attr_accessor :secondary_boot_disk_update_strategy
|
4605
|
+
|
4606
|
+
# List of secondary boot disks attached to the nodes.
|
4607
|
+
# Corresponds to the JSON property `secondaryBootDisks`
|
4608
|
+
# @return [Array<Google::Apis::ContainerV1::SecondaryBootDisk>]
|
4609
|
+
attr_accessor :secondary_boot_disks
|
4610
|
+
|
3394
4611
|
# The Google Cloud Platform Service Account to be used by the node VMs. Specify
|
3395
4612
|
# the email address of the Service Account; otherwise, if no Service Account is
|
3396
4613
|
# specified, the "default" service account is used.
|
@@ -3403,6 +4620,12 @@ module Google
|
|
3403
4620
|
# @return [Google::Apis::ContainerV1::ShieldedInstanceConfig]
|
3404
4621
|
attr_accessor :shielded_instance_config
|
3405
4622
|
|
4623
|
+
# SoleTenantConfig contains the NodeAffinities to specify what shared sole
|
4624
|
+
# tenant node groups should back the node pool.
|
4625
|
+
# Corresponds to the JSON property `soleTenantConfig`
|
4626
|
+
# @return [Google::Apis::ContainerV1::SoleTenantConfig]
|
4627
|
+
attr_accessor :sole_tenant_config
|
4628
|
+
|
3406
4629
|
# Spot flag for enabling Spot VM, which is a rebrand of the existing preemptible
|
3407
4630
|
# flag.
|
3408
4631
|
# Corresponds to the JSON property `spot`
|
@@ -3410,6 +4633,11 @@ module Google
|
|
3410
4633
|
attr_accessor :spot
|
3411
4634
|
alias_method :spot?, :spot
|
3412
4635
|
|
4636
|
+
# List of Storage Pools where boot disks are provisioned.
|
4637
|
+
# Corresponds to the JSON property `storagePools`
|
4638
|
+
# @return [Array<String>]
|
4639
|
+
attr_accessor :storage_pools
|
4640
|
+
|
3413
4641
|
# The list of instance tags applied to all nodes. Tags are used to identify
|
3414
4642
|
# valid sources or targets for network firewalls and are specified by the client
|
3415
4643
|
# during cluster or node pool creation. Each tag within the list must comply
|
@@ -3448,8 +4676,11 @@ module Google
|
|
3448
4676
|
@advanced_machine_features = args[:advanced_machine_features] if args.key?(:advanced_machine_features)
|
3449
4677
|
@boot_disk_kms_key = args[:boot_disk_kms_key] if args.key?(:boot_disk_kms_key)
|
3450
4678
|
@confidential_nodes = args[:confidential_nodes] if args.key?(:confidential_nodes)
|
4679
|
+
@containerd_config = args[:containerd_config] if args.key?(:containerd_config)
|
3451
4680
|
@disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
|
3452
4681
|
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
4682
|
+
@effective_cgroup_mode = args[:effective_cgroup_mode] if args.key?(:effective_cgroup_mode)
|
4683
|
+
@enable_confidential_storage = args[:enable_confidential_storage] if args.key?(:enable_confidential_storage)
|
3453
4684
|
@ephemeral_storage_local_ssd_config = args[:ephemeral_storage_local_ssd_config] if args.key?(:ephemeral_storage_local_ssd_config)
|
3454
4685
|
@fast_socket = args[:fast_socket] if args.key?(:fast_socket)
|
3455
4686
|
@gcfs_config = args[:gcfs_config] if args.key?(:gcfs_config)
|
@@ -3460,8 +4691,10 @@ module Google
|
|
3460
4691
|
@linux_node_config = args[:linux_node_config] if args.key?(:linux_node_config)
|
3461
4692
|
@local_nvme_ssd_block_config = args[:local_nvme_ssd_block_config] if args.key?(:local_nvme_ssd_block_config)
|
3462
4693
|
@local_ssd_count = args[:local_ssd_count] if args.key?(:local_ssd_count)
|
4694
|
+
@local_ssd_encryption_mode = args[:local_ssd_encryption_mode] if args.key?(:local_ssd_encryption_mode)
|
3463
4695
|
@logging_config = args[:logging_config] if args.key?(:logging_config)
|
3464
4696
|
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
4697
|
+
@max_run_duration = args[:max_run_duration] if args.key?(:max_run_duration)
|
3465
4698
|
@metadata = args[:metadata] if args.key?(:metadata)
|
3466
4699
|
@min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
|
3467
4700
|
@node_group = args[:node_group] if args.key?(:node_group)
|
@@ -3469,10 +4702,15 @@ module Google
|
|
3469
4702
|
@preemptible = args[:preemptible] if args.key?(:preemptible)
|
3470
4703
|
@reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
|
3471
4704
|
@resource_labels = args[:resource_labels] if args.key?(:resource_labels)
|
4705
|
+
@resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
|
3472
4706
|
@sandbox_config = args[:sandbox_config] if args.key?(:sandbox_config)
|
4707
|
+
@secondary_boot_disk_update_strategy = args[:secondary_boot_disk_update_strategy] if args.key?(:secondary_boot_disk_update_strategy)
|
4708
|
+
@secondary_boot_disks = args[:secondary_boot_disks] if args.key?(:secondary_boot_disks)
|
3473
4709
|
@service_account = args[:service_account] if args.key?(:service_account)
|
3474
4710
|
@shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
|
4711
|
+
@sole_tenant_config = args[:sole_tenant_config] if args.key?(:sole_tenant_config)
|
3475
4712
|
@spot = args[:spot] if args.key?(:spot)
|
4713
|
+
@storage_pools = args[:storage_pools] if args.key?(:storage_pools)
|
3476
4714
|
@tags = args[:tags] if args.key?(:tags)
|
3477
4715
|
@taints = args[:taints] if args.key?(:taints)
|
3478
4716
|
@windows_node_config = args[:windows_node_config] if args.key?(:windows_node_config)
|
@@ -3484,6 +4722,11 @@ module Google
|
|
3484
4722
|
class NodeConfigDefaults
|
3485
4723
|
include Google::Apis::Core::Hashable
|
3486
4724
|
|
4725
|
+
# ContainerdConfig contains configuration to customize containerd.
|
4726
|
+
# Corresponds to the JSON property `containerdConfig`
|
4727
|
+
# @return [Google::Apis::ContainerV1::ContainerdConfig]
|
4728
|
+
attr_accessor :containerd_config
|
4729
|
+
|
3487
4730
|
# GcfsConfig contains configurations of Google Container File System (image
|
3488
4731
|
# streaming).
|
3489
4732
|
# Corresponds to the JSON property `gcfsConfig`
|
@@ -3495,14 +4738,21 @@ module Google
|
|
3495
4738
|
# @return [Google::Apis::ContainerV1::NodePoolLoggingConfig]
|
3496
4739
|
attr_accessor :logging_config
|
3497
4740
|
|
4741
|
+
# Node kubelet configs.
|
4742
|
+
# Corresponds to the JSON property `nodeKubeletConfig`
|
4743
|
+
# @return [Google::Apis::ContainerV1::NodeKubeletConfig]
|
4744
|
+
attr_accessor :node_kubelet_config
|
4745
|
+
|
3498
4746
|
def initialize(**args)
|
3499
4747
|
update!(**args)
|
3500
4748
|
end
|
3501
4749
|
|
3502
4750
|
# Update properties of this object
|
3503
4751
|
def update!(**args)
|
4752
|
+
@containerd_config = args[:containerd_config] if args.key?(:containerd_config)
|
3504
4753
|
@gcfs_config = args[:gcfs_config] if args.key?(:gcfs_config)
|
3505
4754
|
@logging_config = args[:logging_config] if args.key?(:logging_config)
|
4755
|
+
@node_kubelet_config = args[:node_kubelet_config] if args.key?(:node_kubelet_config)
|
3506
4756
|
end
|
3507
4757
|
end
|
3508
4758
|
|
@@ -3510,6 +4760,37 @@ module Google
|
|
3510
4760
|
class NodeKubeletConfig
|
3511
4761
|
include Google::Apis::Core::Hashable
|
3512
4762
|
|
4763
|
+
# Optional. Defines a comma-separated allowlist of unsafe sysctls or sysctl
|
4764
|
+
# patterns (ending in `*`). The unsafe namespaced sysctl groups are `kernel.shm*`
|
4765
|
+
# , `kernel.msg*`, `kernel.sem`, `fs.mqueue.*`, and `net.*`. Leaving this
|
4766
|
+
# allowlist empty means they cannot be set on Pods. To allow certain sysctls or
|
4767
|
+
# sysctl patterns to be set on Pods, list them separated by commas. For example:
|
4768
|
+
# `kernel.msg*,net.ipv4.route.min_pmtu`. See https://kubernetes.io/docs/tasks/
|
4769
|
+
# administer-cluster/sysctl-cluster/ for more details.
|
4770
|
+
# Corresponds to the JSON property `allowedUnsafeSysctls`
|
4771
|
+
# @return [Array<String>]
|
4772
|
+
attr_accessor :allowed_unsafe_sysctls
|
4773
|
+
|
4774
|
+
# Optional. Defines the maximum number of container log files that can be
|
4775
|
+
# present for a container. See https://kubernetes.io/docs/concepts/cluster-
|
4776
|
+
# administration/logging/#log-rotation The value must be an integer between 2
|
4777
|
+
# and 10, inclusive. The default value is 5 if unspecified.
|
4778
|
+
# Corresponds to the JSON property `containerLogMaxFiles`
|
4779
|
+
# @return [Fixnum]
|
4780
|
+
attr_accessor :container_log_max_files
|
4781
|
+
|
4782
|
+
# Optional. Defines the maximum size of the container log file before it is
|
4783
|
+
# rotated. See https://kubernetes.io/docs/concepts/cluster-administration/
|
4784
|
+
# logging/#log-rotation Valid format is positive number + unit, e.g. 100Ki, 10Mi.
|
4785
|
+
# Valid units are Ki, Mi, Gi. The value must be between 10Mi and 500Mi,
|
4786
|
+
# inclusive. Note that the total container log size (container_log_max_size *
|
4787
|
+
# container_log_max_files) cannot exceed 1% of the total storage of the node, to
|
4788
|
+
# avoid disk pressure caused by log files. The default value is 10Mi if
|
4789
|
+
# unspecified.
|
4790
|
+
# Corresponds to the JSON property `containerLogMaxSize`
|
4791
|
+
# @return [String]
|
4792
|
+
attr_accessor :container_log_max_size
|
4793
|
+
|
3513
4794
|
# Enable CPU CFS quota enforcement for containers that specify CPU limits. This
|
3514
4795
|
# option is enabled by default which makes kubelet use CFS quota (https://www.
|
3515
4796
|
# kernel.org/doc/Documentation/scheduler/sched-bwc.txt) to enforce container CPU
|
@@ -3540,6 +4821,50 @@ module Google
|
|
3540
4821
|
# @return [String]
|
3541
4822
|
attr_accessor :cpu_manager_policy
|
3542
4823
|
|
4824
|
+
# Optional. Defines the percent of disk usage after which image garbage
|
4825
|
+
# collection is always run. The percent is calculated as this field value out of
|
4826
|
+
# 100. The value must be between 10 and 85, inclusive and greater than
|
4827
|
+
# image_gc_low_threshold_percent. The default value is 85 if unspecified.
|
4828
|
+
# Corresponds to the JSON property `imageGcHighThresholdPercent`
|
4829
|
+
# @return [Fixnum]
|
4830
|
+
attr_accessor :image_gc_high_threshold_percent
|
4831
|
+
|
4832
|
+
# Optional. Defines the percent of disk usage before which image garbage
|
4833
|
+
# collection is never run. Lowest disk usage to garbage collect to. The percent
|
4834
|
+
# is calculated as this field value out of 100. The value must be between 10 and
|
4835
|
+
# 85, inclusive and smaller than image_gc_high_threshold_percent. The default
|
4836
|
+
# value is 80 if unspecified.
|
4837
|
+
# Corresponds to the JSON property `imageGcLowThresholdPercent`
|
4838
|
+
# @return [Fixnum]
|
4839
|
+
attr_accessor :image_gc_low_threshold_percent
|
4840
|
+
|
4841
|
+
# Optional. Defines the maximum age an image can be unused before it is garbage
|
4842
|
+
# collected. The string must be a sequence of decimal numbers, each with
|
4843
|
+
# optional fraction and a unit suffix, such as "300s", "1.5h", and "2h45m".
|
4844
|
+
# Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". The value must
|
4845
|
+
# be a positive duration greater than image_minimum_gc_age or "0s". The default
|
4846
|
+
# value is "0s" if unspecified, which disables this field, meaning images won't
|
4847
|
+
# be garbage collected based on being unused for too long.
|
4848
|
+
# Corresponds to the JSON property `imageMaximumGcAge`
|
4849
|
+
# @return [String]
|
4850
|
+
attr_accessor :image_maximum_gc_age
|
4851
|
+
|
4852
|
+
# Optional. Defines the minimum age for an unused image before it is garbage
|
4853
|
+
# collected. The string must be a sequence of decimal numbers, each with
|
4854
|
+
# optional fraction and a unit suffix, such as "300s", "1.5h", and "2h45m".
|
4855
|
+
# Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". The value must
|
4856
|
+
# be a positive duration less than or equal to 2 minutes. The default value is "
|
4857
|
+
# 2m0s" if unspecified.
|
4858
|
+
# Corresponds to the JSON property `imageMinimumGcAge`
|
4859
|
+
# @return [String]
|
4860
|
+
attr_accessor :image_minimum_gc_age
|
4861
|
+
|
4862
|
+
# Enable or disable Kubelet read only port.
|
4863
|
+
# Corresponds to the JSON property `insecureKubeletReadonlyPortEnabled`
|
4864
|
+
# @return [Boolean]
|
4865
|
+
attr_accessor :insecure_kubelet_readonly_port_enabled
|
4866
|
+
alias_method :insecure_kubelet_readonly_port_enabled?, :insecure_kubelet_readonly_port_enabled
|
4867
|
+
|
3543
4868
|
# Set the Pod PID limits. See https://kubernetes.io/docs/concepts/policy/pid-
|
3544
4869
|
# limiting/#pod-pid-limits Controls the maximum number of processes allowed to
|
3545
4870
|
# run in a pod. The value must be greater than or equal to 1024 and less than
|
@@ -3554,9 +4879,17 @@ module Google
|
|
3554
4879
|
|
3555
4880
|
# Update properties of this object
|
3556
4881
|
def update!(**args)
|
4882
|
+
@allowed_unsafe_sysctls = args[:allowed_unsafe_sysctls] if args.key?(:allowed_unsafe_sysctls)
|
4883
|
+
@container_log_max_files = args[:container_log_max_files] if args.key?(:container_log_max_files)
|
4884
|
+
@container_log_max_size = args[:container_log_max_size] if args.key?(:container_log_max_size)
|
3557
4885
|
@cpu_cfs_quota = args[:cpu_cfs_quota] if args.key?(:cpu_cfs_quota)
|
3558
4886
|
@cpu_cfs_quota_period = args[:cpu_cfs_quota_period] if args.key?(:cpu_cfs_quota_period)
|
3559
4887
|
@cpu_manager_policy = args[:cpu_manager_policy] if args.key?(:cpu_manager_policy)
|
4888
|
+
@image_gc_high_threshold_percent = args[:image_gc_high_threshold_percent] if args.key?(:image_gc_high_threshold_percent)
|
4889
|
+
@image_gc_low_threshold_percent = args[:image_gc_low_threshold_percent] if args.key?(:image_gc_low_threshold_percent)
|
4890
|
+
@image_maximum_gc_age = args[:image_maximum_gc_age] if args.key?(:image_maximum_gc_age)
|
4891
|
+
@image_minimum_gc_age = args[:image_minimum_gc_age] if args.key?(:image_minimum_gc_age)
|
4892
|
+
@insecure_kubelet_readonly_port_enabled = args[:insecure_kubelet_readonly_port_enabled] if args.key?(:insecure_kubelet_readonly_port_enabled)
|
3560
4893
|
@pod_pids_limit = args[:pod_pids_limit] if args.key?(:pod_pids_limit)
|
3561
4894
|
end
|
3562
4895
|
end
|
@@ -3625,6 +4958,18 @@ module Google
|
|
3625
4958
|
class NodeNetworkConfig
|
3626
4959
|
include Google::Apis::Core::Hashable
|
3627
4960
|
|
4961
|
+
# We specify the additional node networks for this node pool using this list.
|
4962
|
+
# Each node network corresponds to an additional interface
|
4963
|
+
# Corresponds to the JSON property `additionalNodeNetworkConfigs`
|
4964
|
+
# @return [Array<Google::Apis::ContainerV1::AdditionalNodeNetworkConfig>]
|
4965
|
+
attr_accessor :additional_node_network_configs
|
4966
|
+
|
4967
|
+
# We specify the additional pod networks for this node pool using this list.
|
4968
|
+
# Each pod network corresponds to an additional alias IP range for the node
|
4969
|
+
# Corresponds to the JSON property `additionalPodNetworkConfigs`
|
4970
|
+
# @return [Array<Google::Apis::ContainerV1::AdditionalPodNetworkConfig>]
|
4971
|
+
attr_accessor :additional_pod_network_configs
|
4972
|
+
|
3628
4973
|
# Input only. Whether to create a new range for pod IPs in this node pool.
|
3629
4974
|
# Defaults are provided for `pod_range` and `pod_ipv4_cidr_block` if they are
|
3630
4975
|
# not specified. If neither `create_pod_range` or `pod_range` are specified, the
|
@@ -3637,8 +4982,8 @@ module Google
|
|
3637
4982
|
alias_method :create_pod_range?, :create_pod_range
|
3638
4983
|
|
3639
4984
|
# Whether nodes have internal IP addresses only. If enable_private_nodes is not
|
3640
|
-
# specified, then the value is derived from
|
3641
|
-
#
|
4985
|
+
# specified, then the value is derived from Cluster.NetworkConfig.
|
4986
|
+
# default_enable_private_nodes
|
3642
4987
|
# Corresponds to the JSON property `enablePrivateNodes`
|
3643
4988
|
# @return [Boolean]
|
3644
4989
|
attr_accessor :enable_private_nodes
|
@@ -3649,6 +4994,11 @@ module Google
|
|
3649
4994
|
# @return [Google::Apis::ContainerV1::NetworkPerformanceConfig]
|
3650
4995
|
attr_accessor :network_performance_config
|
3651
4996
|
|
4997
|
+
# [PRIVATE FIELD] Config for pod CIDR size overprovisioning.
|
4998
|
+
# Corresponds to the JSON property `podCidrOverprovisionConfig`
|
4999
|
+
# @return [Google::Apis::ContainerV1::PodCidrOverprovisionConfig]
|
5000
|
+
attr_accessor :pod_cidr_overprovision_config
|
5001
|
+
|
3652
5002
|
# The IP address range for pod IPs in this node pool. Only applicable if `
|
3653
5003
|
# create_pod_range` is true. Set to blank to have a range chosen with the
|
3654
5004
|
# default size. Set to /netmask (e.g. `/14`) to have a range chosen with a
|
@@ -3660,6 +5010,13 @@ module Google
|
|
3660
5010
|
# @return [String]
|
3661
5011
|
attr_accessor :pod_ipv4_cidr_block
|
3662
5012
|
|
5013
|
+
# Output only. The utilization of the IPv4 range for the pod. The ratio is Usage/
|
5014
|
+
# [Total number of IPs in the secondary range], Usage=numNodes*numZones*
|
5015
|
+
# podIPsPerNode.
|
5016
|
+
# Corresponds to the JSON property `podIpv4RangeUtilization`
|
5017
|
+
# @return [Float]
|
5018
|
+
attr_accessor :pod_ipv4_range_utilization
|
5019
|
+
|
3663
5020
|
# The ID of the secondary range for pod IPs. If `create_pod_range` is true, this
|
3664
5021
|
# ID is used for the new range. If `create_pod_range` is false, uses an existing
|
3665
5022
|
# secondary range with this ID. Only applicable if `ip_allocation_policy.
|
@@ -3675,10 +5032,14 @@ module Google
|
|
3675
5032
|
|
3676
5033
|
# Update properties of this object
|
3677
5034
|
def update!(**args)
|
5035
|
+
@additional_node_network_configs = args[:additional_node_network_configs] if args.key?(:additional_node_network_configs)
|
5036
|
+
@additional_pod_network_configs = args[:additional_pod_network_configs] if args.key?(:additional_pod_network_configs)
|
3678
5037
|
@create_pod_range = args[:create_pod_range] if args.key?(:create_pod_range)
|
3679
5038
|
@enable_private_nodes = args[:enable_private_nodes] if args.key?(:enable_private_nodes)
|
3680
5039
|
@network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
|
5040
|
+
@pod_cidr_overprovision_config = args[:pod_cidr_overprovision_config] if args.key?(:pod_cidr_overprovision_config)
|
3681
5041
|
@pod_ipv4_cidr_block = args[:pod_ipv4_cidr_block] if args.key?(:pod_ipv4_cidr_block)
|
5042
|
+
@pod_ipv4_range_utilization = args[:pod_ipv4_range_utilization] if args.key?(:pod_ipv4_range_utilization)
|
3682
5043
|
@pod_range = args[:pod_range] if args.key?(:pod_range)
|
3683
5044
|
end
|
3684
5045
|
end
|
@@ -3692,12 +5053,22 @@ module Google
|
|
3692
5053
|
class NodePool
|
3693
5054
|
include Google::Apis::Core::Hashable
|
3694
5055
|
|
5056
|
+
# AutopilotConfig contains configuration of autopilot feature for this nodepool.
|
5057
|
+
# Corresponds to the JSON property `autopilotConfig`
|
5058
|
+
# @return [Google::Apis::ContainerV1::AutopilotConfig]
|
5059
|
+
attr_accessor :autopilot_config
|
5060
|
+
|
3695
5061
|
# NodePoolAutoscaling contains information required by cluster autoscaler to
|
3696
5062
|
# adjust the size of the node pool to the current cluster usage.
|
3697
5063
|
# Corresponds to the JSON property `autoscaling`
|
3698
5064
|
# @return [Google::Apis::ContainerV1::NodePoolAutoscaling]
|
3699
5065
|
attr_accessor :autoscaling
|
3700
5066
|
|
5067
|
+
# Best effort provisioning.
|
5068
|
+
# Corresponds to the JSON property `bestEffortProvisioning`
|
5069
|
+
# @return [Google::Apis::ContainerV1::BestEffortProvisioning]
|
5070
|
+
attr_accessor :best_effort_provisioning
|
5071
|
+
|
3701
5072
|
# Which conditions caused the current node pool state.
|
3702
5073
|
# Corresponds to the JSON property `conditions`
|
3703
5074
|
# @return [Array<Google::Apis::ContainerV1::StatusCondition>]
|
@@ -3725,7 +5096,7 @@ module Google
|
|
3725
5096
|
# @return [Fixnum]
|
3726
5097
|
attr_accessor :initial_node_count
|
3727
5098
|
|
3728
|
-
#
|
5099
|
+
# Output only. The resource URLs of the [managed instance groups](https://cloud.
|
3729
5100
|
# google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
|
3730
5101
|
# associated with this node pool. During the node pool blue-green upgrade
|
3731
5102
|
# operation, the URLs contain both blue and green resources.
|
@@ -3769,22 +5140,27 @@ module Google
|
|
3769
5140
|
# @return [Google::Apis::ContainerV1::PlacementPolicy]
|
3770
5141
|
attr_accessor :placement_policy
|
3771
5142
|
|
3772
|
-
#
|
5143
|
+
# Output only. The pod CIDR block size per node in this node pool.
|
3773
5144
|
# Corresponds to the JSON property `podIpv4CidrSize`
|
3774
5145
|
# @return [Fixnum]
|
3775
5146
|
attr_accessor :pod_ipv4_cidr_size
|
3776
5147
|
|
3777
|
-
#
|
5148
|
+
# QueuedProvisioning defines the queued provisioning used by the node pool.
|
5149
|
+
# Corresponds to the JSON property `queuedProvisioning`
|
5150
|
+
# @return [Google::Apis::ContainerV1::QueuedProvisioning]
|
5151
|
+
attr_accessor :queued_provisioning
|
5152
|
+
|
5153
|
+
# Output only. Server-defined URL for the resource.
|
3778
5154
|
# Corresponds to the JSON property `selfLink`
|
3779
5155
|
# @return [String]
|
3780
5156
|
attr_accessor :self_link
|
3781
5157
|
|
3782
|
-
#
|
5158
|
+
# Output only. The status of the nodes in this pool instance.
|
3783
5159
|
# Corresponds to the JSON property `status`
|
3784
5160
|
# @return [String]
|
3785
5161
|
attr_accessor :status
|
3786
5162
|
|
3787
|
-
#
|
5163
|
+
# Output only. Deprecated. Use conditions instead. Additional information about
|
3788
5164
|
# the current status of this node pool instance, if available.
|
3789
5165
|
# Corresponds to the JSON property `statusMessage`
|
3790
5166
|
# @return [String]
|
@@ -3831,7 +5207,9 @@ module Google
|
|
3831
5207
|
# @return [Google::Apis::ContainerV1::UpgradeSettings]
|
3832
5208
|
attr_accessor :upgrade_settings
|
3833
5209
|
|
3834
|
-
# The version of
|
5210
|
+
# The version of Kubernetes running on this NodePool's nodes. If unspecified, it
|
5211
|
+
# defaults as described [here](https://cloud.google.com/kubernetes-engine/
|
5212
|
+
# versioning#specifying_node_version).
|
3835
5213
|
# Corresponds to the JSON property `version`
|
3836
5214
|
# @return [String]
|
3837
5215
|
attr_accessor :version
|
@@ -3842,7 +5220,9 @@ module Google
|
|
3842
5220
|
|
3843
5221
|
# Update properties of this object
|
3844
5222
|
def update!(**args)
|
5223
|
+
@autopilot_config = args[:autopilot_config] if args.key?(:autopilot_config)
|
3845
5224
|
@autoscaling = args[:autoscaling] if args.key?(:autoscaling)
|
5225
|
+
@best_effort_provisioning = args[:best_effort_provisioning] if args.key?(:best_effort_provisioning)
|
3846
5226
|
@conditions = args[:conditions] if args.key?(:conditions)
|
3847
5227
|
@config = args[:config] if args.key?(:config)
|
3848
5228
|
@etag = args[:etag] if args.key?(:etag)
|
@@ -3855,6 +5235,7 @@ module Google
|
|
3855
5235
|
@network_config = args[:network_config] if args.key?(:network_config)
|
3856
5236
|
@placement_policy = args[:placement_policy] if args.key?(:placement_policy)
|
3857
5237
|
@pod_ipv4_cidr_size = args[:pod_ipv4_cidr_size] if args.key?(:pod_ipv4_cidr_size)
|
5238
|
+
@queued_provisioning = args[:queued_provisioning] if args.key?(:queued_provisioning)
|
3858
5239
|
@self_link = args[:self_link] if args.key?(:self_link)
|
3859
5240
|
@status = args[:status] if args.key?(:status)
|
3860
5241
|
@status_message = args[:status_message] if args.key?(:status_message)
|
@@ -3869,19 +5250,41 @@ module Google
|
|
3869
5250
|
class NodePoolAutoConfig
|
3870
5251
|
include Google::Apis::Core::Hashable
|
3871
5252
|
|
5253
|
+
# Parameters that can be configured on Linux nodes.
|
5254
|
+
# Corresponds to the JSON property `linuxNodeConfig`
|
5255
|
+
# @return [Google::Apis::ContainerV1::LinuxNodeConfig]
|
5256
|
+
attr_accessor :linux_node_config
|
5257
|
+
|
3872
5258
|
# Collection of Compute Engine network tags that can be applied to a node's
|
3873
5259
|
# underlying VM instance.
|
3874
5260
|
# Corresponds to the JSON property `networkTags`
|
3875
5261
|
# @return [Google::Apis::ContainerV1::NetworkTags]
|
3876
5262
|
attr_accessor :network_tags
|
3877
5263
|
|
5264
|
+
# Node kubelet configs.
|
5265
|
+
# Corresponds to the JSON property `nodeKubeletConfig`
|
5266
|
+
# @return [Google::Apis::ContainerV1::NodeKubeletConfig]
|
5267
|
+
attr_accessor :node_kubelet_config
|
5268
|
+
|
5269
|
+
# A map of resource manager tag keys and values to be attached to the nodes for
|
5270
|
+
# managing Compute Engine firewalls using Network Firewall Policies. Tags must
|
5271
|
+
# be according to specifications in https://cloud.google.com/vpc/docs/tags-
|
5272
|
+
# firewalls-overview#specifications. A maximum of 5 tag key-value pairs can be
|
5273
|
+
# specified. Existing tags will be replaced with new values.
|
5274
|
+
# Corresponds to the JSON property `resourceManagerTags`
|
5275
|
+
# @return [Google::Apis::ContainerV1::ResourceManagerTags]
|
5276
|
+
attr_accessor :resource_manager_tags
|
5277
|
+
|
3878
5278
|
def initialize(**args)
|
3879
5279
|
update!(**args)
|
3880
5280
|
end
|
3881
5281
|
|
3882
5282
|
# Update properties of this object
|
3883
5283
|
def update!(**args)
|
5284
|
+
@linux_node_config = args[:linux_node_config] if args.key?(:linux_node_config)
|
3884
5285
|
@network_tags = args[:network_tags] if args.key?(:network_tags)
|
5286
|
+
@node_kubelet_config = args[:node_kubelet_config] if args.key?(:node_kubelet_config)
|
5287
|
+
@resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
|
3885
5288
|
end
|
3886
5289
|
end
|
3887
5290
|
|
@@ -3907,19 +5310,19 @@ module Google
|
|
3907
5310
|
# @return [String]
|
3908
5311
|
attr_accessor :location_policy
|
3909
5312
|
|
3910
|
-
# Maximum number of nodes for one location in the
|
5313
|
+
# Maximum number of nodes for one location in the node pool. Must be >=
|
3911
5314
|
# min_node_count. There has to be enough quota to scale up the cluster.
|
3912
5315
|
# Corresponds to the JSON property `maxNodeCount`
|
3913
5316
|
# @return [Fixnum]
|
3914
5317
|
attr_accessor :max_node_count
|
3915
5318
|
|
3916
|
-
# Minimum number of nodes for one location in the
|
3917
|
-
# max_node_count.
|
5319
|
+
# Minimum number of nodes for one location in the node pool. Must be greater
|
5320
|
+
# than or equal to 0 and less than or equal to max_node_count.
|
3918
5321
|
# Corresponds to the JSON property `minNodeCount`
|
3919
5322
|
# @return [Fixnum]
|
3920
5323
|
attr_accessor :min_node_count
|
3921
5324
|
|
3922
|
-
# Maximum number of nodes in the node pool. Must be greater than
|
5325
|
+
# Maximum number of nodes in the node pool. Must be greater than or equal to
|
3923
5326
|
# total_min_node_count. There has to be enough quota to scale up the cluster.
|
3924
5327
|
# The total_*_node_count fields are mutually exclusive with the *_node_count
|
3925
5328
|
# fields.
|
@@ -3927,9 +5330,9 @@ module Google
|
|
3927
5330
|
# @return [Fixnum]
|
3928
5331
|
attr_accessor :total_max_node_count
|
3929
5332
|
|
3930
|
-
# Minimum number of nodes in the node pool. Must be greater than
|
3931
|
-
# total_max_node_count. The total_*_node_count fields
|
3932
|
-
# with the *_node_count fields.
|
5333
|
+
# Minimum number of nodes in the node pool. Must be greater than or equal to 0
|
5334
|
+
# and less than or equal to total_max_node_count. The total_*_node_count fields
|
5335
|
+
# are mutually exclusive with the *_node_count fields.
|
3933
5336
|
# Corresponds to the JSON property `totalMinNodeCount`
|
3934
5337
|
# @return [Fixnum]
|
3935
5338
|
attr_accessor :total_min_node_count
|
@@ -3988,7 +5391,7 @@ module Google
|
|
3988
5391
|
end
|
3989
5392
|
end
|
3990
5393
|
|
3991
|
-
# Kubernetes taint is
|
5394
|
+
# Kubernetes taint is composed of three fields: key, value, and effect. Effect
|
3992
5395
|
# can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute. See
|
3993
5396
|
# [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
|
3994
5397
|
# for more information, including usage and the valid values.
|
@@ -4072,12 +5475,12 @@ module Google
|
|
4072
5475
|
# @return [Array<Google::Apis::ContainerV1::StatusCondition>]
|
4073
5476
|
attr_accessor :cluster_conditions
|
4074
5477
|
|
4075
|
-
# Detailed operation progress, if available.
|
5478
|
+
# Output only. Detailed operation progress, if available.
|
4076
5479
|
# Corresponds to the JSON property `detail`
|
4077
5480
|
# @return [String]
|
4078
5481
|
attr_accessor :detail
|
4079
5482
|
|
4080
|
-
#
|
5483
|
+
# Output only. The time the operation completed, in [RFC3339](https://www.ietf.
|
4081
5484
|
# org/rfc/rfc3339.txt) text format.
|
4082
5485
|
# Corresponds to the JSON property `endTime`
|
4083
5486
|
# @return [String]
|
@@ -4093,15 +5496,15 @@ module Google
|
|
4093
5496
|
# @return [Google::Apis::ContainerV1::Status]
|
4094
5497
|
attr_accessor :error
|
4095
5498
|
|
4096
|
-
#
|
4097
|
-
#
|
4098
|
-
#
|
4099
|
-
#
|
5499
|
+
# Output only. The name of the Google Compute Engine [zone](https://cloud.google.
|
5500
|
+
# com/compute/docs/regions-zones/regions-zones#available) or [region](https://
|
5501
|
+
# cloud.google.com/compute/docs/regions-zones/regions-zones#available) in which
|
5502
|
+
# the cluster resides.
|
4100
5503
|
# Corresponds to the JSON property `location`
|
4101
5504
|
# @return [String]
|
4102
5505
|
attr_accessor :location
|
4103
5506
|
|
4104
|
-
# The server-assigned ID for the operation.
|
5507
|
+
# Output only. The server-assigned ID for the operation.
|
4105
5508
|
# Corresponds to the JSON property `name`
|
4106
5509
|
# @return [String]
|
4107
5510
|
attr_accessor :name
|
@@ -4112,7 +5515,7 @@ module Google
|
|
4112
5515
|
# @return [Array<Google::Apis::ContainerV1::StatusCondition>]
|
4113
5516
|
attr_accessor :nodepool_conditions
|
4114
5517
|
|
4115
|
-
# The operation type.
|
5518
|
+
# Output only. The operation type.
|
4116
5519
|
# Corresponds to the JSON property `operationType`
|
4117
5520
|
# @return [String]
|
4118
5521
|
attr_accessor :operation_type
|
@@ -4122,18 +5525,20 @@ module Google
|
|
4122
5525
|
# @return [Google::Apis::ContainerV1::OperationProgress]
|
4123
5526
|
attr_accessor :progress
|
4124
5527
|
|
4125
|
-
# Server-defined
|
5528
|
+
# Output only. Server-defined URI for the operation. Example: `https://container.
|
5529
|
+
# googleapis.com/v1alpha1/projects/123/locations/us-central1/operations/
|
5530
|
+
# operation-123`.
|
4126
5531
|
# Corresponds to the JSON property `selfLink`
|
4127
5532
|
# @return [String]
|
4128
5533
|
attr_accessor :self_link
|
4129
5534
|
|
4130
|
-
#
|
4131
|
-
#
|
5535
|
+
# Output only. The time the operation started, in [RFC3339](https://www.ietf.org/
|
5536
|
+
# rfc/rfc3339.txt) text format.
|
4132
5537
|
# Corresponds to the JSON property `startTime`
|
4133
5538
|
# @return [String]
|
4134
5539
|
attr_accessor :start_time
|
4135
5540
|
|
4136
|
-
# The current status of the operation.
|
5541
|
+
# Output only. The current status of the operation.
|
4137
5542
|
# Corresponds to the JSON property `status`
|
4138
5543
|
# @return [String]
|
4139
5544
|
attr_accessor :status
|
@@ -4144,14 +5549,21 @@ module Google
|
|
4144
5549
|
# @return [String]
|
4145
5550
|
attr_accessor :status_message
|
4146
5551
|
|
4147
|
-
# Server-defined
|
5552
|
+
# Output only. Server-defined URI for the target of the operation. The format of
|
5553
|
+
# this is a URI to the resource being modified (such as a cluster, node pool, or
|
5554
|
+
# node). For node pool repairs, there may be multiple nodes being repaired, but
|
5555
|
+
# only one will be the target. Examples: - ## `https://container.googleapis.com/
|
5556
|
+
# v1/projects/123/locations/us-central1/clusters/my-cluster` ## `https://
|
5557
|
+
# container.googleapis.com/v1/projects/123/zones/us-central1-c/clusters/my-
|
5558
|
+
# cluster/nodePools/my-np` `https://container.googleapis.com/v1/projects/123/
|
5559
|
+
# zones/us-central1-c/clusters/my-cluster/nodePools/my-np/node/my-node`
|
4148
5560
|
# Corresponds to the JSON property `targetLink`
|
4149
5561
|
# @return [String]
|
4150
5562
|
attr_accessor :target_link
|
4151
5563
|
|
4152
|
-
# The name of the Google Compute Engine [zone](https://cloud.google.
|
4153
|
-
# docs/zones#available) in which the operation is taking place. This
|
4154
|
-
# deprecated, use location instead.
|
5564
|
+
# Output only. The name of the Google Compute Engine [zone](https://cloud.google.
|
5565
|
+
# com/compute/docs/zones#available) in which the operation is taking place. This
|
5566
|
+
# field is deprecated, use location instead.
|
4155
5567
|
# Corresponds to the JSON property `zone`
|
4156
5568
|
# @return [String]
|
4157
5569
|
attr_accessor :zone
|
@@ -4180,6 +5592,38 @@ module Google
|
|
4180
5592
|
end
|
4181
5593
|
end
|
4182
5594
|
|
5595
|
+
# OperationError records errors seen from CloudKMS keys encountered during
|
5596
|
+
# updates to DatabaseEncryption configuration.
|
5597
|
+
class OperationError
|
5598
|
+
include Google::Apis::Core::Hashable
|
5599
|
+
|
5600
|
+
# Description of the error seen during the operation.
|
5601
|
+
# Corresponds to the JSON property `errorMessage`
|
5602
|
+
# @return [String]
|
5603
|
+
attr_accessor :error_message
|
5604
|
+
|
5605
|
+
# CloudKMS key resource that had the error.
|
5606
|
+
# Corresponds to the JSON property `keyName`
|
5607
|
+
# @return [String]
|
5608
|
+
attr_accessor :key_name
|
5609
|
+
|
5610
|
+
# Time when the CloudKMS error was seen.
|
5611
|
+
# Corresponds to the JSON property `timestamp`
|
5612
|
+
# @return [String]
|
5613
|
+
attr_accessor :timestamp
|
5614
|
+
|
5615
|
+
def initialize(**args)
|
5616
|
+
update!(**args)
|
5617
|
+
end
|
5618
|
+
|
5619
|
+
# Update properties of this object
|
5620
|
+
def update!(**args)
|
5621
|
+
@error_message = args[:error_message] if args.key?(:error_message)
|
5622
|
+
@key_name = args[:key_name] if args.key?(:key_name)
|
5623
|
+
@timestamp = args[:timestamp] if args.key?(:timestamp)
|
5624
|
+
end
|
5625
|
+
end
|
5626
|
+
|
4183
5627
|
# Information about operation (or operation stage) progress.
|
4184
5628
|
class OperationProgress
|
4185
5629
|
include Google::Apis::Core::Hashable
|
@@ -4220,10 +5664,70 @@ module Google
|
|
4220
5664
|
end
|
4221
5665
|
end
|
4222
5666
|
|
5667
|
+
# Configuration for the Cloud Storage Parallelstore CSI driver.
|
5668
|
+
class ParallelstoreCsiDriverConfig
|
5669
|
+
include Google::Apis::Core::Hashable
|
5670
|
+
|
5671
|
+
# Whether the Cloud Storage Parallelstore CSI driver is enabled for this cluster.
|
5672
|
+
# Corresponds to the JSON property `enabled`
|
5673
|
+
# @return [Boolean]
|
5674
|
+
attr_accessor :enabled
|
5675
|
+
alias_method :enabled?, :enabled
|
5676
|
+
|
5677
|
+
def initialize(**args)
|
5678
|
+
update!(**args)
|
5679
|
+
end
|
5680
|
+
|
5681
|
+
# Update properties of this object
|
5682
|
+
def update!(**args)
|
5683
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
5684
|
+
end
|
5685
|
+
end
|
5686
|
+
|
5687
|
+
# ParentProductConfig is the configuration of the parent product of the cluster.
|
5688
|
+
# This field is used by Google internal products that are built on top of a GKE
|
5689
|
+
# cluster and take the ownership of the cluster.
|
5690
|
+
class ParentProductConfig
|
5691
|
+
include Google::Apis::Core::Hashable
|
5692
|
+
|
5693
|
+
# Labels contain the configuration of the parent product.
|
5694
|
+
# Corresponds to the JSON property `labels`
|
5695
|
+
# @return [Hash<String,String>]
|
5696
|
+
attr_accessor :labels
|
5697
|
+
|
5698
|
+
# Name of the parent product associated with the cluster.
|
5699
|
+
# Corresponds to the JSON property `productName`
|
5700
|
+
# @return [String]
|
5701
|
+
attr_accessor :product_name
|
5702
|
+
|
5703
|
+
def initialize(**args)
|
5704
|
+
update!(**args)
|
5705
|
+
end
|
5706
|
+
|
5707
|
+
# Update properties of this object
|
5708
|
+
def update!(**args)
|
5709
|
+
@labels = args[:labels] if args.key?(:labels)
|
5710
|
+
@product_name = args[:product_name] if args.key?(:product_name)
|
5711
|
+
end
|
5712
|
+
end
|
5713
|
+
|
4223
5714
|
# PlacementPolicy defines the placement policy used by the node pool.
|
4224
5715
|
class PlacementPolicy
|
4225
5716
|
include Google::Apis::Core::Hashable
|
4226
5717
|
|
5718
|
+
# If set, refers to the name of a custom resource policy supplied by the user.
|
5719
|
+
# The resource policy must be in the same project and region as the node pool.
|
5720
|
+
# If not found, InvalidArgument error is returned.
|
5721
|
+
# Corresponds to the JSON property `policyName`
|
5722
|
+
# @return [String]
|
5723
|
+
attr_accessor :policy_name
|
5724
|
+
|
5725
|
+
# Optional. TPU placement topology for pod slice node pool. https://cloud.google.
|
5726
|
+
# com/tpu/docs/types-topologies#tpu_topologies
|
5727
|
+
# Corresponds to the JSON property `tpuTopology`
|
5728
|
+
# @return [String]
|
5729
|
+
attr_accessor :tpu_topology
|
5730
|
+
|
4227
5731
|
# The type of placement.
|
4228
5732
|
# Corresponds to the JSON property `type`
|
4229
5733
|
# @return [String]
|
@@ -4235,15 +5739,42 @@ module Google
|
|
4235
5739
|
|
4236
5740
|
# Update properties of this object
|
4237
5741
|
def update!(**args)
|
5742
|
+
@policy_name = args[:policy_name] if args.key?(:policy_name)
|
5743
|
+
@tpu_topology = args[:tpu_topology] if args.key?(:tpu_topology)
|
4238
5744
|
@type = args[:type] if args.key?(:type)
|
4239
5745
|
end
|
4240
5746
|
end
|
4241
5747
|
|
5748
|
+
# [PRIVATE FIELD] Config for pod CIDR size overprovisioning.
|
5749
|
+
class PodCidrOverprovisionConfig
|
5750
|
+
include Google::Apis::Core::Hashable
|
5751
|
+
|
5752
|
+
# Whether Pod CIDR overprovisioning is disabled. Note: Pod CIDR overprovisioning
|
5753
|
+
# is enabled by default.
|
5754
|
+
# Corresponds to the JSON property `disable`
|
5755
|
+
# @return [Boolean]
|
5756
|
+
attr_accessor :disable
|
5757
|
+
alias_method :disable?, :disable
|
5758
|
+
|
5759
|
+
def initialize(**args)
|
5760
|
+
update!(**args)
|
5761
|
+
end
|
5762
|
+
|
5763
|
+
# Update properties of this object
|
5764
|
+
def update!(**args)
|
5765
|
+
@disable = args[:disable] if args.key?(:disable)
|
5766
|
+
end
|
5767
|
+
end
|
5768
|
+
|
4242
5769
|
# Configuration options for private clusters.
|
4243
5770
|
class PrivateClusterConfig
|
4244
5771
|
include Google::Apis::Core::Hashable
|
4245
5772
|
|
4246
5773
|
# Whether the master's internal IP address is used as the cluster endpoint.
|
5774
|
+
# Deprecated: Use ControlPlaneEndpointsConfig.IPEndpointsConfig.
|
5775
|
+
# enable_public_endpoint instead. Note that the value of enable_public_endpoint
|
5776
|
+
# is reversed: if enable_private_endpoint is false, then enable_public_endpoint
|
5777
|
+
# will be true.
|
4247
5778
|
# Corresponds to the JSON property `enablePrivateEndpoint`
|
4248
5779
|
# @return [Boolean]
|
4249
5780
|
attr_accessor :enable_private_endpoint
|
@@ -4251,7 +5782,7 @@ module Google
|
|
4251
5782
|
|
4252
5783
|
# Whether nodes have internal IP addresses only. If enabled, all nodes are given
|
4253
5784
|
# only RFC 1918 private addresses and communicate with the master via private
|
4254
|
-
# networking.
|
5785
|
+
# networking. Deprecated: Use NetworkConfig.default_enable_private_nodes instead.
|
4255
5786
|
# Corresponds to the JSON property `enablePrivateNodes`
|
4256
5787
|
# @return [Boolean]
|
4257
5788
|
attr_accessor :enable_private_nodes
|
@@ -4276,17 +5807,23 @@ module Google
|
|
4276
5807
|
attr_accessor :peering_name
|
4277
5808
|
|
4278
5809
|
# Output only. The internal IP address of this cluster's master endpoint.
|
5810
|
+
# Deprecated: Use ControlPlaneEndpointsConfig.IPEndpointsConfig.private_endpoint
|
5811
|
+
# instead.
|
4279
5812
|
# Corresponds to the JSON property `privateEndpoint`
|
4280
5813
|
# @return [String]
|
4281
5814
|
attr_accessor :private_endpoint
|
4282
5815
|
|
4283
5816
|
# Subnet to provision the master's private endpoint during cluster creation.
|
4284
|
-
# Specified in projects/*/regions/*/subnetworks/* format.
|
5817
|
+
# Specified in projects/*/regions/*/subnetworks/* format. Deprecated: Use
|
5818
|
+
# ControlPlaneEndpointsConfig.IPEndpointsConfig.private_endpoint_subnetwork
|
5819
|
+
# instead.
|
4285
5820
|
# Corresponds to the JSON property `privateEndpointSubnetwork`
|
4286
5821
|
# @return [String]
|
4287
5822
|
attr_accessor :private_endpoint_subnetwork
|
4288
5823
|
|
4289
5824
|
# Output only. The external IP address of this cluster's master endpoint.
|
5825
|
+
# Deprecated:Use ControlPlaneEndpointsConfig.IPEndpointsConfig.public_endpoint
|
5826
|
+
# instead.
|
4290
5827
|
# Corresponds to the JSON property `publicEndpoint`
|
4291
5828
|
# @return [String]
|
4292
5829
|
attr_accessor :public_endpoint
|
@@ -4328,6 +5865,33 @@ module Google
|
|
4328
5865
|
end
|
4329
5866
|
end
|
4330
5867
|
|
5868
|
+
# PrivateRegistryAccessConfig contains access configuration for private
|
5869
|
+
# container registries.
|
5870
|
+
class PrivateRegistryAccessConfig
|
5871
|
+
include Google::Apis::Core::Hashable
|
5872
|
+
|
5873
|
+
# Private registry access configuration.
|
5874
|
+
# Corresponds to the JSON property `certificateAuthorityDomainConfig`
|
5875
|
+
# @return [Array<Google::Apis::ContainerV1::CertificateAuthorityDomainConfig>]
|
5876
|
+
attr_accessor :certificate_authority_domain_config
|
5877
|
+
|
5878
|
+
# Private registry access is enabled.
|
5879
|
+
# Corresponds to the JSON property `enabled`
|
5880
|
+
# @return [Boolean]
|
5881
|
+
attr_accessor :enabled
|
5882
|
+
alias_method :enabled?, :enabled
|
5883
|
+
|
5884
|
+
def initialize(**args)
|
5885
|
+
update!(**args)
|
5886
|
+
end
|
5887
|
+
|
5888
|
+
# Update properties of this object
|
5889
|
+
def update!(**args)
|
5890
|
+
@certificate_authority_domain_config = args[:certificate_authority_domain_config] if args.key?(:certificate_authority_domain_config)
|
5891
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
5892
|
+
end
|
5893
|
+
end
|
5894
|
+
|
4331
5895
|
# Pub/Sub specific notification config.
|
4332
5896
|
class PubSub
|
4333
5897
|
include Google::Apis::Core::Hashable
|
@@ -4359,8 +5923,156 @@ module Google
|
|
4359
5923
|
# Update properties of this object
|
4360
5924
|
def update!(**args)
|
4361
5925
|
@enabled = args[:enabled] if args.key?(:enabled)
|
4362
|
-
@filter = args[:filter] if args.key?(:filter)
|
4363
|
-
@topic = args[:topic] if args.key?(:topic)
|
5926
|
+
@filter = args[:filter] if args.key?(:filter)
|
5927
|
+
@topic = args[:topic] if args.key?(:topic)
|
5928
|
+
end
|
5929
|
+
end
|
5930
|
+
|
5931
|
+
# QueuedProvisioning defines the queued provisioning used by the node pool.
|
5932
|
+
class QueuedProvisioning
|
5933
|
+
include Google::Apis::Core::Hashable
|
5934
|
+
|
5935
|
+
# Denotes that this nodepool is QRM specific, meaning nodes can be only obtained
|
5936
|
+
# through queuing via the Cluster Autoscaler ProvisioningRequest API.
|
5937
|
+
# Corresponds to the JSON property `enabled`
|
5938
|
+
# @return [Boolean]
|
5939
|
+
attr_accessor :enabled
|
5940
|
+
alias_method :enabled?, :enabled
|
5941
|
+
|
5942
|
+
def initialize(**args)
|
5943
|
+
update!(**args)
|
5944
|
+
end
|
5945
|
+
|
5946
|
+
# Update properties of this object
|
5947
|
+
def update!(**args)
|
5948
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
5949
|
+
end
|
5950
|
+
end
|
5951
|
+
|
5952
|
+
# RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings
|
5953
|
+
# that can be created.
|
5954
|
+
class RbacBindingConfig
|
5955
|
+
include Google::Apis::Core::Hashable
|
5956
|
+
|
5957
|
+
# Setting this to true will allow any ClusterRoleBinding and RoleBinding with
|
5958
|
+
# subjects system:authenticated.
|
5959
|
+
# Corresponds to the JSON property `enableInsecureBindingSystemAuthenticated`
|
5960
|
+
# @return [Boolean]
|
5961
|
+
attr_accessor :enable_insecure_binding_system_authenticated
|
5962
|
+
alias_method :enable_insecure_binding_system_authenticated?, :enable_insecure_binding_system_authenticated
|
5963
|
+
|
5964
|
+
# Setting this to true will allow any ClusterRoleBinding and RoleBinding with
|
5965
|
+
# subjets system:anonymous or system:unauthenticated.
|
5966
|
+
# Corresponds to the JSON property `enableInsecureBindingSystemUnauthenticated`
|
5967
|
+
# @return [Boolean]
|
5968
|
+
attr_accessor :enable_insecure_binding_system_unauthenticated
|
5969
|
+
alias_method :enable_insecure_binding_system_unauthenticated?, :enable_insecure_binding_system_unauthenticated
|
5970
|
+
|
5971
|
+
def initialize(**args)
|
5972
|
+
update!(**args)
|
5973
|
+
end
|
5974
|
+
|
5975
|
+
# Update properties of this object
|
5976
|
+
def update!(**args)
|
5977
|
+
@enable_insecure_binding_system_authenticated = args[:enable_insecure_binding_system_authenticated] if args.key?(:enable_insecure_binding_system_authenticated)
|
5978
|
+
@enable_insecure_binding_system_unauthenticated = args[:enable_insecure_binding_system_unauthenticated] if args.key?(:enable_insecure_binding_system_unauthenticated)
|
5979
|
+
end
|
5980
|
+
end
|
5981
|
+
|
5982
|
+
# RangeInfo contains the range name and the range utilization by this cluster.
|
5983
|
+
class RangeInfo
|
5984
|
+
include Google::Apis::Core::Hashable
|
5985
|
+
|
5986
|
+
# Output only. Name of a range.
|
5987
|
+
# Corresponds to the JSON property `rangeName`
|
5988
|
+
# @return [String]
|
5989
|
+
attr_accessor :range_name
|
5990
|
+
|
5991
|
+
# Output only. The utilization of the range.
|
5992
|
+
# Corresponds to the JSON property `utilization`
|
5993
|
+
# @return [Float]
|
5994
|
+
attr_accessor :utilization
|
5995
|
+
|
5996
|
+
def initialize(**args)
|
5997
|
+
update!(**args)
|
5998
|
+
end
|
5999
|
+
|
6000
|
+
# Update properties of this object
|
6001
|
+
def update!(**args)
|
6002
|
+
@range_name = args[:range_name] if args.key?(:range_name)
|
6003
|
+
@utilization = args[:utilization] if args.key?(:utilization)
|
6004
|
+
end
|
6005
|
+
end
|
6006
|
+
|
6007
|
+
# RayClusterLoggingConfig specifies configuration of Ray logging.
|
6008
|
+
class RayClusterLoggingConfig
|
6009
|
+
include Google::Apis::Core::Hashable
|
6010
|
+
|
6011
|
+
# Enable log collection for Ray clusters.
|
6012
|
+
# Corresponds to the JSON property `enabled`
|
6013
|
+
# @return [Boolean]
|
6014
|
+
attr_accessor :enabled
|
6015
|
+
alias_method :enabled?, :enabled
|
6016
|
+
|
6017
|
+
def initialize(**args)
|
6018
|
+
update!(**args)
|
6019
|
+
end
|
6020
|
+
|
6021
|
+
# Update properties of this object
|
6022
|
+
def update!(**args)
|
6023
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
6024
|
+
end
|
6025
|
+
end
|
6026
|
+
|
6027
|
+
# RayClusterMonitoringConfig specifies monitoring configuration for Ray clusters.
|
6028
|
+
class RayClusterMonitoringConfig
|
6029
|
+
include Google::Apis::Core::Hashable
|
6030
|
+
|
6031
|
+
# Enable metrics collection for Ray clusters.
|
6032
|
+
# Corresponds to the JSON property `enabled`
|
6033
|
+
# @return [Boolean]
|
6034
|
+
attr_accessor :enabled
|
6035
|
+
alias_method :enabled?, :enabled
|
6036
|
+
|
6037
|
+
def initialize(**args)
|
6038
|
+
update!(**args)
|
6039
|
+
end
|
6040
|
+
|
6041
|
+
# Update properties of this object
|
6042
|
+
def update!(**args)
|
6043
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
6044
|
+
end
|
6045
|
+
end
|
6046
|
+
|
6047
|
+
# Configuration options for the Ray Operator add-on.
|
6048
|
+
class RayOperatorConfig
|
6049
|
+
include Google::Apis::Core::Hashable
|
6050
|
+
|
6051
|
+
# Whether the Ray Operator addon is enabled for this cluster.
|
6052
|
+
# Corresponds to the JSON property `enabled`
|
6053
|
+
# @return [Boolean]
|
6054
|
+
attr_accessor :enabled
|
6055
|
+
alias_method :enabled?, :enabled
|
6056
|
+
|
6057
|
+
# RayClusterLoggingConfig specifies configuration of Ray logging.
|
6058
|
+
# Corresponds to the JSON property `rayClusterLoggingConfig`
|
6059
|
+
# @return [Google::Apis::ContainerV1::RayClusterLoggingConfig]
|
6060
|
+
attr_accessor :ray_cluster_logging_config
|
6061
|
+
|
6062
|
+
# RayClusterMonitoringConfig specifies monitoring configuration for Ray clusters.
|
6063
|
+
# Corresponds to the JSON property `rayClusterMonitoringConfig`
|
6064
|
+
# @return [Google::Apis::ContainerV1::RayClusterMonitoringConfig]
|
6065
|
+
attr_accessor :ray_cluster_monitoring_config
|
6066
|
+
|
6067
|
+
def initialize(**args)
|
6068
|
+
update!(**args)
|
6069
|
+
end
|
6070
|
+
|
6071
|
+
# Update properties of this object
|
6072
|
+
def update!(**args)
|
6073
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
6074
|
+
@ray_cluster_logging_config = args[:ray_cluster_logging_config] if args.key?(:ray_cluster_logging_config)
|
6075
|
+
@ray_cluster_monitoring_config = args[:ray_cluster_monitoring_config] if args.key?(:ray_cluster_monitoring_config)
|
4364
6076
|
end
|
4365
6077
|
end
|
4366
6078
|
|
@@ -4439,6 +6151,11 @@ module Google
|
|
4439
6151
|
# @return [String]
|
4440
6152
|
attr_accessor :default_version
|
4441
6153
|
|
6154
|
+
# The auto upgrade target version for clusters on the channel.
|
6155
|
+
# Corresponds to the JSON property `upgradeTargetVersion`
|
6156
|
+
# @return [String]
|
6157
|
+
attr_accessor :upgrade_target_version
|
6158
|
+
|
4442
6159
|
# List of valid versions for the channel.
|
4443
6160
|
# Corresponds to the JSON property `validVersions`
|
4444
6161
|
# @return [Array<String>]
|
@@ -4452,6 +6169,7 @@ module Google
|
|
4452
6169
|
def update!(**args)
|
4453
6170
|
@channel = args[:channel] if args.key?(:channel)
|
4454
6171
|
@default_version = args[:default_version] if args.key?(:default_version)
|
6172
|
+
@upgrade_target_version = args[:upgrade_target_version] if args.key?(:upgrade_target_version)
|
4455
6173
|
@valid_versions = args[:valid_versions] if args.key?(:valid_versions)
|
4456
6174
|
end
|
4457
6175
|
end
|
@@ -4543,6 +6261,31 @@ module Google
|
|
4543
6261
|
end
|
4544
6262
|
end
|
4545
6263
|
|
6264
|
+
# A map of resource manager tag keys and values to be attached to the nodes for
|
6265
|
+
# managing Compute Engine firewalls using Network Firewall Policies. Tags must
|
6266
|
+
# be according to specifications in https://cloud.google.com/vpc/docs/tags-
|
6267
|
+
# firewalls-overview#specifications. A maximum of 5 tag key-value pairs can be
|
6268
|
+
# specified. Existing tags will be replaced with new values.
|
6269
|
+
class ResourceManagerTags
|
6270
|
+
include Google::Apis::Core::Hashable
|
6271
|
+
|
6272
|
+
# TagKeyValue must be in one of the following formats ([KEY]=[VALUE]) 1. `
|
6273
|
+
# tagKeys/`tag_key_id`=tagValues/`tag_value_id`` 2. ``org_id`/`tag_key_name`=`
|
6274
|
+
# tag_value_name`` 3. ``project_id`/`tag_key_name`=`tag_value_name``
|
6275
|
+
# Corresponds to the JSON property `tags`
|
6276
|
+
# @return [Hash<String,String>]
|
6277
|
+
attr_accessor :tags
|
6278
|
+
|
6279
|
+
def initialize(**args)
|
6280
|
+
update!(**args)
|
6281
|
+
end
|
6282
|
+
|
6283
|
+
# Update properties of this object
|
6284
|
+
def update!(**args)
|
6285
|
+
@tags = args[:tags] if args.key?(:tags)
|
6286
|
+
end
|
6287
|
+
end
|
6288
|
+
|
4546
6289
|
# Configuration for exporting cluster resource usages.
|
4547
6290
|
class ResourceUsageExportConfig
|
4548
6291
|
include Google::Apis::Core::Hashable
|
@@ -4655,6 +6398,66 @@ module Google
|
|
4655
6398
|
end
|
4656
6399
|
end
|
4657
6400
|
|
6401
|
+
# SecondaryBootDisk represents a persistent disk attached to a node with special
|
6402
|
+
# configurations based on its mode.
|
6403
|
+
class SecondaryBootDisk
|
6404
|
+
include Google::Apis::Core::Hashable
|
6405
|
+
|
6406
|
+
# Fully-qualified resource ID for an existing disk image.
|
6407
|
+
# Corresponds to the JSON property `diskImage`
|
6408
|
+
# @return [String]
|
6409
|
+
attr_accessor :disk_image
|
6410
|
+
|
6411
|
+
# Disk mode (container image cache, etc.)
|
6412
|
+
# Corresponds to the JSON property `mode`
|
6413
|
+
# @return [String]
|
6414
|
+
attr_accessor :mode
|
6415
|
+
|
6416
|
+
def initialize(**args)
|
6417
|
+
update!(**args)
|
6418
|
+
end
|
6419
|
+
|
6420
|
+
# Update properties of this object
|
6421
|
+
def update!(**args)
|
6422
|
+
@disk_image = args[:disk_image] if args.key?(:disk_image)
|
6423
|
+
@mode = args[:mode] if args.key?(:mode)
|
6424
|
+
end
|
6425
|
+
end
|
6426
|
+
|
6427
|
+
# SecondaryBootDiskUpdateStrategy is a placeholder which will be extended in the
|
6428
|
+
# future to define different options for updating secondary boot disks.
|
6429
|
+
class SecondaryBootDiskUpdateStrategy
|
6430
|
+
include Google::Apis::Core::Hashable
|
6431
|
+
|
6432
|
+
def initialize(**args)
|
6433
|
+
update!(**args)
|
6434
|
+
end
|
6435
|
+
|
6436
|
+
# Update properties of this object
|
6437
|
+
def update!(**args)
|
6438
|
+
end
|
6439
|
+
end
|
6440
|
+
|
6441
|
+
# SecretManagerConfig is config for secret manager enablement.
|
6442
|
+
class SecretManagerConfig
|
6443
|
+
include Google::Apis::Core::Hashable
|
6444
|
+
|
6445
|
+
# Enable/Disable Secret Manager Config.
|
6446
|
+
# Corresponds to the JSON property `enabled`
|
6447
|
+
# @return [Boolean]
|
6448
|
+
attr_accessor :enabled
|
6449
|
+
alias_method :enabled?, :enabled
|
6450
|
+
|
6451
|
+
def initialize(**args)
|
6452
|
+
update!(**args)
|
6453
|
+
end
|
6454
|
+
|
6455
|
+
# Update properties of this object
|
6456
|
+
def update!(**args)
|
6457
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
6458
|
+
end
|
6459
|
+
end
|
6460
|
+
|
4658
6461
|
# SecurityBulletinEvent is a notification sent to customers when a security
|
4659
6462
|
# bulletin has been posted that they are vulnerable to.
|
4660
6463
|
class SecurityBulletinEvent
|
@@ -4738,6 +6541,32 @@ module Google
|
|
4738
6541
|
end
|
4739
6542
|
end
|
4740
6543
|
|
6544
|
+
# SecurityPostureConfig defines the flags needed to enable/disable features for
|
6545
|
+
# the Security Posture API.
|
6546
|
+
class SecurityPostureConfig
|
6547
|
+
include Google::Apis::Core::Hashable
|
6548
|
+
|
6549
|
+
# Sets which mode to use for Security Posture features.
|
6550
|
+
# Corresponds to the JSON property `mode`
|
6551
|
+
# @return [String]
|
6552
|
+
attr_accessor :mode
|
6553
|
+
|
6554
|
+
# Sets which mode to use for vulnerability scanning.
|
6555
|
+
# Corresponds to the JSON property `vulnerabilityMode`
|
6556
|
+
# @return [String]
|
6557
|
+
attr_accessor :vulnerability_mode
|
6558
|
+
|
6559
|
+
def initialize(**args)
|
6560
|
+
update!(**args)
|
6561
|
+
end
|
6562
|
+
|
6563
|
+
# Update properties of this object
|
6564
|
+
def update!(**args)
|
6565
|
+
@mode = args[:mode] if args.key?(:mode)
|
6566
|
+
@vulnerability_mode = args[:vulnerability_mode] if args.key?(:vulnerability_mode)
|
6567
|
+
end
|
6568
|
+
end
|
6569
|
+
|
4741
6570
|
# Kubernetes Engine service configuration.
|
4742
6571
|
class ServerConfig
|
4743
6572
|
include Google::Apis::Core::Hashable
|
@@ -5512,6 +7341,26 @@ module Google
|
|
5512
7341
|
end
|
5513
7342
|
end
|
5514
7343
|
|
7344
|
+
# SoleTenantConfig contains the NodeAffinities to specify what shared sole
|
7345
|
+
# tenant node groups should back the node pool.
|
7346
|
+
class SoleTenantConfig
|
7347
|
+
include Google::Apis::Core::Hashable
|
7348
|
+
|
7349
|
+
# NodeAffinities used to match to a shared sole tenant node group.
|
7350
|
+
# Corresponds to the JSON property `nodeAffinities`
|
7351
|
+
# @return [Array<Google::Apis::ContainerV1::NodeAffinity>]
|
7352
|
+
attr_accessor :node_affinities
|
7353
|
+
|
7354
|
+
def initialize(**args)
|
7355
|
+
update!(**args)
|
7356
|
+
end
|
7357
|
+
|
7358
|
+
# Update properties of this object
|
7359
|
+
def update!(**args)
|
7360
|
+
@node_affinities = args[:node_affinities] if args.key?(:node_affinities)
|
7361
|
+
end
|
7362
|
+
end
|
7363
|
+
|
5515
7364
|
# Standard rollout policy is the default policy for blue-green.
|
5516
7365
|
class StandardRolloutPolicy
|
5517
7366
|
include Google::Apis::Core::Hashable
|
@@ -5595,6 +7444,26 @@ module Google
|
|
5595
7444
|
end
|
5596
7445
|
end
|
5597
7446
|
|
7447
|
+
# Configuration for the Stateful HA add-on.
|
7448
|
+
class StatefulHaConfig
|
7449
|
+
include Google::Apis::Core::Hashable
|
7450
|
+
|
7451
|
+
# Whether the Stateful HA add-on is enabled for this cluster.
|
7452
|
+
# Corresponds to the JSON property `enabled`
|
7453
|
+
# @return [Boolean]
|
7454
|
+
attr_accessor :enabled
|
7455
|
+
alias_method :enabled?, :enabled
|
7456
|
+
|
7457
|
+
def initialize(**args)
|
7458
|
+
update!(**args)
|
7459
|
+
end
|
7460
|
+
|
7461
|
+
# Update properties of this object
|
7462
|
+
def update!(**args)
|
7463
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
7464
|
+
end
|
7465
|
+
end
|
7466
|
+
|
5598
7467
|
# The `Status` type defines a logical error model that is suitable for different
|
5599
7468
|
# programming environments, including REST APIs and RPC APIs. It is used by [
|
5600
7469
|
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
@@ -5828,6 +7697,12 @@ module Google
|
|
5828
7697
|
class UpdateNodePoolRequest
|
5829
7698
|
include Google::Apis::Core::Hashable
|
5830
7699
|
|
7700
|
+
# A list of hardware accelerators to be attached to each node. See https://cloud.
|
7701
|
+
# google.com/compute/docs/gpus for more information about support for GPUs.
|
7702
|
+
# Corresponds to the JSON property `accelerators`
|
7703
|
+
# @return [Array<Google::Apis::ContainerV1::AcceleratorConfig>]
|
7704
|
+
attr_accessor :accelerators
|
7705
|
+
|
5831
7706
|
# Deprecated. The name of the cluster to upgrade. This field has been deprecated
|
5832
7707
|
# and replaced by the name field.
|
5833
7708
|
# Corresponds to the JSON property `clusterId`
|
@@ -5840,6 +7715,25 @@ module Google
|
|
5840
7715
|
# @return [Google::Apis::ContainerV1::ConfidentialNodes]
|
5841
7716
|
attr_accessor :confidential_nodes
|
5842
7717
|
|
7718
|
+
# ContainerdConfig contains configuration to customize containerd.
|
7719
|
+
# Corresponds to the JSON property `containerdConfig`
|
7720
|
+
# @return [Google::Apis::ContainerV1::ContainerdConfig]
|
7721
|
+
attr_accessor :containerd_config
|
7722
|
+
|
7723
|
+
# Optional. The desired disk size for nodes in the node pool specified in GB.
|
7724
|
+
# The smallest allowed disk size is 10GB. Initiates an upgrade operation that
|
7725
|
+
# migrates the nodes in the node pool to the specified disk size.
|
7726
|
+
# Corresponds to the JSON property `diskSizeGb`
|
7727
|
+
# @return [Fixnum]
|
7728
|
+
attr_accessor :disk_size_gb
|
7729
|
+
|
7730
|
+
# Optional. The desired disk type (e.g. 'pd-standard', 'pd-ssd' or 'pd-balanced')
|
7731
|
+
# for nodes in the node pool. Initiates an upgrade operation that migrates the
|
7732
|
+
# nodes in the node pool to the specified disk type.
|
7733
|
+
# Corresponds to the JSON property `diskType`
|
7734
|
+
# @return [String]
|
7735
|
+
attr_accessor :disk_type
|
7736
|
+
|
5843
7737
|
# The current etag of the node pool. If an etag is provided and does not match
|
5844
7738
|
# the current etag of the node pool, update will be blocked and an ABORTED error
|
5845
7739
|
# will be returned.
|
@@ -5863,7 +7757,9 @@ module Google
|
|
5863
7757
|
# @return [Google::Apis::ContainerV1::VirtualNic]
|
5864
7758
|
attr_accessor :gvnic
|
5865
7759
|
|
5866
|
-
# Required. The desired image type for the node pool.
|
7760
|
+
# Required. The desired image type for the node pool. Please see https://cloud.
|
7761
|
+
# google.com/kubernetes-engine/docs/concepts/node-images for available image
|
7762
|
+
# types.
|
5867
7763
|
# Corresponds to the JSON property `imageType`
|
5868
7764
|
# @return [String]
|
5869
7765
|
attr_accessor :image_type
|
@@ -5898,6 +7794,20 @@ module Google
|
|
5898
7794
|
# @return [Google::Apis::ContainerV1::NodePoolLoggingConfig]
|
5899
7795
|
attr_accessor :logging_config
|
5900
7796
|
|
7797
|
+
# Optional. The desired [Google Compute Engine machine type](https://cloud.
|
7798
|
+
# google.com/compute/docs/machine-types) for nodes in the node pool. Initiates
|
7799
|
+
# an upgrade operation that migrates the nodes in the node pool to the specified
|
7800
|
+
# machine type.
|
7801
|
+
# Corresponds to the JSON property `machineType`
|
7802
|
+
# @return [String]
|
7803
|
+
attr_accessor :machine_type
|
7804
|
+
|
7805
|
+
# The maximum duration for the nodes to exist. If unspecified, the nodes can
|
7806
|
+
# exist indefinitely.
|
7807
|
+
# Corresponds to the JSON property `maxRunDuration`
|
7808
|
+
# @return [String]
|
7809
|
+
attr_accessor :max_run_duration
|
7810
|
+
|
5901
7811
|
# The name (project, location, cluster, node pool) of the node pool to update.
|
5902
7812
|
# Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.
|
5903
7813
|
# Corresponds to the JSON property `name`
|
@@ -5933,12 +7843,32 @@ module Google
|
|
5933
7843
|
# @return [String]
|
5934
7844
|
attr_accessor :project_id
|
5935
7845
|
|
7846
|
+
# QueuedProvisioning defines the queued provisioning used by the node pool.
|
7847
|
+
# Corresponds to the JSON property `queuedProvisioning`
|
7848
|
+
# @return [Google::Apis::ContainerV1::QueuedProvisioning]
|
7849
|
+
attr_accessor :queued_provisioning
|
7850
|
+
|
5936
7851
|
# Collection of [GCP labels](https://cloud.google.com/resource-manager/docs/
|
5937
7852
|
# creating-managing-labels).
|
5938
7853
|
# Corresponds to the JSON property `resourceLabels`
|
5939
7854
|
# @return [Google::Apis::ContainerV1::ResourceLabels]
|
5940
7855
|
attr_accessor :resource_labels
|
5941
7856
|
|
7857
|
+
# A map of resource manager tag keys and values to be attached to the nodes for
|
7858
|
+
# managing Compute Engine firewalls using Network Firewall Policies. Tags must
|
7859
|
+
# be according to specifications in https://cloud.google.com/vpc/docs/tags-
|
7860
|
+
# firewalls-overview#specifications. A maximum of 5 tag key-value pairs can be
|
7861
|
+
# specified. Existing tags will be replaced with new values.
|
7862
|
+
# Corresponds to the JSON property `resourceManagerTags`
|
7863
|
+
# @return [Google::Apis::ContainerV1::ResourceManagerTags]
|
7864
|
+
attr_accessor :resource_manager_tags
|
7865
|
+
|
7866
|
+
# List of Storage Pools where boot disks are provisioned. Existing Storage Pools
|
7867
|
+
# will be replaced with storage-pools.
|
7868
|
+
# Corresponds to the JSON property `storagePools`
|
7869
|
+
# @return [Array<String>]
|
7870
|
+
attr_accessor :storage_pools
|
7871
|
+
|
5942
7872
|
# Collection of Compute Engine network tags that can be applied to a node's
|
5943
7873
|
# underlying VM instance.
|
5944
7874
|
# Corresponds to the JSON property `tags`
|
@@ -6012,8 +7942,12 @@ module Google
|
|
6012
7942
|
|
6013
7943
|
# Update properties of this object
|
6014
7944
|
def update!(**args)
|
7945
|
+
@accelerators = args[:accelerators] if args.key?(:accelerators)
|
6015
7946
|
@cluster_id = args[:cluster_id] if args.key?(:cluster_id)
|
6016
7947
|
@confidential_nodes = args[:confidential_nodes] if args.key?(:confidential_nodes)
|
7948
|
+
@containerd_config = args[:containerd_config] if args.key?(:containerd_config)
|
7949
|
+
@disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
|
7950
|
+
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
6017
7951
|
@etag = args[:etag] if args.key?(:etag)
|
6018
7952
|
@fast_socket = args[:fast_socket] if args.key?(:fast_socket)
|
6019
7953
|
@gcfs_config = args[:gcfs_config] if args.key?(:gcfs_config)
|
@@ -6024,12 +7958,17 @@ module Google
|
|
6024
7958
|
@linux_node_config = args[:linux_node_config] if args.key?(:linux_node_config)
|
6025
7959
|
@locations = args[:locations] if args.key?(:locations)
|
6026
7960
|
@logging_config = args[:logging_config] if args.key?(:logging_config)
|
7961
|
+
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
7962
|
+
@max_run_duration = args[:max_run_duration] if args.key?(:max_run_duration)
|
6027
7963
|
@name = args[:name] if args.key?(:name)
|
6028
7964
|
@node_network_config = args[:node_network_config] if args.key?(:node_network_config)
|
6029
7965
|
@node_pool_id = args[:node_pool_id] if args.key?(:node_pool_id)
|
6030
7966
|
@node_version = args[:node_version] if args.key?(:node_version)
|
6031
7967
|
@project_id = args[:project_id] if args.key?(:project_id)
|
7968
|
+
@queued_provisioning = args[:queued_provisioning] if args.key?(:queued_provisioning)
|
6032
7969
|
@resource_labels = args[:resource_labels] if args.key?(:resource_labels)
|
7970
|
+
@resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
|
7971
|
+
@storage_pools = args[:storage_pools] if args.key?(:storage_pools)
|
6033
7972
|
@tags = args[:tags] if args.key?(:tags)
|
6034
7973
|
@taints = args[:taints] if args.key?(:taints)
|
6035
7974
|
@upgrade_settings = args[:upgrade_settings] if args.key?(:upgrade_settings)
|
@@ -6132,6 +8071,93 @@ module Google
|
|
6132
8071
|
end
|
6133
8072
|
end
|
6134
8073
|
|
8074
|
+
# UpgradeInfoEvent is a notification sent to customers about the upgrade
|
8075
|
+
# information of a resource.
|
8076
|
+
class UpgradeInfoEvent
|
8077
|
+
include Google::Apis::Core::Hashable
|
8078
|
+
|
8079
|
+
# The current version before the upgrade.
|
8080
|
+
# Corresponds to the JSON property `currentVersion`
|
8081
|
+
# @return [String]
|
8082
|
+
attr_accessor :current_version
|
8083
|
+
|
8084
|
+
# A brief description of the event.
|
8085
|
+
# Corresponds to the JSON property `description`
|
8086
|
+
# @return [String]
|
8087
|
+
attr_accessor :description
|
8088
|
+
|
8089
|
+
# The time when the operation ended.
|
8090
|
+
# Corresponds to the JSON property `endTime`
|
8091
|
+
# @return [String]
|
8092
|
+
attr_accessor :end_time
|
8093
|
+
|
8094
|
+
# The type of the event.
|
8095
|
+
# Corresponds to the JSON property `eventType`
|
8096
|
+
# @return [String]
|
8097
|
+
attr_accessor :event_type
|
8098
|
+
|
8099
|
+
# The end of extended support timestamp.
|
8100
|
+
# Corresponds to the JSON property `extendedSupportEndTime`
|
8101
|
+
# @return [String]
|
8102
|
+
attr_accessor :extended_support_end_time
|
8103
|
+
|
8104
|
+
# The operation associated with this upgrade.
|
8105
|
+
# Corresponds to the JSON property `operation`
|
8106
|
+
# @return [String]
|
8107
|
+
attr_accessor :operation
|
8108
|
+
|
8109
|
+
# Optional relative path to the resource. For example in node pool upgrades, the
|
8110
|
+
# relative path of the node pool.
|
8111
|
+
# Corresponds to the JSON property `resource`
|
8112
|
+
# @return [String]
|
8113
|
+
attr_accessor :resource
|
8114
|
+
|
8115
|
+
# The resource type associated with the upgrade.
|
8116
|
+
# Corresponds to the JSON property `resourceType`
|
8117
|
+
# @return [String]
|
8118
|
+
attr_accessor :resource_type
|
8119
|
+
|
8120
|
+
# The end of standard support timestamp.
|
8121
|
+
# Corresponds to the JSON property `standardSupportEndTime`
|
8122
|
+
# @return [String]
|
8123
|
+
attr_accessor :standard_support_end_time
|
8124
|
+
|
8125
|
+
# The time when the operation was started.
|
8126
|
+
# Corresponds to the JSON property `startTime`
|
8127
|
+
# @return [String]
|
8128
|
+
attr_accessor :start_time
|
8129
|
+
|
8130
|
+
# Output only. The state of the upgrade.
|
8131
|
+
# Corresponds to the JSON property `state`
|
8132
|
+
# @return [String]
|
8133
|
+
attr_accessor :state
|
8134
|
+
|
8135
|
+
# The target version for the upgrade.
|
8136
|
+
# Corresponds to the JSON property `targetVersion`
|
8137
|
+
# @return [String]
|
8138
|
+
attr_accessor :target_version
|
8139
|
+
|
8140
|
+
def initialize(**args)
|
8141
|
+
update!(**args)
|
8142
|
+
end
|
8143
|
+
|
8144
|
+
# Update properties of this object
|
8145
|
+
def update!(**args)
|
8146
|
+
@current_version = args[:current_version] if args.key?(:current_version)
|
8147
|
+
@description = args[:description] if args.key?(:description)
|
8148
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
8149
|
+
@event_type = args[:event_type] if args.key?(:event_type)
|
8150
|
+
@extended_support_end_time = args[:extended_support_end_time] if args.key?(:extended_support_end_time)
|
8151
|
+
@operation = args[:operation] if args.key?(:operation)
|
8152
|
+
@resource = args[:resource] if args.key?(:resource)
|
8153
|
+
@resource_type = args[:resource_type] if args.key?(:resource_type)
|
8154
|
+
@standard_support_end_time = args[:standard_support_end_time] if args.key?(:standard_support_end_time)
|
8155
|
+
@start_time = args[:start_time] if args.key?(:start_time)
|
8156
|
+
@state = args[:state] if args.key?(:state)
|
8157
|
+
@target_version = args[:target_version] if args.key?(:target_version)
|
8158
|
+
end
|
8159
|
+
end
|
8160
|
+
|
6135
8161
|
# These upgrade settings control the level of parallelism and the level of
|
6136
8162
|
# disruption caused by an upgrade. maxUnavailable controls the number of nodes
|
6137
8163
|
# that can be simultaneously unavailable. maxSurge controls the number of
|
@@ -6281,6 +8307,78 @@ module Google
|
|
6281
8307
|
end
|
6282
8308
|
end
|
6283
8309
|
|
8310
|
+
# UserManagedKeysConfig holds the resource address to Keys which are used for
|
8311
|
+
# signing certs and token that are used for communication within cluster.
|
8312
|
+
class UserManagedKeysConfig
|
8313
|
+
include Google::Apis::Core::Hashable
|
8314
|
+
|
8315
|
+
# The Certificate Authority Service caPool to use for the aggregation CA in this
|
8316
|
+
# cluster.
|
8317
|
+
# Corresponds to the JSON property `aggregationCa`
|
8318
|
+
# @return [String]
|
8319
|
+
attr_accessor :aggregation_ca
|
8320
|
+
|
8321
|
+
# The Certificate Authority Service caPool to use for the cluster CA in this
|
8322
|
+
# cluster.
|
8323
|
+
# Corresponds to the JSON property `clusterCa`
|
8324
|
+
# @return [String]
|
8325
|
+
attr_accessor :cluster_ca
|
8326
|
+
|
8327
|
+
# The Cloud KMS cryptoKey to use for Confidential Hyperdisk on the control plane
|
8328
|
+
# nodes.
|
8329
|
+
# Corresponds to the JSON property `controlPlaneDiskEncryptionKey`
|
8330
|
+
# @return [String]
|
8331
|
+
attr_accessor :control_plane_disk_encryption_key
|
8332
|
+
|
8333
|
+
# Resource path of the Certificate Authority Service caPool to use for the etcd
|
8334
|
+
# API CA in this cluster.
|
8335
|
+
# Corresponds to the JSON property `etcdApiCa`
|
8336
|
+
# @return [String]
|
8337
|
+
attr_accessor :etcd_api_ca
|
8338
|
+
|
8339
|
+
# Resource path of the Certificate Authority Service caPool to use for the etcd
|
8340
|
+
# peer CA in this cluster.
|
8341
|
+
# Corresponds to the JSON property `etcdPeerCa`
|
8342
|
+
# @return [String]
|
8343
|
+
attr_accessor :etcd_peer_ca
|
8344
|
+
|
8345
|
+
# Resource path of the Cloud KMS cryptoKey to use for encryption of internal
|
8346
|
+
# etcd backups.
|
8347
|
+
# Corresponds to the JSON property `gkeopsEtcdBackupEncryptionKey`
|
8348
|
+
# @return [String]
|
8349
|
+
attr_accessor :gkeops_etcd_backup_encryption_key
|
8350
|
+
|
8351
|
+
# The Cloud KMS cryptoKeyVersions to use for signing service account JWTs issued
|
8352
|
+
# by this cluster. Format: `projects/`project`/locations/`location`/keyRings/`
|
8353
|
+
# keyring`/cryptoKeys/`cryptoKey`/cryptoKeyVersions/`cryptoKeyVersion``
|
8354
|
+
# Corresponds to the JSON property `serviceAccountSigningKeys`
|
8355
|
+
# @return [Array<String>]
|
8356
|
+
attr_accessor :service_account_signing_keys
|
8357
|
+
|
8358
|
+
# The Cloud KMS cryptoKeyVersions to use for verifying service account JWTs
|
8359
|
+
# issued by this cluster. Format: `projects/`project`/locations/`location`/
|
8360
|
+
# keyRings/`keyring`/cryptoKeys/`cryptoKey`/cryptoKeyVersions/`cryptoKeyVersion``
|
8361
|
+
# Corresponds to the JSON property `serviceAccountVerificationKeys`
|
8362
|
+
# @return [Array<String>]
|
8363
|
+
attr_accessor :service_account_verification_keys
|
8364
|
+
|
8365
|
+
def initialize(**args)
|
8366
|
+
update!(**args)
|
8367
|
+
end
|
8368
|
+
|
8369
|
+
# Update properties of this object
|
8370
|
+
def update!(**args)
|
8371
|
+
@aggregation_ca = args[:aggregation_ca] if args.key?(:aggregation_ca)
|
8372
|
+
@cluster_ca = args[:cluster_ca] if args.key?(:cluster_ca)
|
8373
|
+
@control_plane_disk_encryption_key = args[:control_plane_disk_encryption_key] if args.key?(:control_plane_disk_encryption_key)
|
8374
|
+
@etcd_api_ca = args[:etcd_api_ca] if args.key?(:etcd_api_ca)
|
8375
|
+
@etcd_peer_ca = args[:etcd_peer_ca] if args.key?(:etcd_peer_ca)
|
8376
|
+
@gkeops_etcd_backup_encryption_key = args[:gkeops_etcd_backup_encryption_key] if args.key?(:gkeops_etcd_backup_encryption_key)
|
8377
|
+
@service_account_signing_keys = args[:service_account_signing_keys] if args.key?(:service_account_signing_keys)
|
8378
|
+
@service_account_verification_keys = args[:service_account_verification_keys] if args.key?(:service_account_verification_keys)
|
8379
|
+
end
|
8380
|
+
end
|
8381
|
+
|
6284
8382
|
# VerticalPodAutoscaling contains global, per-cluster information required by
|
6285
8383
|
# Vertical Pod Autoscaler to automatically adjust the resources of pods
|
6286
8384
|
# controlled by it.
|
@@ -6383,6 +8481,33 @@ module Google
|
|
6383
8481
|
@mode = args[:mode] if args.key?(:mode)
|
6384
8482
|
end
|
6385
8483
|
end
|
8484
|
+
|
8485
|
+
# WorkloadPolicyConfig is the configuration related to GCW workload policy
|
8486
|
+
class WorkloadPolicyConfig
|
8487
|
+
include Google::Apis::Core::Hashable
|
8488
|
+
|
8489
|
+
# If true, workloads can use NET_ADMIN capability.
|
8490
|
+
# Corresponds to the JSON property `allowNetAdmin`
|
8491
|
+
# @return [Boolean]
|
8492
|
+
attr_accessor :allow_net_admin
|
8493
|
+
alias_method :allow_net_admin?, :allow_net_admin
|
8494
|
+
|
8495
|
+
# If true, enables the GCW Auditor that audits workloads on standard clusters.
|
8496
|
+
# Corresponds to the JSON property `autopilotCompatibilityAuditingEnabled`
|
8497
|
+
# @return [Boolean]
|
8498
|
+
attr_accessor :autopilot_compatibility_auditing_enabled
|
8499
|
+
alias_method :autopilot_compatibility_auditing_enabled?, :autopilot_compatibility_auditing_enabled
|
8500
|
+
|
8501
|
+
def initialize(**args)
|
8502
|
+
update!(**args)
|
8503
|
+
end
|
8504
|
+
|
8505
|
+
# Update properties of this object
|
8506
|
+
def update!(**args)
|
8507
|
+
@allow_net_admin = args[:allow_net_admin] if args.key?(:allow_net_admin)
|
8508
|
+
@autopilot_compatibility_auditing_enabled = args[:autopilot_compatibility_auditing_enabled] if args.key?(:autopilot_compatibility_auditing_enabled)
|
8509
|
+
end
|
8510
|
+
end
|
6386
8511
|
end
|
6387
8512
|
end
|
6388
8513
|
end
|