Class: Google::Apis::ContainerV1::Cluster
- Inherits:
-
Object
- Object
- Google::Apis::ContainerV1::Cluster
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/container_v1/classes.rb,
lib/google/apis/container_v1/representations.rb,
lib/google/apis/container_v1/representations.rb
Overview
A Google Kubernetes Engine cluster.
Instance Attribute Summary collapse
-
#addons_config ⇒ Google::Apis::ContainerV1::AddonsConfig
Configuration for the addons that can be automatically spun up in the cluster, enabling additional functionality.
-
#alpha_cluster_feature_gates ⇒ Array<String>
The list of user specified Kubernetes feature gates.
-
#anonymous_authentication_config ⇒ Google::Apis::ContainerV1::AnonymousAuthenticationConfig
AnonymousAuthenticationConfig defines the settings needed to limit endpoints that allow anonymous authentication.
-
#authenticator_groups_config ⇒ Google::Apis::ContainerV1::AuthenticatorGroupsConfig
Configuration for returning group information from authenticators.
-
#autopilot ⇒ Google::Apis::ContainerV1::Autopilot
Autopilot is the configuration for Autopilot settings on the cluster.
-
#autoscaling ⇒ Google::Apis::ContainerV1::ClusterAutoscaling
ClusterAutoscaling contains global, per-cluster information required by Cluster Autoscaler to automatically adjust the size of the cluster and create/ delete node pools based on the current needs.
-
#binary_authorization ⇒ Google::Apis::ContainerV1::BinaryAuthorization
Configuration for Binary Authorization.
-
#cluster_ipv4_cidr ⇒ String
The IP address range of the container pods in this cluster, in CIDR notation (e.g.
10.96.0. 0/14). -
#compliance_posture_config ⇒ Google::Apis::ContainerV1::CompliancePostureConfig
Deprecated: Compliance Posture is no longer supported.
-
#conditions ⇒ Array<Google::Apis::ContainerV1::StatusCondition>
Which conditions caused the current cluster state.
-
#confidential_nodes ⇒ Google::Apis::ContainerV1::ConfidentialNodes
ConfidentialNodes is configuration for the confidential nodes feature, which makes nodes run on confidential VMs.
-
#control_plane_egress ⇒ Google::Apis::ContainerV1::ControlPlaneEgress
ControlPlaneEgress defines the settings needed to enable control plane egress control.
-
#control_plane_endpoints_config ⇒ Google::Apis::ContainerV1::ControlPlaneEndpointsConfig
Configuration for all of the cluster's control plane endpoints.
-
#cost_management_config ⇒ Google::Apis::ContainerV1::CostManagementConfig
Configuration for fine-grained cost management feature.
-
#create_time ⇒ String
Output only.
-
#current_emulated_version ⇒ String
Output only.
-
#current_master_version ⇒ String
Output only.
-
#current_node_count ⇒ Fixnum
Output only.
-
#current_node_version ⇒ String
Output only.
-
#database_encryption ⇒ Google::Apis::ContainerV1::DatabaseEncryption
Configuration of etcd encryption.
-
#default_max_pods_constraint ⇒ Google::Apis::ContainerV1::MaxPodsConstraint
Constraints applied to pods.
-
#description ⇒ String
An optional description of this cluster.
-
#enable_k8s_beta_apis ⇒ Google::Apis::ContainerV1::K8sBetaApiConfig
K8sBetaAPIConfig , configuration for beta APIs Corresponds to the JSON property
enableK8sBetaApis. -
#enable_kubernetes_alpha ⇒ Boolean
(also: #enable_kubernetes_alpha?)
Kubernetes alpha features are enabled on this cluster.
-
#enable_tpu ⇒ Boolean
(also: #enable_tpu?)
Enable the ability to use Cloud TPUs in this cluster.
-
#endpoint ⇒ String
Output only.
-
#enterprise_config ⇒ Google::Apis::ContainerV1::EnterpriseConfig
EnterpriseConfig is the cluster enterprise configuration.
-
#etag ⇒ String
This checksum is computed by the server based on the value of cluster fields, and may be sent on update requests to ensure the client has an up-to-date value before proceeding.
-
#expire_time ⇒ String
Output only.
-
#fleet ⇒ Google::Apis::ContainerV1::Fleet
Fleet is the fleet configuration for the cluster.
-
#gke_auto_upgrade_config ⇒ Google::Apis::ContainerV1::GkeAutoUpgradeConfig
GkeAutoUpgradeConfig is the configuration for GKE auto upgrades.
-
#id ⇒ String
Output only.
-
#identity_service_config ⇒ Google::Apis::ContainerV1::IdentityServiceConfig
IdentityServiceConfig is configuration for Identity Service which allows customers to use external identity providers with the K8S API Corresponds to the JSON property
identityServiceConfig. -
#initial_cluster_version ⇒ String
The initial Kubernetes version for this cluster.
-
#initial_node_count ⇒ Fixnum
The number of nodes to create in this cluster.
-
#instance_group_urls ⇒ Array<String>
Output only.
-
#ip_allocation_policy ⇒ Google::Apis::ContainerV1::IpAllocationPolicy
Configuration for controlling how IPs are allocated in the cluster.
-
#label_fingerprint ⇒ String
The fingerprint of the set of labels for this cluster.
-
#legacy_abac ⇒ Google::Apis::ContainerV1::LegacyAbac
Configuration for the legacy Attribute Based Access Control authorization mode.
-
#location ⇒ String
Output only.
-
#locations ⇒ Array<String>
The list of Google Compute Engine zones in which the cluster's nodes should be located.
-
#logging_config ⇒ Google::Apis::ContainerV1::LoggingConfig
LoggingConfig is cluster logging configuration.
-
#logging_service ⇒ String
The logging service the cluster should use to write logs.
-
#maintenance_policy ⇒ Google::Apis::ContainerV1::MaintenancePolicy
MaintenancePolicy defines the maintenance policy to be used for the cluster.
-
#managed_machine_learning_diagnostics_config ⇒ Google::Apis::ContainerV1::ManagedMachineLearningDiagnosticsConfig
ManagedMachineLearningDiagnosticsConfig is the configuration for the GKE Managed Machine Learning Diagnostics pipeline.
-
#managed_opentelemetry_config ⇒ Google::Apis::ContainerV1::ManagedOpenTelemetryConfig
ManagedOpenTelemetryConfig is the configuration for the GKE Managed OpenTelemetry pipeline.
-
#master_auth ⇒ Google::Apis::ContainerV1::MasterAuth
The authentication information for accessing the master endpoint.
-
#master_authorized_networks_config ⇒ Google::Apis::ContainerV1::MasterAuthorizedNetworksConfig
Configuration options for the master authorized networks feature.
-
#mesh_certificates ⇒ Google::Apis::ContainerV1::MeshCertificates
Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
-
#monitoring_config ⇒ Google::Apis::ContainerV1::MonitoringConfig
MonitoringConfig is cluster monitoring configuration.
-
#monitoring_service ⇒ String
The monitoring service the cluster should use to write metrics.
-
#name ⇒ String
The name of this cluster.
-
#network ⇒ String
The name of the Google Compute Engine network to which the cluster is connected.
-
#network_config ⇒ Google::Apis::ContainerV1::NetworkConfig
NetworkConfig reports the relative names of network & subnetwork.
-
#network_policy ⇒ Google::Apis::ContainerV1::NetworkPolicy
Configuration options for the NetworkPolicy feature.
-
#node_config ⇒ Google::Apis::ContainerV1::NodeConfig
Parameters that describe the nodes in a cluster.
-
#node_creation_config ⇒ Google::Apis::ContainerV1::NodeCreationConfig
NodeCreationConfig defines the settings of node creation mode.
-
#node_ipv4_cidr_size ⇒ Fixnum
Output only.
-
#node_pool_auto_config ⇒ Google::Apis::ContainerV1::NodePoolAutoConfig
Node pool configs that apply to all auto-provisioned node pools in autopilot clusters and node auto-provisioning enabled clusters.
-
#node_pool_defaults ⇒ Google::Apis::ContainerV1::NodePoolDefaults
Subset of Nodepool message that has defaults.
-
#node_pools ⇒ Array<Google::Apis::ContainerV1::NodePool>
The node pools associated with this cluster.
-
#notification_config ⇒ Google::Apis::ContainerV1::NotificationConfig
NotificationConfig is the configuration of notifications.
-
#parent_product_config ⇒ Google::Apis::ContainerV1::ParentProductConfig
ParentProductConfig is the configuration of the parent product of the cluster.
-
#pod_autoscaling ⇒ Google::Apis::ContainerV1::PodAutoscaling
PodAutoscaling is used for configuration of parameters for workload autoscaling.
-
#private_cluster_config ⇒ Google::Apis::ContainerV1::PrivateClusterConfig
Configuration options for private clusters.
-
#rbac_binding_config ⇒ Google::Apis::ContainerV1::RbacBindingConfig
RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created.
-
#release_channel ⇒ Google::Apis::ContainerV1::ReleaseChannel
ReleaseChannel indicates which release channel a cluster is subscribed to.
-
#resource_labels ⇒ Hash<String,String>
The resource labels for the cluster to use to annotate any related Google Compute Engine resources.
-
#resource_usage_export_config ⇒ Google::Apis::ContainerV1::ResourceUsageExportConfig
Configuration for exporting cluster resource usages.
-
#rollback_safe_upgrade ⇒ Google::Apis::ContainerV1::RollbackSafeUpgrade
RollbackSafeUpgrade is the configuration for the rollback safe upgrade.
-
#satisfies_pzi ⇒ Boolean
(also: #satisfies_pzi?)
Output only.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
Output only.
-
#schedule_upgrade_config ⇒ Google::Apis::ContainerV1::ScheduleUpgradeConfig
Configuration for scheduled upgrades on the cluster.
-
#secret_manager_config ⇒ Google::Apis::ContainerV1::SecretManagerConfig
SecretManagerConfig is config for secret manager enablement.
-
#secret_sync_config ⇒ Google::Apis::ContainerV1::SecretSyncConfig
Configuration for sync Secret Manager secrets as k8s secrets.
-
#security_posture_config ⇒ Google::Apis::ContainerV1::SecurityPostureConfig
SecurityPostureConfig defines the flags needed to enable/disable features for the Security Posture API.
-
#self_link ⇒ String
Output only.
-
#services_ipv4_cidr ⇒ String
Output only.
-
#shielded_nodes ⇒ Google::Apis::ContainerV1::ShieldedNodes
Configuration of Shielded Nodes feature.
-
#status ⇒ String
Output only.
-
#status_message ⇒ String
Output only.
-
#subnetwork ⇒ String
The name of the Google Compute Engine subnetwork to which the cluster is connected.
-
#tpu_ipv4_cidr_block ⇒ String
Output only.
-
#user_managed_keys_config ⇒ Google::Apis::ContainerV1::UserManagedKeysConfig
UserManagedKeysConfig holds the resource address to Keys which are used for signing certs and token that are used for communication within cluster.
-
#vertical_pod_autoscaling ⇒ Google::Apis::ContainerV1::VerticalPodAutoscaling
VerticalPodAutoscaling contains global, per-cluster information required by Vertical Pod Autoscaler to automatically adjust the resources of pods controlled by it.
-
#workload_identity_config ⇒ Google::Apis::ContainerV1::WorkloadIdentityConfig
Configuration for the use of Kubernetes Service Accounts in IAM policies.
-
#zone ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Cluster
constructor
A new instance of Cluster.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Cluster
Returns a new instance of Cluster.
1822 1823 1824 |
# File 'lib/google/apis/container_v1/classes.rb', line 1822 def initialize(**args) update!(**args) end |
Instance Attribute Details
#addons_config ⇒ Google::Apis::ContainerV1::AddonsConfig
Configuration for the addons that can be automatically spun up in the cluster,
enabling additional functionality.
Corresponds to the JSON property addonsConfig
1273 1274 1275 |
# File 'lib/google/apis/container_v1/classes.rb', line 1273 def addons_config @addons_config end |
#alpha_cluster_feature_gates ⇒ Array<String>
The list of user specified Kubernetes feature gates. Each string represents
the activation status of a feature gate (e.g. "featureX=true" or "featureX=
false")
Corresponds to the JSON property alphaClusterFeatureGates
1280 1281 1282 |
# File 'lib/google/apis/container_v1/classes.rb', line 1280 def alpha_cluster_feature_gates @alpha_cluster_feature_gates end |
#anonymous_authentication_config ⇒ Google::Apis::ContainerV1::AnonymousAuthenticationConfig
AnonymousAuthenticationConfig defines the settings needed to limit endpoints
that allow anonymous authentication.
Corresponds to the JSON property anonymousAuthenticationConfig
1286 1287 1288 |
# File 'lib/google/apis/container_v1/classes.rb', line 1286 def anonymous_authentication_config @anonymous_authentication_config end |
#authenticator_groups_config ⇒ Google::Apis::ContainerV1::AuthenticatorGroupsConfig
Configuration for returning group information from authenticators.
Corresponds to the JSON property authenticatorGroupsConfig
1291 1292 1293 |
# File 'lib/google/apis/container_v1/classes.rb', line 1291 def authenticator_groups_config @authenticator_groups_config end |
#autopilot ⇒ Google::Apis::ContainerV1::Autopilot
Autopilot is the configuration for Autopilot settings on the cluster.
Corresponds to the JSON property autopilot
1296 1297 1298 |
# File 'lib/google/apis/container_v1/classes.rb', line 1296 def autopilot @autopilot end |
#autoscaling ⇒ Google::Apis::ContainerV1::ClusterAutoscaling
ClusterAutoscaling contains global, per-cluster information required by
Cluster Autoscaler to automatically adjust the size of the cluster and create/
delete node pools based on the current needs.
Corresponds to the JSON property autoscaling
1303 1304 1305 |
# File 'lib/google/apis/container_v1/classes.rb', line 1303 def autoscaling @autoscaling end |
#binary_authorization ⇒ Google::Apis::ContainerV1::BinaryAuthorization
Configuration for Binary Authorization.
Corresponds to the JSON property binaryAuthorization
1308 1309 1310 |
# File 'lib/google/apis/container_v1/classes.rb', line 1308 def @binary_authorization end |
#cluster_ipv4_cidr ⇒ String
The IP address range of the container pods in this cluster, in CIDR notation (e.g. 10.96.0.
0/14). Leave blank to have one automatically chosen or specify a /14 block
in 10.0.0.0/8.
Corresponds to the JSON property clusterIpv4Cidr
1316 1317 1318 |
# File 'lib/google/apis/container_v1/classes.rb', line 1316 def cluster_ipv4_cidr @cluster_ipv4_cidr end |
#compliance_posture_config ⇒ Google::Apis::ContainerV1::CompliancePostureConfig
Deprecated: Compliance Posture is no longer supported. For more details, see
https://cloud.google.com/kubernetes-engine/docs/deprecations/posture-
management-deprecation. CompliancePostureConfig defines the settings needed to
enable/disable features for the Compliance Posture.
Corresponds to the JSON property compliancePostureConfig
1324 1325 1326 |
# File 'lib/google/apis/container_v1/classes.rb', line 1324 def compliance_posture_config @compliance_posture_config end |
#conditions ⇒ Array<Google::Apis::ContainerV1::StatusCondition>
Which conditions caused the current cluster state.
Corresponds to the JSON property conditions
1329 1330 1331 |
# File 'lib/google/apis/container_v1/classes.rb', line 1329 def conditions @conditions end |
#confidential_nodes ⇒ Google::Apis::ContainerV1::ConfidentialNodes
ConfidentialNodes is configuration for the confidential nodes feature, which
makes nodes run on confidential VMs.
Corresponds to the JSON property confidentialNodes
1335 1336 1337 |
# File 'lib/google/apis/container_v1/classes.rb', line 1335 def confidential_nodes @confidential_nodes end |
#control_plane_egress ⇒ Google::Apis::ContainerV1::ControlPlaneEgress
ControlPlaneEgress defines the settings needed to enable control plane egress
control.
Corresponds to the JSON property controlPlaneEgress
1341 1342 1343 |
# File 'lib/google/apis/container_v1/classes.rb', line 1341 def control_plane_egress @control_plane_egress end |
#control_plane_endpoints_config ⇒ Google::Apis::ContainerV1::ControlPlaneEndpointsConfig
Configuration for all of the cluster's control plane endpoints.
Corresponds to the JSON property controlPlaneEndpointsConfig
1346 1347 1348 |
# File 'lib/google/apis/container_v1/classes.rb', line 1346 def control_plane_endpoints_config @control_plane_endpoints_config end |
#cost_management_config ⇒ Google::Apis::ContainerV1::CostManagementConfig
Configuration for fine-grained cost management feature.
Corresponds to the JSON property costManagementConfig
1351 1352 1353 |
# File 'lib/google/apis/container_v1/classes.rb', line 1351 def cost_management_config @cost_management_config end |
#create_time ⇒ String
Output only. The time the cluster was created, in RFC3339 text format.
Corresponds to the JSON property createTime
1357 1358 1359 |
# File 'lib/google/apis/container_v1/classes.rb', line 1357 def create_time @create_time end |
#current_emulated_version ⇒ String
Output only. The current emulated version of the master endpoint. The version
is in minor version format, e.g. 1.30. No value or empty string means the
cluster has no emulated version.
Corresponds to the JSON property currentEmulatedVersion
1364 1365 1366 |
# File 'lib/google/apis/container_v1/classes.rb', line 1364 def current_emulated_version @current_emulated_version end |
#current_master_version ⇒ String
Output only. The current software version of the master endpoint.
Corresponds to the JSON property currentMasterVersion
1369 1370 1371 |
# File 'lib/google/apis/container_v1/classes.rb', line 1369 def current_master_version @current_master_version end |
#current_node_count ⇒ Fixnum
Output only. The number of nodes currently in the cluster. Deprecated. Call
Kubernetes API directly to retrieve node information.
Corresponds to the JSON property currentNodeCount
1375 1376 1377 |
# File 'lib/google/apis/container_v1/classes.rb', line 1375 def current_node_count @current_node_count end |
#current_node_version ⇒ String
Output only. Deprecated, use NodePools.version
instead. The current version of the node software components. If they are
currently at multiple versions because they're in the process of being
upgraded, this reflects the minimum version of all nodes.
Corresponds to the JSON property currentNodeVersion
1384 1385 1386 |
# File 'lib/google/apis/container_v1/classes.rb', line 1384 def current_node_version @current_node_version end |
#database_encryption ⇒ Google::Apis::ContainerV1::DatabaseEncryption
Configuration of etcd encryption.
Corresponds to the JSON property databaseEncryption
1389 1390 1391 |
# File 'lib/google/apis/container_v1/classes.rb', line 1389 def database_encryption @database_encryption end |
#default_max_pods_constraint ⇒ Google::Apis::ContainerV1::MaxPodsConstraint
Constraints applied to pods.
Corresponds to the JSON property defaultMaxPodsConstraint
1394 1395 1396 |
# File 'lib/google/apis/container_v1/classes.rb', line 1394 def default_max_pods_constraint @default_max_pods_constraint end |
#description ⇒ String
An optional description of this cluster.
Corresponds to the JSON property description
1399 1400 1401 |
# File 'lib/google/apis/container_v1/classes.rb', line 1399 def description @description end |
#enable_k8s_beta_apis ⇒ Google::Apis::ContainerV1::K8sBetaApiConfig
K8sBetaAPIConfig , configuration for beta APIs
Corresponds to the JSON property enableK8sBetaApis
1404 1405 1406 |
# File 'lib/google/apis/container_v1/classes.rb', line 1404 def enable_k8s_beta_apis @enable_k8s_beta_apis end |
#enable_kubernetes_alpha ⇒ Boolean Also known as: enable_kubernetes_alpha?
Kubernetes alpha features are enabled on this cluster. This includes alpha API
groups (e.g. v1alpha1) and features that may not be production ready in the
kubernetes version of the master and nodes. The cluster has no SLA for uptime
and master/node upgrades are disabled. Alpha enabled clusters are
automatically deleted thirty days after creation.
Corresponds to the JSON property enableKubernetesAlpha
1413 1414 1415 |
# File 'lib/google/apis/container_v1/classes.rb', line 1413 def enable_kubernetes_alpha @enable_kubernetes_alpha end |
#enable_tpu ⇒ Boolean Also known as: enable_tpu?
Enable the ability to use Cloud TPUs in this cluster. This field is deprecated
due to the deprecation of 2VM TPU. The end of life date for 2VM TPU is 2025-04-
25.
Corresponds to the JSON property enableTpu
1421 1422 1423 |
# File 'lib/google/apis/container_v1/classes.rb', line 1421 def enable_tpu @enable_tpu end |
#endpoint ⇒ String
Output only. The IP address of this cluster's master endpoint. The endpoint
can be accessed from the internet at https://username:password@endpoint/.
See the masterAuth property of this resource for username and password
information.
Corresponds to the JSON property endpoint
1430 1431 1432 |
# File 'lib/google/apis/container_v1/classes.rb', line 1430 def endpoint @endpoint end |
#enterprise_config ⇒ Google::Apis::ContainerV1::EnterpriseConfig
EnterpriseConfig is the cluster enterprise configuration. Deprecated: GKE
Enterprise features are now available without an Enterprise tier.
Corresponds to the JSON property enterpriseConfig
1436 1437 1438 |
# File 'lib/google/apis/container_v1/classes.rb', line 1436 def enterprise_config @enterprise_config end |
#etag ⇒ String
This checksum is computed by the server based on the value of cluster fields,
and may be sent on update requests to ensure the client has an up-to-date
value before proceeding.
Corresponds to the JSON property etag
1443 1444 1445 |
# File 'lib/google/apis/container_v1/classes.rb', line 1443 def etag @etag end |
#expire_time ⇒ String
Output only. The time the cluster will be automatically deleted in RFC3339 text format.
Corresponds to the JSON property expireTime
1449 1450 1451 |
# File 'lib/google/apis/container_v1/classes.rb', line 1449 def expire_time @expire_time end |
#fleet ⇒ Google::Apis::ContainerV1::Fleet
Fleet is the fleet configuration for the cluster.
Corresponds to the JSON property fleet
1454 1455 1456 |
# File 'lib/google/apis/container_v1/classes.rb', line 1454 def fleet @fleet end |
#gke_auto_upgrade_config ⇒ Google::Apis::ContainerV1::GkeAutoUpgradeConfig
GkeAutoUpgradeConfig is the configuration for GKE auto upgrades.
Corresponds to the JSON property gkeAutoUpgradeConfig
1459 1460 1461 |
# File 'lib/google/apis/container_v1/classes.rb', line 1459 def gke_auto_upgrade_config @gke_auto_upgrade_config end |
#id ⇒ String
Output only. Unique id for the cluster.
Corresponds to the JSON property id
1464 1465 1466 |
# File 'lib/google/apis/container_v1/classes.rb', line 1464 def id @id end |
#identity_service_config ⇒ Google::Apis::ContainerV1::IdentityServiceConfig
IdentityServiceConfig is configuration for Identity Service which allows
customers to use external identity providers with the K8S API
Corresponds to the JSON property identityServiceConfig
1470 1471 1472 |
# File 'lib/google/apis/container_v1/classes.rb', line 1470 def identity_service_config @identity_service_config end |
#initial_cluster_version ⇒ String
The initial Kubernetes version for this cluster. Valid versions are those
found in validMasterVersions returned by getServerConfig. The version can be
upgraded over time; such upgrades are reflected in currentMasterVersion and
currentNodeVersion. Users may specify either explicit versions offered by
Kubernetes Engine or version aliases, which have the following behavior: - "
latest": picks the highest valid Kubernetes version - "1.X": picks the highest
valid patch+gke.N patch in the 1.X version - "1.X.Y": picks the highest valid
gke.N patch in the 1.X.Y version - "1.X.Y-gke.N": picks an explicit Kubernetes
version - "","-": picks the default Kubernetes version
Corresponds to the JSON property initialClusterVersion
1483 1484 1485 |
# File 'lib/google/apis/container_v1/classes.rb', line 1483 def initial_cluster_version @initial_cluster_version end |
#initial_node_count ⇒ Fixnum
The number of nodes to create in this cluster. You must ensure that your
Compute Engine resource quota is
sufficient for this number of instances. You must also have available firewall
and routes quota. For requests, this field should only be used in lieu of a "
node_pool" object, since this configuration (along with the "node_config")
will be used to create a "NodePool" object with an auto-generated name. Do not
use this and a node_pool at the same time. This field is deprecated, use
node_pool.initial_node_count instead.
Corresponds to the JSON property initialNodeCount
1495 1496 1497 |
# File 'lib/google/apis/container_v1/classes.rb', line 1495 def initial_node_count @initial_node_count end |
#instance_group_urls ⇒ Array<String>
Output only. Deprecated. Use node_pools.instance_group_urls.
Corresponds to the JSON property instanceGroupUrls
1500 1501 1502 |
# File 'lib/google/apis/container_v1/classes.rb', line 1500 def instance_group_urls @instance_group_urls end |
#ip_allocation_policy ⇒ Google::Apis::ContainerV1::IpAllocationPolicy
Configuration for controlling how IPs are allocated in the cluster.
Corresponds to the JSON property ipAllocationPolicy
1505 1506 1507 |
# File 'lib/google/apis/container_v1/classes.rb', line 1505 def ip_allocation_policy @ip_allocation_policy end |
#label_fingerprint ⇒ String
The fingerprint of the set of labels for this cluster.
Corresponds to the JSON property labelFingerprint
1510 1511 1512 |
# File 'lib/google/apis/container_v1/classes.rb', line 1510 def label_fingerprint @label_fingerprint end |
#legacy_abac ⇒ Google::Apis::ContainerV1::LegacyAbac
Configuration for the legacy Attribute Based Access Control authorization mode.
Corresponds to the JSON property legacyAbac
1515 1516 1517 |
# File 'lib/google/apis/container_v1/classes.rb', line 1515 def legacy_abac @legacy_abac end |
#location ⇒ String
1523 1524 1525 |
# File 'lib/google/apis/container_v1/classes.rb', line 1523 def location @location end |
#locations ⇒ Array<String>
The list of Google Compute Engine zones in which the cluster's nodes should be located. This
field provides a default value if NodePool.Locations are not specified during node pool
creation. Warning: changing cluster locations will update the NodePool.
Locations of all node
pools and will result in nodes being added and/or removed.
Corresponds to the JSON property locations
1536 1537 1538 |
# File 'lib/google/apis/container_v1/classes.rb', line 1536 def locations @locations end |
#logging_config ⇒ Google::Apis::ContainerV1::LoggingConfig
LoggingConfig is cluster logging configuration.
Corresponds to the JSON property loggingConfig
1541 1542 1543 |
# File 'lib/google/apis/container_v1/classes.rb', line 1541 def logging_config @logging_config end |
#logging_service ⇒ String
The logging service the cluster should use to write logs. Currently available
options: * logging.googleapis.com/kubernetes - The Cloud Logging service
with a Kubernetes-native resource model * logging.googleapis.com - The
legacy Cloud Logging service (no longer available as of GKE 1.15). * none -
no logs will be exported from the cluster. If left as an empty string,logging.
googleapis.com/kubernetes will be used for GKE 1.14+ or logging.googleapis.
com for earlier versions.
Corresponds to the JSON property loggingService
1552 1553 1554 |
# File 'lib/google/apis/container_v1/classes.rb', line 1552 def logging_service @logging_service end |
#maintenance_policy ⇒ Google::Apis::ContainerV1::MaintenancePolicy
MaintenancePolicy defines the maintenance policy to be used for the cluster.
Corresponds to the JSON property maintenancePolicy
1557 1558 1559 |
# File 'lib/google/apis/container_v1/classes.rb', line 1557 def maintenance_policy @maintenance_policy end |
#managed_machine_learning_diagnostics_config ⇒ Google::Apis::ContainerV1::ManagedMachineLearningDiagnosticsConfig
ManagedMachineLearningDiagnosticsConfig is the configuration for the GKE
Managed Machine Learning Diagnostics pipeline.
Corresponds to the JSON property managedMachineLearningDiagnosticsConfig
1563 1564 1565 |
# File 'lib/google/apis/container_v1/classes.rb', line 1563 def managed_machine_learning_diagnostics_config @managed_machine_learning_diagnostics_config end |
#managed_opentelemetry_config ⇒ Google::Apis::ContainerV1::ManagedOpenTelemetryConfig
ManagedOpenTelemetryConfig is the configuration for the GKE Managed
OpenTelemetry pipeline.
Corresponds to the JSON property managedOpentelemetryConfig
1569 1570 1571 |
# File 'lib/google/apis/container_v1/classes.rb', line 1569 def managed_opentelemetry_config @managed_opentelemetry_config end |
#master_auth ⇒ Google::Apis::ContainerV1::MasterAuth
The authentication information for accessing the master endpoint.
Authentication can be done using HTTP basic auth or using client certificates.
Corresponds to the JSON property masterAuth
1575 1576 1577 |
# File 'lib/google/apis/container_v1/classes.rb', line 1575 def master_auth @master_auth end |
#master_authorized_networks_config ⇒ Google::Apis::ContainerV1::MasterAuthorizedNetworksConfig
Configuration options for the master authorized networks feature. Enabled
master authorized networks will disallow all external traffic to access
Kubernetes master through HTTPS except traffic from the given CIDR blocks,
Google Compute Engine Public IPs and Google Prod IPs.
Corresponds to the JSON property masterAuthorizedNetworksConfig
1583 1584 1585 |
# File 'lib/google/apis/container_v1/classes.rb', line 1583 def @master_authorized_networks_config end |
#mesh_certificates ⇒ Google::Apis::ContainerV1::MeshCertificates
Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
Corresponds to the JSON property meshCertificates
1588 1589 1590 |
# File 'lib/google/apis/container_v1/classes.rb', line 1588 def mesh_certificates @mesh_certificates end |
#monitoring_config ⇒ Google::Apis::ContainerV1::MonitoringConfig
MonitoringConfig is cluster monitoring configuration.
Corresponds to the JSON property monitoringConfig
1593 1594 1595 |
# File 'lib/google/apis/container_v1/classes.rb', line 1593 def monitoring_config @monitoring_config end |
#monitoring_service ⇒ String
The monitoring service the cluster should use to write metrics. Currently
available options: * monitoring.googleapis.com/kubernetes - The Cloud
Monitoring service with a Kubernetes-native resource model * monitoring.
googleapis.com - The legacy Cloud Monitoring service (no longer available as
of GKE 1.15). * none - No metrics will be exported from the cluster. If left
as an empty string,monitoring.googleapis.com/kubernetes will be used for GKE
1.14+ or monitoring.googleapis.com for earlier versions.
Corresponds to the JSON property monitoringService
1604 1605 1606 |
# File 'lib/google/apis/container_v1/classes.rb', line 1604 def monitoring_service @monitoring_service end |
#name ⇒ String
The name of this cluster. The name must be unique within this project and
location (e.g. zone or region), and can be up to 40 characters with the
following restrictions: * Lowercase letters, numbers, and hyphens only. * Must
start with a letter. * Must end with a number or a letter.
Corresponds to the JSON property name
1612 1613 1614 |
# File 'lib/google/apis/container_v1/classes.rb', line 1612 def name @name end |
#network ⇒ String
The name of the Google Compute Engine network to which the cluster is
connected. If left unspecified, the default network will be used.
Corresponds to the JSON property network
1619 1620 1621 |
# File 'lib/google/apis/container_v1/classes.rb', line 1619 def network @network end |
#network_config ⇒ Google::Apis::ContainerV1::NetworkConfig
NetworkConfig reports the relative names of network & subnetwork.
Corresponds to the JSON property networkConfig
1624 1625 1626 |
# File 'lib/google/apis/container_v1/classes.rb', line 1624 def network_config @network_config end |
#network_policy ⇒ Google::Apis::ContainerV1::NetworkPolicy
Configuration options for the NetworkPolicy feature. https://kubernetes.io/
docs/concepts/services-networking/networkpolicies/
Corresponds to the JSON property networkPolicy
1630 1631 1632 |
# File 'lib/google/apis/container_v1/classes.rb', line 1630 def network_policy @network_policy end |
#node_config ⇒ Google::Apis::ContainerV1::NodeConfig
Parameters that describe the nodes in a cluster. GKE Autopilot clusters do not
recognize parameters in NodeConfig. Use AutoprovisioningNodePoolDefaults
instead.
Corresponds to the JSON property nodeConfig
1637 1638 1639 |
# File 'lib/google/apis/container_v1/classes.rb', line 1637 def node_config @node_config end |
#node_creation_config ⇒ Google::Apis::ContainerV1::NodeCreationConfig
NodeCreationConfig defines the settings of node creation mode.
Corresponds to the JSON property nodeCreationConfig
1642 1643 1644 |
# File 'lib/google/apis/container_v1/classes.rb', line 1642 def node_creation_config @node_creation_config end |
#node_ipv4_cidr_size ⇒ Fixnum
Output only. The size of the address space on each node for hosting containers.
This is provisioned from within the container_ipv4_cidr range. This field
will only be set when cluster is in route-based network mode.
Corresponds to the JSON property nodeIpv4CidrSize
1649 1650 1651 |
# File 'lib/google/apis/container_v1/classes.rb', line 1649 def node_ipv4_cidr_size @node_ipv4_cidr_size end |
#node_pool_auto_config ⇒ Google::Apis::ContainerV1::NodePoolAutoConfig
Node pool configs that apply to all auto-provisioned node pools in autopilot
clusters and node auto-provisioning enabled clusters.
Corresponds to the JSON property nodePoolAutoConfig
1655 1656 1657 |
# File 'lib/google/apis/container_v1/classes.rb', line 1655 def node_pool_auto_config @node_pool_auto_config end |
#node_pool_defaults ⇒ Google::Apis::ContainerV1::NodePoolDefaults
Subset of Nodepool message that has defaults.
Corresponds to the JSON property nodePoolDefaults
1660 1661 1662 |
# File 'lib/google/apis/container_v1/classes.rb', line 1660 def node_pool_defaults @node_pool_defaults end |
#node_pools ⇒ Array<Google::Apis::ContainerV1::NodePool>
The node pools associated with this cluster. This field should not be set if "
node_config" or "initial_node_count" are specified.
Corresponds to the JSON property nodePools
1666 1667 1668 |
# File 'lib/google/apis/container_v1/classes.rb', line 1666 def node_pools @node_pools end |
#notification_config ⇒ Google::Apis::ContainerV1::NotificationConfig
NotificationConfig is the configuration of notifications.
Corresponds to the JSON property notificationConfig
1671 1672 1673 |
# File 'lib/google/apis/container_v1/classes.rb', line 1671 def notification_config @notification_config end |
#parent_product_config ⇒ Google::Apis::ContainerV1::ParentProductConfig
ParentProductConfig is the configuration of the parent product of the cluster.
This field is used by Google internal products that are built on top of a GKE
cluster and take the ownership of the cluster.
Corresponds to the JSON property parentProductConfig
1678 1679 1680 |
# File 'lib/google/apis/container_v1/classes.rb', line 1678 def parent_product_config @parent_product_config end |
#pod_autoscaling ⇒ Google::Apis::ContainerV1::PodAutoscaling
PodAutoscaling is used for configuration of parameters for workload
autoscaling.
Corresponds to the JSON property podAutoscaling
1684 1685 1686 |
# File 'lib/google/apis/container_v1/classes.rb', line 1684 def pod_autoscaling @pod_autoscaling end |
#private_cluster_config ⇒ Google::Apis::ContainerV1::PrivateClusterConfig
Configuration options for private clusters.
Corresponds to the JSON property privateClusterConfig
1689 1690 1691 |
# File 'lib/google/apis/container_v1/classes.rb', line 1689 def private_cluster_config @private_cluster_config end |
#rbac_binding_config ⇒ Google::Apis::ContainerV1::RbacBindingConfig
RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings
that can be created.
Corresponds to the JSON property rbacBindingConfig
1695 1696 1697 |
# File 'lib/google/apis/container_v1/classes.rb', line 1695 def rbac_binding_config @rbac_binding_config end |
#release_channel ⇒ Google::Apis::ContainerV1::ReleaseChannel
ReleaseChannel indicates which release channel a cluster is subscribed to.
Release channels are arranged in order of risk. When a cluster is subscribed
to a release channel, Google maintains both the master version and the node
version. Node auto-upgrade defaults to true and cannot be disabled.
Corresponds to the JSON property releaseChannel
1703 1704 1705 |
# File 'lib/google/apis/container_v1/classes.rb', line 1703 def release_channel @release_channel end |
#resource_labels ⇒ Hash<String,String>
The resource labels for the cluster to use to annotate any related Google
Compute Engine resources.
Corresponds to the JSON property resourceLabels
1709 1710 1711 |
# File 'lib/google/apis/container_v1/classes.rb', line 1709 def resource_labels @resource_labels end |
#resource_usage_export_config ⇒ Google::Apis::ContainerV1::ResourceUsageExportConfig
Configuration for exporting cluster resource usages.
Corresponds to the JSON property resourceUsageExportConfig
1714 1715 1716 |
# File 'lib/google/apis/container_v1/classes.rb', line 1714 def resource_usage_export_config @resource_usage_export_config end |
#rollback_safe_upgrade ⇒ Google::Apis::ContainerV1::RollbackSafeUpgrade
RollbackSafeUpgrade is the configuration for the rollback safe upgrade.
Corresponds to the JSON property rollbackSafeUpgrade
1719 1720 1721 |
# File 'lib/google/apis/container_v1/classes.rb', line 1719 def rollback_safe_upgrade @rollback_safe_upgrade end |
#satisfies_pzi ⇒ Boolean Also known as: satisfies_pzi?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzi
1724 1725 1726 |
# File 'lib/google/apis/container_v1/classes.rb', line 1724 def satisfies_pzi @satisfies_pzi end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzs
1730 1731 1732 |
# File 'lib/google/apis/container_v1/classes.rb', line 1730 def satisfies_pzs @satisfies_pzs end |
#schedule_upgrade_config ⇒ Google::Apis::ContainerV1::ScheduleUpgradeConfig
Configuration for scheduled upgrades on the cluster.
Corresponds to the JSON property scheduleUpgradeConfig
1736 1737 1738 |
# File 'lib/google/apis/container_v1/classes.rb', line 1736 def schedule_upgrade_config @schedule_upgrade_config end |
#secret_manager_config ⇒ Google::Apis::ContainerV1::SecretManagerConfig
SecretManagerConfig is config for secret manager enablement.
Corresponds to the JSON property secretManagerConfig
1741 1742 1743 |
# File 'lib/google/apis/container_v1/classes.rb', line 1741 def secret_manager_config @secret_manager_config end |
#secret_sync_config ⇒ Google::Apis::ContainerV1::SecretSyncConfig
Configuration for sync Secret Manager secrets as k8s secrets.
Corresponds to the JSON property secretSyncConfig
1746 1747 1748 |
# File 'lib/google/apis/container_v1/classes.rb', line 1746 def secret_sync_config @secret_sync_config end |
#security_posture_config ⇒ Google::Apis::ContainerV1::SecurityPostureConfig
SecurityPostureConfig defines the flags needed to enable/disable features for
the Security Posture API.
Corresponds to the JSON property securityPostureConfig
1752 1753 1754 |
# File 'lib/google/apis/container_v1/classes.rb', line 1752 def security_posture_config @security_posture_config end |
#self_link ⇒ String
Output only. Server-defined URL for the resource.
Corresponds to the JSON property selfLink
1757 1758 1759 |
# File 'lib/google/apis/container_v1/classes.rb', line 1757 def self_link @self_link end |
#services_ipv4_cidr ⇒ String
Output only. The IP address range of the Kubernetes services in this cluster,
in CIDR
notation (e.g. 1.2.3.4/29). Service addresses are typically put in the last
/16 from the container CIDR.
Corresponds to the JSON property servicesIpv4Cidr
1765 1766 1767 |
# File 'lib/google/apis/container_v1/classes.rb', line 1765 def services_ipv4_cidr @services_ipv4_cidr end |
#shielded_nodes ⇒ Google::Apis::ContainerV1::ShieldedNodes
Configuration of Shielded Nodes feature.
Corresponds to the JSON property shieldedNodes
1770 1771 1772 |
# File 'lib/google/apis/container_v1/classes.rb', line 1770 def shielded_nodes @shielded_nodes end |
#status ⇒ String
Output only. The current status of this cluster.
Corresponds to the JSON property status
1775 1776 1777 |
# File 'lib/google/apis/container_v1/classes.rb', line 1775 def status @status end |
#status_message ⇒ String
Output only. Deprecated. Use conditions instead. Additional information about
the current status of this cluster, if available.
Corresponds to the JSON property statusMessage
1781 1782 1783 |
# File 'lib/google/apis/container_v1/classes.rb', line 1781 def @status_message end |
#subnetwork ⇒ String
The name of the Google Compute Engine subnetwork to which the cluster is connected.
Corresponds to the JSON property subnetwork
1787 1788 1789 |
# File 'lib/google/apis/container_v1/classes.rb', line 1787 def subnetwork @subnetwork end |
#tpu_ipv4_cidr_block ⇒ String
Output only. The IP address range of the Cloud TPUs in this cluster, in CIDR notation (e.g.
1.2.3.4/29). This field is deprecated due to the deprecation of 2VM TPU. The
end of life date for 2VM TPU is 2025-04-25.
Corresponds to the JSON property tpuIpv4CidrBlock
1795 1796 1797 |
# File 'lib/google/apis/container_v1/classes.rb', line 1795 def tpu_ipv4_cidr_block @tpu_ipv4_cidr_block end |
#user_managed_keys_config ⇒ Google::Apis::ContainerV1::UserManagedKeysConfig
UserManagedKeysConfig holds the resource address to Keys which are used for
signing certs and token that are used for communication within cluster.
Corresponds to the JSON property userManagedKeysConfig
1801 1802 1803 |
# File 'lib/google/apis/container_v1/classes.rb', line 1801 def user_managed_keys_config @user_managed_keys_config end |
#vertical_pod_autoscaling ⇒ Google::Apis::ContainerV1::VerticalPodAutoscaling
VerticalPodAutoscaling contains global, per-cluster information required by
Vertical Pod Autoscaler to automatically adjust the resources of pods
controlled by it.
Corresponds to the JSON property verticalPodAutoscaling
1808 1809 1810 |
# File 'lib/google/apis/container_v1/classes.rb', line 1808 def vertical_pod_autoscaling @vertical_pod_autoscaling end |
#workload_identity_config ⇒ Google::Apis::ContainerV1::WorkloadIdentityConfig
Configuration for the use of Kubernetes Service Accounts in IAM policies.
Corresponds to the JSON property workloadIdentityConfig
1813 1814 1815 |
# File 'lib/google/apis/container_v1/classes.rb', line 1813 def workload_identity_config @workload_identity_config end |
#zone ⇒ String
Output only. The name of the Google Compute Engine zone in which the cluster resides. This field is
deprecated, use location instead.
Corresponds to the JSON property zone
1820 1821 1822 |
# File 'lib/google/apis/container_v1/classes.rb', line 1820 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 |
# File 'lib/google/apis/container_v1/classes.rb', line 1827 def update!(**args) @addons_config = args[:addons_config] if args.key?(:addons_config) @alpha_cluster_feature_gates = args[:alpha_cluster_feature_gates] if args.key?(:alpha_cluster_feature_gates) @anonymous_authentication_config = args[:anonymous_authentication_config] if args.key?(:anonymous_authentication_config) @authenticator_groups_config = args[:authenticator_groups_config] if args.key?(:authenticator_groups_config) @autopilot = args[:autopilot] if args.key?(:autopilot) @autoscaling = args[:autoscaling] if args.key?(:autoscaling) @binary_authorization = args[:binary_authorization] if args.key?(:binary_authorization) @cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr) @compliance_posture_config = args[:compliance_posture_config] if args.key?(:compliance_posture_config) @conditions = args[:conditions] if args.key?(:conditions) @confidential_nodes = args[:confidential_nodes] if args.key?(:confidential_nodes) @control_plane_egress = args[:control_plane_egress] if args.key?(:control_plane_egress) @control_plane_endpoints_config = args[:control_plane_endpoints_config] if args.key?(:control_plane_endpoints_config) @cost_management_config = args[:cost_management_config] if args.key?(:cost_management_config) @create_time = args[:create_time] if args.key?(:create_time) @current_emulated_version = args[:current_emulated_version] if args.key?(:current_emulated_version) @current_master_version = args[:current_master_version] if args.key?(:current_master_version) @current_node_count = args[:current_node_count] if args.key?(:current_node_count) @current_node_version = args[:current_node_version] if args.key?(:current_node_version) @database_encryption = args[:database_encryption] if args.key?(:database_encryption) @default_max_pods_constraint = args[:default_max_pods_constraint] if args.key?(:default_max_pods_constraint) @description = args[:description] if args.key?(:description) @enable_k8s_beta_apis = args[:enable_k8s_beta_apis] if args.key?(:enable_k8s_beta_apis) @enable_kubernetes_alpha = args[:enable_kubernetes_alpha] if args.key?(:enable_kubernetes_alpha) @enable_tpu = args[:enable_tpu] if args.key?(:enable_tpu) @endpoint = args[:endpoint] if args.key?(:endpoint) @enterprise_config = args[:enterprise_config] if args.key?(:enterprise_config) @etag = args[:etag] if args.key?(:etag) @expire_time = args[:expire_time] if args.key?(:expire_time) @fleet = args[:fleet] if args.key?(:fleet) @gke_auto_upgrade_config = args[:gke_auto_upgrade_config] if args.key?(:gke_auto_upgrade_config) @id = args[:id] if args.key?(:id) @identity_service_config = args[:identity_service_config] if args.key?(:identity_service_config) @initial_cluster_version = args[:initial_cluster_version] if args.key?(:initial_cluster_version) @initial_node_count = args[:initial_node_count] if args.key?(:initial_node_count) @instance_group_urls = args[:instance_group_urls] if args.key?(:instance_group_urls) @ip_allocation_policy = args[:ip_allocation_policy] if args.key?(:ip_allocation_policy) @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) @legacy_abac = args[:legacy_abac] if args.key?(:legacy_abac) @location = args[:location] if args.key?(:location) @locations = args[:locations] if args.key?(:locations) @logging_config = args[:logging_config] if args.key?(:logging_config) @logging_service = args[:logging_service] if args.key?(:logging_service) @maintenance_policy = args[:maintenance_policy] if args.key?(:maintenance_policy) @managed_machine_learning_diagnostics_config = args[:managed_machine_learning_diagnostics_config] if args.key?(:managed_machine_learning_diagnostics_config) @managed_opentelemetry_config = args[:managed_opentelemetry_config] if args.key?(:managed_opentelemetry_config) @master_auth = args[:master_auth] if args.key?(:master_auth) @master_authorized_networks_config = args[:master_authorized_networks_config] if args.key?(:master_authorized_networks_config) @mesh_certificates = args[:mesh_certificates] if args.key?(:mesh_certificates) @monitoring_config = args[:monitoring_config] if args.key?(:monitoring_config) @monitoring_service = args[:monitoring_service] if args.key?(:monitoring_service) @name = args[:name] if args.key?(:name) @network = args[:network] if args.key?(:network) @network_config = args[:network_config] if args.key?(:network_config) @network_policy = args[:network_policy] if args.key?(:network_policy) @node_config = args[:node_config] if args.key?(:node_config) @node_creation_config = args[:node_creation_config] if args.key?(:node_creation_config) @node_ipv4_cidr_size = args[:node_ipv4_cidr_size] if args.key?(:node_ipv4_cidr_size) @node_pool_auto_config = args[:node_pool_auto_config] if args.key?(:node_pool_auto_config) @node_pool_defaults = args[:node_pool_defaults] if args.key?(:node_pool_defaults) @node_pools = args[:node_pools] if args.key?(:node_pools) @notification_config = args[:notification_config] if args.key?(:notification_config) @parent_product_config = args[:parent_product_config] if args.key?(:parent_product_config) @pod_autoscaling = args[:pod_autoscaling] if args.key?(:pod_autoscaling) @private_cluster_config = args[:private_cluster_config] if args.key?(:private_cluster_config) @rbac_binding_config = args[:rbac_binding_config] if args.key?(:rbac_binding_config) @release_channel = args[:release_channel] if args.key?(:release_channel) @resource_labels = args[:resource_labels] if args.key?(:resource_labels) @resource_usage_export_config = args[:resource_usage_export_config] if args.key?(:resource_usage_export_config) @rollback_safe_upgrade = args[:rollback_safe_upgrade] if args.key?(:rollback_safe_upgrade) @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi) @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs) @schedule_upgrade_config = args[:schedule_upgrade_config] if args.key?(:schedule_upgrade_config) @secret_manager_config = args[:secret_manager_config] if args.key?(:secret_manager_config) @secret_sync_config = args[:secret_sync_config] if args.key?(:secret_sync_config) @security_posture_config = args[:security_posture_config] if args.key?(:security_posture_config) @self_link = args[:self_link] if args.key?(:self_link) @services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr) @shielded_nodes = args[:shielded_nodes] if args.key?(:shielded_nodes) @status = args[:status] if args.key?(:status) @status_message = args[:status_message] if args.key?(:status_message) @subnetwork = args[:subnetwork] if args.key?(:subnetwork) @tpu_ipv4_cidr_block = args[:tpu_ipv4_cidr_block] if args.key?(:tpu_ipv4_cidr_block) @user_managed_keys_config = args[:user_managed_keys_config] if args.key?(:user_managed_keys_config) @vertical_pod_autoscaling = args[:vertical_pod_autoscaling] if args.key?(:vertical_pod_autoscaling) @workload_identity_config = args[:workload_identity_config] if args.key?(:workload_identity_config) @zone = args[:zone] if args.key?(:zone) end |