Class: Google::Apis::ContainerV1beta1::NodeConfig
- Inherits:
-
Object
- Object
- Google::Apis::ContainerV1beta1::NodeConfig
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/container_v1beta1/classes.rb,
lib/google/apis/container_v1beta1/representations.rb,
lib/google/apis/container_v1beta1/representations.rb
Overview
Parameters that describe the nodes in a cluster. GKE Autopilot clusters do not
recognize parameters in NodeConfig. Use AutoprovisioningNodePoolDefaults
instead.
Instance Attribute Summary collapse
-
#accelerators ⇒ Array<Google::Apis::ContainerV1beta1::AcceleratorConfig>
A list of hardware accelerators to be attached to each node.
-
#advanced_machine_features ⇒ Google::Apis::ContainerV1beta1::AdvancedMachineFeatures
Specifies options for controlling advanced machine features.
-
#boot_disk_kms_key ⇒ String
The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool.
-
#confidential_nodes ⇒ Google::Apis::ContainerV1beta1::ConfidentialNodes
ConfidentialNodes is configuration for the confidential nodes feature, which makes nodes run on confidential VMs.
-
#disk_size_gb ⇒ Fixnum
Size of the disk attached to each node, specified in GB.
-
#disk_type ⇒ String
Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or 'pd- balanced') If unspecified, the default disk type is 'pd-standard' Corresponds to the JSON property
diskType. -
#enable_confidential_storage ⇒ Boolean
(also: #enable_confidential_storage?)
Optional.
-
#ephemeral_storage_config ⇒ Google::Apis::ContainerV1beta1::EphemeralStorageConfig
EphemeralStorageConfig contains configuration for the ephemeral storage filesystem.
-
#ephemeral_storage_local_ssd_config ⇒ Google::Apis::ContainerV1beta1::EphemeralStorageLocalSsdConfig
EphemeralStorageLocalSsdConfig contains configuration for the node ephemeral storage using Local SSDs.
-
#fast_socket ⇒ Google::Apis::ContainerV1beta1::FastSocket
Configuration of Fast Socket feature.
-
#gcfs_config ⇒ Google::Apis::ContainerV1beta1::GcfsConfig
GcfsConfig contains configurations of Google Container File System.
-
#gvnic ⇒ Google::Apis::ContainerV1beta1::VirtualNic
Configuration of gVNIC feature.
-
#host_maintenance_policy ⇒ Google::Apis::ContainerV1beta1::HostMaintenancePolicy
HostMaintenancePolicy contains the maintenance policy for the hosts on which the GKE VMs run on.
-
#image_type ⇒ String
The image type to use for this node.
-
#kubelet_config ⇒ Google::Apis::ContainerV1beta1::NodeKubeletConfig
Node kubelet configs.
-
#labels ⇒ Hash<String,String>
The map of Kubernetes labels (key/value pairs) to be applied to each node.
-
#linux_node_config ⇒ Google::Apis::ContainerV1beta1::LinuxNodeConfig
Parameters that can be configured on Linux nodes.
-
#local_nvme_ssd_block_config ⇒ Google::Apis::ContainerV1beta1::LocalNvmeSsdBlockConfig
LocalNvmeSsdBlockConfig contains configuration for using raw-block local NVMe SSDs Corresponds to the JSON property
localNvmeSsdBlockConfig. -
#local_ssd_count ⇒ Fixnum
The number of local SSD disks to be attached to the node.
-
#logging_config ⇒ Google::Apis::ContainerV1beta1::NodePoolLoggingConfig
NodePoolLoggingConfig specifies logging configuration for nodepools.
-
#machine_type ⇒ String
The name of a Google Compute Engine machine type.
-
#metadata ⇒ Hash<String,String>
The metadata key/value pairs assigned to instances in the cluster.
-
#min_cpu_platform ⇒ String
Minimum CPU platform to be used by this instance.
-
#node_group ⇒ String
Setting this field will assign instances of this pool to run on the specified node group.
-
#oauth_scopes ⇒ Array<String>
The set of Google API scopes to be made available on all of the node VMs under the "default" service account.
-
#preemptible ⇒ Boolean
(also: #preemptible?)
Whether the nodes are created as preemptible VM instances.
-
#reservation_affinity ⇒ Google::Apis::ContainerV1beta1::ReservationAffinity
ReservationAffinity is the configuration of desired reservation which instances could take capacity from.
-
#resource_labels ⇒ Hash<String,String>
The resource labels for the node pool to use to annotate any related Google Compute Engine resources.
-
#resource_manager_tags ⇒ Google::Apis::ContainerV1beta1::ResourceManagerTags
A map of resource manager tag keys and values to be attached to the nodes for managing Compute Engine firewalls using Network Firewall Policies.
-
#sandbox_config ⇒ Google::Apis::ContainerV1beta1::SandboxConfig
SandboxConfig contains configurations of the sandbox to use for the node.
-
#secondary_boot_disks ⇒ Array<Google::Apis::ContainerV1beta1::SecondaryBootDisk>
List of secondary boot disks attached to the nodes.
-
#service_account ⇒ String
The Google Cloud Platform Service Account to be used by the node VMs.
-
#shielded_instance_config ⇒ Google::Apis::ContainerV1beta1::ShieldedInstanceConfig
A set of Shielded Instance options.
-
#sole_tenant_config ⇒ Google::Apis::ContainerV1beta1::SoleTenantConfig
SoleTenantConfig contains the NodeAffinities to specify what shared sole tenant node groups should back the node pool.
-
#spot ⇒ Boolean
(also: #spot?)
Spot flag for enabling Spot VM, which is a rebrand of the existing preemptible flag.
-
#tags ⇒ Array<String>
The list of instance tags applied to all nodes.
-
#taints ⇒ Array<Google::Apis::ContainerV1beta1::NodeTaint>
List of kubernetes taints to be applied to each node.
-
#windows_node_config ⇒ Google::Apis::ContainerV1beta1::WindowsNodeConfig
Parameters that can be configured on Windows nodes.
-
#workload_metadata_config ⇒ Google::Apis::ContainerV1beta1::WorkloadMetadataConfig
WorkloadMetadataConfig defines the metadata configuration to expose to workloads on the node pool.
Instance Method Summary collapse
-
#initialize(**args) ⇒ NodeConfig
constructor
A new instance of NodeConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ NodeConfig
Returns a new instance of NodeConfig.
4580 4581 4582 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4580 def initialize(**args) update!(**args) end |
Instance Attribute Details
#accelerators ⇒ Array<Google::Apis::ContainerV1beta1::AcceleratorConfig>
A list of hardware accelerators to be attached to each node. See https://cloud.
google.com/compute/docs/gpus for more information about support for GPUs.
Corresponds to the JSON property accelerators
4312 4313 4314 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4312 def accelerators @accelerators end |
#advanced_machine_features ⇒ Google::Apis::ContainerV1beta1::AdvancedMachineFeatures
Specifies options for controlling advanced machine features.
Corresponds to the JSON property advancedMachineFeatures
4317 4318 4319 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4317 def advanced_machine_features @advanced_machine_features end |
#boot_disk_kms_key ⇒ String
The Customer Managed Encryption Key used to encrypt the boot disk attached to
each node in the node pool. This should be of the form projects/[
KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]
. For more information about protecting resources with Cloud KMS Keys please
see: https://cloud.google.com/compute/docs/disks/customer-managed-encryption
Corresponds to the JSON property bootDiskKmsKey
4326 4327 4328 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4326 def boot_disk_kms_key @boot_disk_kms_key end |
#confidential_nodes ⇒ Google::Apis::ContainerV1beta1::ConfidentialNodes
ConfidentialNodes is configuration for the confidential nodes feature, which
makes nodes run on confidential VMs.
Corresponds to the JSON property confidentialNodes
4332 4333 4334 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4332 def confidential_nodes @confidential_nodes end |
#disk_size_gb ⇒ Fixnum
Size of the disk attached to each node, specified in GB. The smallest allowed
disk size is 10GB. If unspecified, the default disk size is 100GB.
Corresponds to the JSON property diskSizeGb
4338 4339 4340 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4338 def disk_size_gb @disk_size_gb end |
#disk_type ⇒ String
Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or 'pd-
balanced') If unspecified, the default disk type is 'pd-standard'
Corresponds to the JSON property diskType
4344 4345 4346 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4344 def disk_type @disk_type end |
#enable_confidential_storage ⇒ Boolean Also known as: enable_confidential_storage?
Optional. Reserved for future use.
Corresponds to the JSON property enableConfidentialStorage
4349 4350 4351 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4349 def enable_confidential_storage @enable_confidential_storage end |
#ephemeral_storage_config ⇒ Google::Apis::ContainerV1beta1::EphemeralStorageConfig
EphemeralStorageConfig contains configuration for the ephemeral storage
filesystem.
Corresponds to the JSON property ephemeralStorageConfig
4356 4357 4358 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4356 def ephemeral_storage_config @ephemeral_storage_config end |
#ephemeral_storage_local_ssd_config ⇒ Google::Apis::ContainerV1beta1::EphemeralStorageLocalSsdConfig
EphemeralStorageLocalSsdConfig contains configuration for the node ephemeral
storage using Local SSDs.
Corresponds to the JSON property ephemeralStorageLocalSsdConfig
4362 4363 4364 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4362 def ephemeral_storage_local_ssd_config @ephemeral_storage_local_ssd_config end |
#fast_socket ⇒ Google::Apis::ContainerV1beta1::FastSocket
Configuration of Fast Socket feature.
Corresponds to the JSON property fastSocket
4367 4368 4369 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4367 def fast_socket @fast_socket end |
#gcfs_config ⇒ Google::Apis::ContainerV1beta1::GcfsConfig
GcfsConfig contains configurations of Google Container File System.
Corresponds to the JSON property gcfsConfig
4372 4373 4374 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4372 def gcfs_config @gcfs_config end |
#gvnic ⇒ Google::Apis::ContainerV1beta1::VirtualNic
Configuration of gVNIC feature.
Corresponds to the JSON property gvnic
4377 4378 4379 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4377 def gvnic @gvnic end |
#host_maintenance_policy ⇒ Google::Apis::ContainerV1beta1::HostMaintenancePolicy
HostMaintenancePolicy contains the maintenance policy for the hosts on which
the GKE VMs run on.
Corresponds to the JSON property hostMaintenancePolicy
4383 4384 4385 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4383 def host_maintenance_policy @host_maintenance_policy end |
#image_type ⇒ String
The image type to use for this node. Note that for a given image type, the
latest version of it will be used. Please see https://cloud.google.com/
kubernetes-engine/docs/concepts/node-images for available image types.
Corresponds to the JSON property imageType
4390 4391 4392 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4390 def image_type @image_type end |
#kubelet_config ⇒ Google::Apis::ContainerV1beta1::NodeKubeletConfig
Node kubelet configs.
Corresponds to the JSON property kubeletConfig
4395 4396 4397 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4395 def kubelet_config @kubelet_config end |
#labels ⇒ Hash<String,String>
The map of Kubernetes labels (key/value pairs) to be applied to each node.
These will added in addition to any default label(s) that Kubernetes may apply
to the node. In case of conflict in label keys, the applied set may differ
depending on the Kubernetes version -- it's best to assume the behavior is
undefined and conflicts should be avoided. For more information, including
usage and the valid values, see: https://kubernetes.io/docs/concepts/overview/
working-with-objects/labels/
Corresponds to the JSON property labels
4406 4407 4408 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4406 def labels @labels end |
#linux_node_config ⇒ Google::Apis::ContainerV1beta1::LinuxNodeConfig
Parameters that can be configured on Linux nodes.
Corresponds to the JSON property linuxNodeConfig
4411 4412 4413 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4411 def linux_node_config @linux_node_config end |
#local_nvme_ssd_block_config ⇒ Google::Apis::ContainerV1beta1::LocalNvmeSsdBlockConfig
LocalNvmeSsdBlockConfig contains configuration for using raw-block local NVMe
SSDs
Corresponds to the JSON property localNvmeSsdBlockConfig
4417 4418 4419 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4417 def local_nvme_ssd_block_config @local_nvme_ssd_block_config end |
#local_ssd_count ⇒ Fixnum
The number of local SSD disks to be attached to the node. The limit for this
value is dependent upon the maximum number of disks available on a machine per
zone. See: https://cloud.google.com/compute/docs/disks/local-ssd for more
information.
Corresponds to the JSON property localSsdCount
4425 4426 4427 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4425 def local_ssd_count @local_ssd_count end |
#logging_config ⇒ Google::Apis::ContainerV1beta1::NodePoolLoggingConfig
NodePoolLoggingConfig specifies logging configuration for nodepools.
Corresponds to the JSON property loggingConfig
4430 4431 4432 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4430 def logging_config @logging_config end |
#machine_type ⇒ String
The name of a Google Compute Engine machine type. If unspecified, the default machine type is e2-
medium.
Corresponds to the JSON property machineType
4437 4438 4439 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4437 def machine_type @machine_type end |
#metadata ⇒ Hash<String,String>
The metadata key/value pairs assigned to instances in the cluster. Keys must
conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes in length.
These are reflected as part of a URL in the metadata server. Additionally, to
avoid ambiguity, keys must not conflict with any other metadata keys for the
project or be one of the reserved keys: - "cluster-location" - "cluster-name" -
"cluster-uid" - "configure-sh" - "containerd-configure-sh" - "enable-oslogin"
- "gci-ensure-gke-docker" - "gci-metrics-enabled" - "gci-update-strategy" - "
instance-template" - "kube-env" - "startup-script" - "user-data" - "disable-
address-manager" - "windows-startup-script-ps1" - "common-psm1" - "k8s-node-
setup-psm1" - "install-ssh-psm1" - "user-profile-psm1" Values are free-form
strings, and only have meaning as interpreted by the image running in the
instance. The only restriction placed on them is that each value's size must
be less than or equal to 32 KB. The total size of all keys and values must be
less than 512 KB.
Corresponds to the JSON property
metadata
4455 4456 4457 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4455 def @metadata end |
#min_cpu_platform ⇒ String
Minimum CPU platform to be used by this instance. The instance may be
scheduled on the specified or newer CPU platform. Applicable values are the
friendly names of CPU platforms, such as minCpuPlatform: "Intel Haswell" or
minCpuPlatform: "Intel Sandy Bridge". For more information, read how to
specify min CPU platform.
Corresponds to the JSON property minCpuPlatform
4465 4466 4467 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4465 def min_cpu_platform @min_cpu_platform end |
#node_group ⇒ String
Setting this field will assign instances of this pool to run on the specified
node group. This is useful for running workloads on sole tenant nodes.
Corresponds to the JSON property nodeGroup
4472 4473 4474 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4472 def node_group @node_group end |
#oauth_scopes ⇒ Array<String>
The set of Google API scopes to be made available on all of the node VMs under
the "default" service account. The following scopes are recommended, but not
required, and by default are not included: * https://www.googleapis.com/auth/
compute is required for mounting persistent storage on your nodes. * https://
www.googleapis.com/auth/devstorage.read_only is required for communicating
with gcr.io (the Google Container Registry). If unspecified, no scopes are added, unless Cloud
Logging or Cloud Monitoring are enabled, in which case their required scopes
will be added.
Corresponds to the JSON property oauthScopes
4485 4486 4487 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4485 def oauth_scopes @oauth_scopes end |
#preemptible ⇒ Boolean Also known as: preemptible?
Whether the nodes are created as preemptible VM instances. See: https://cloud.
google.com/compute/docs/instances/preemptible for more information about
preemptible VM instances.
Corresponds to the JSON property preemptible
4492 4493 4494 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4492 def preemptible @preemptible end |
#reservation_affinity ⇒ Google::Apis::ContainerV1beta1::ReservationAffinity
ReservationAffinity is the configuration of desired reservation which
instances could take capacity from.
Corresponds to the JSON property reservationAffinity
4500 4501 4502 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4500 def reservation_affinity @reservation_affinity end |
#resource_labels ⇒ Hash<String,String>
The resource labels for the node pool to use to annotate any related Google
Compute Engine resources.
Corresponds to the JSON property resourceLabels
4506 4507 4508 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4506 def resource_labels @resource_labels end |
#resource_manager_tags ⇒ Google::Apis::ContainerV1beta1::ResourceManagerTags
A map of resource manager tag keys and values to be attached to the nodes for
managing Compute Engine firewalls using Network Firewall Policies. Tags must
be according to specifications in https://cloud.google.com/vpc/docs/tags-
firewalls-overview#specifications. A maximum of 5 tag key-value pairs can be
specified. Existing tags will be replaced with new values.
Corresponds to the JSON property resourceManagerTags
4515 4516 4517 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4515 def @resource_manager_tags end |
#sandbox_config ⇒ Google::Apis::ContainerV1beta1::SandboxConfig
SandboxConfig contains configurations of the sandbox to use for the node.
Corresponds to the JSON property sandboxConfig
4520 4521 4522 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4520 def sandbox_config @sandbox_config end |
#secondary_boot_disks ⇒ Array<Google::Apis::ContainerV1beta1::SecondaryBootDisk>
List of secondary boot disks attached to the nodes.
Corresponds to the JSON property secondaryBootDisks
4525 4526 4527 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4525 def secondary_boot_disks @secondary_boot_disks end |
#service_account ⇒ String
The Google Cloud Platform Service Account to be used by the node VMs. Specify
the email address of the Service Account; otherwise, if no Service Account is
specified, the "default" service account is used.
Corresponds to the JSON property serviceAccount
4532 4533 4534 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4532 def service_account @service_account end |
#shielded_instance_config ⇒ Google::Apis::ContainerV1beta1::ShieldedInstanceConfig
A set of Shielded Instance options.
Corresponds to the JSON property shieldedInstanceConfig
4537 4538 4539 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4537 def shielded_instance_config @shielded_instance_config end |
#sole_tenant_config ⇒ Google::Apis::ContainerV1beta1::SoleTenantConfig
SoleTenantConfig contains the NodeAffinities to specify what shared sole
tenant node groups should back the node pool.
Corresponds to the JSON property soleTenantConfig
4543 4544 4545 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4543 def sole_tenant_config @sole_tenant_config end |
#spot ⇒ Boolean Also known as: spot?
Spot flag for enabling Spot VM, which is a rebrand of the existing preemptible
flag.
Corresponds to the JSON property spot
4549 4550 4551 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4549 def spot @spot end |
#tags ⇒ Array<String>
The list of instance tags applied to all nodes. Tags are used to identify
valid sources or targets for network firewalls and are specified by the client
during cluster or node pool creation. Each tag within the list must comply
with RFC1035.
Corresponds to the JSON property tags
4558 4559 4560 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4558 def @tags end |
#taints ⇒ Array<Google::Apis::ContainerV1beta1::NodeTaint>
List of kubernetes taints to be applied to each node. For more information,
including usage and the valid values, see: https://kubernetes.io/docs/concepts/
configuration/taint-and-toleration/
Corresponds to the JSON property taints
4565 4566 4567 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4565 def taints @taints end |
#windows_node_config ⇒ Google::Apis::ContainerV1beta1::WindowsNodeConfig
Parameters that can be configured on Windows nodes. Windows Node Config that
define the parameters that will be used to configure the Windows node pool
settings
Corresponds to the JSON property windowsNodeConfig
4572 4573 4574 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4572 def windows_node_config @windows_node_config end |
#workload_metadata_config ⇒ Google::Apis::ContainerV1beta1::WorkloadMetadataConfig
WorkloadMetadataConfig defines the metadata configuration to expose to
workloads on the node pool.
Corresponds to the JSON property workloadMetadataConfig
4578 4579 4580 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4578 def @workload_metadata_config end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
4585 4586 4587 4588 4589 4590 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 4616 4617 4618 4619 4620 4621 4622 4623 4624 4625 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 4585 def update!(**args) @accelerators = args[:accelerators] if args.key?(:accelerators) @advanced_machine_features = args[:advanced_machine_features] if args.key?(:advanced_machine_features) @boot_disk_kms_key = args[:boot_disk_kms_key] if args.key?(:boot_disk_kms_key) @confidential_nodes = args[:confidential_nodes] if args.key?(:confidential_nodes) @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) @disk_type = args[:disk_type] if args.key?(:disk_type) @enable_confidential_storage = args[:enable_confidential_storage] if args.key?(:enable_confidential_storage) @ephemeral_storage_config = args[:ephemeral_storage_config] if args.key?(:ephemeral_storage_config) @ephemeral_storage_local_ssd_config = args[:ephemeral_storage_local_ssd_config] if args.key?(:ephemeral_storage_local_ssd_config) @fast_socket = args[:fast_socket] if args.key?(:fast_socket) @gcfs_config = args[:gcfs_config] if args.key?(:gcfs_config) @gvnic = args[:gvnic] if args.key?(:gvnic) @host_maintenance_policy = args[:host_maintenance_policy] if args.key?(:host_maintenance_policy) @image_type = args[:image_type] if args.key?(:image_type) @kubelet_config = args[:kubelet_config] if args.key?(:kubelet_config) @labels = args[:labels] if args.key?(:labels) @linux_node_config = args[:linux_node_config] if args.key?(:linux_node_config) @local_nvme_ssd_block_config = args[:local_nvme_ssd_block_config] if args.key?(:local_nvme_ssd_block_config) @local_ssd_count = args[:local_ssd_count] if args.key?(:local_ssd_count) @logging_config = args[:logging_config] if args.key?(:logging_config) @machine_type = args[:machine_type] if args.key?(:machine_type) @metadata = args[:metadata] if args.key?(:metadata) @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform) @node_group = args[:node_group] if args.key?(:node_group) @oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes) @preemptible = args[:preemptible] if args.key?(:preemptible) @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity) @resource_labels = args[:resource_labels] if args.key?(:resource_labels) @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags) @sandbox_config = args[:sandbox_config] if args.key?(:sandbox_config) @secondary_boot_disks = args[:secondary_boot_disks] if args.key?(:secondary_boot_disks) @service_account = args[:service_account] if args.key?(:service_account) @shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config) @sole_tenant_config = args[:sole_tenant_config] if args.key?(:sole_tenant_config) @spot = args[:spot] if args.key?(:spot) @tags = args[:tags] if args.key?(:tags) @taints = args[:taints] if args.key?(:taints) @windows_node_config = args[:windows_node_config] if args.key?(:windows_node_config) @workload_metadata_config = args[:workload_metadata_config] if args.key?(:workload_metadata_config) end |