Class: Google::Apis::DataprocV1::GkeNodeConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dataproc_v1/classes.rb,
lib/google/apis/dataproc_v1/representations.rb,
lib/google/apis/dataproc_v1/representations.rb

Overview

Parameters that describe cluster nodes.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GkeNodeConfig

Returns a new instance of GkeNodeConfig.



3536
3537
3538
# File 'lib/google/apis/dataproc_v1/classes.rb', line 3536

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#acceleratorsArray<Google::Apis::DataprocV1::GkeNodePoolAcceleratorConfig>

Optional. A list of hardware accelerators (https://cloud.google.com/compute/ docs/gpus) to attach to each node. Corresponds to the JSON property accelerators



3472
3473
3474
# File 'lib/google/apis/dataproc_v1/classes.rb', line 3472

def accelerators
  @accelerators
end

#boot_disk_kms_keyString

Optional. The Customer Managed Encryption Key (CMEK) (https://cloud.google.com/ kubernetes-engine/docs/how-to/using-cmek) used to encrypt the boot disk attached to each node in the node pool. Specify the key using the following format: projects/project/locations/location/keyRings/key_ring/cryptoKeys/ crypto_key Corresponds to the JSON property bootDiskKmsKey

Returns:

  • (String)


3481
3482
3483
# File 'lib/google/apis/dataproc_v1/classes.rb', line 3481

def boot_disk_kms_key
  @boot_disk_kms_key
end

#local_ssd_countFixnum

Optional. The number of local SSD disks to attach to the node, which is limited by the maximum number of disks allowable per zone (see Adding Local SSDs (https://cloud.google.com/compute/docs/disks/local-ssd)). Corresponds to the JSON property localSsdCount

Returns:

  • (Fixnum)


3488
3489
3490
# File 'lib/google/apis/dataproc_v1/classes.rb', line 3488

def local_ssd_count
  @local_ssd_count
end

#machine_typeString

Optional. The name of a Compute Engine machine type (https://cloud.google.com/ compute/docs/machine-types). Corresponds to the JSON property machineType

Returns:

  • (String)


3494
3495
3496
# File 'lib/google/apis/dataproc_v1/classes.rb', line 3494

def machine_type
  @machine_type
end

#min_cpu_platformString

Optional. Minimum CPU platform (https://cloud.google.com/compute/docs/ instances/specify-min-cpu-platform) to be used by this instance. The instance may be scheduled on the specified or a newer CPU platform. Specify the friendly names of CPU platforms, such as "Intel Haswell"or Intel Sandy Bridge". Corresponds to the JSON propertyminCpuPlatform`

Returns:

  • (String)


3503
3504
3505
# File 'lib/google/apis/dataproc_v1/classes.rb', line 3503

def min_cpu_platform
  @min_cpu_platform
end

#preemptibleBoolean Also known as: preemptible?

Optional. Whether the nodes are created as legacy preemptible VM instances ( https://cloud.google.com/compute/docs/instances/preemptible). Also see Spot VMs, preemptible VM instances without a maximum lifetime. Legacy and Spot preemptible nodes cannot be used in a node pool with the CONTROLLER role or in the DEFAULT node pool if the CONTROLLER role is not assigned (the DEFAULT node pool will assume the CONTROLLER role). Corresponds to the JSON property preemptible

Returns:

  • (Boolean)


3513
3514
3515
# File 'lib/google/apis/dataproc_v1/classes.rb', line 3513

def preemptible
  @preemptible
end

#service_accountString

Optional. Specifies the service account (https://cloud.google.com/dataproc/ docs/guides/dpgke/dataproc-gke-iam) to be used by the node pools. Specify the email address of the service account or its full resource name.Format: projects/project/serviceAccounts/service_account_email or service_account_email. Corresponds to the JSON property serviceAccount

Returns:

  • (String)


3523
3524
3525
# File 'lib/google/apis/dataproc_v1/classes.rb', line 3523

def 
  @service_account
end

#spotBoolean Also known as: spot?

Optional. Whether the nodes are created as Spot VM instances (https://cloud. google.com/compute/docs/instances/spot). Spot VMs are the latest update to legacy preemptible VMs. Spot VMs do not have a maximum lifetime. Legacy and Spot preemptible nodes cannot be used in a node pool with the CONTROLLER role or in the DEFAULT node pool if the CONTROLLER role is not assigned (the DEFAULT node pool will assume the CONTROLLER role). Corresponds to the JSON property spot

Returns:

  • (Boolean)


3533
3534
3535
# File 'lib/google/apis/dataproc_v1/classes.rb', line 3533

def spot
  @spot
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
# File 'lib/google/apis/dataproc_v1/classes.rb', line 3541

def update!(**args)
  @accelerators = args[:accelerators] if args.key?(:accelerators)
  @boot_disk_kms_key = args[:boot_disk_kms_key] if args.key?(:boot_disk_kms_key)
  @local_ssd_count = args[:local_ssd_count] if args.key?(:local_ssd_count)
  @machine_type = args[:machine_type] if args.key?(:machine_type)
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
  @preemptible = args[:preemptible] if args.key?(:preemptible)
  @service_account = args[:service_account] if args.key?(:service_account)
  @spot = args[:spot] if args.key?(:spot)
end