Class: Google::Apis::GkeonpremV1::VmwareNodeConfig

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

Overview

Parameters that describe the configuration of all nodes within a given node pool.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ VmwareNodeConfig

Returns a new instance of VmwareNodeConfig.



5194
5195
5196
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5194

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

Instance Attribute Details

#boot_disk_size_gbFixnum

VMware disk size to be used during creation. Corresponds to the JSON property bootDiskSizeGb

Returns:

  • (Fixnum)


5136
5137
5138
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5136

def boot_disk_size_gb
  @boot_disk_size_gb
end

#cpusFixnum

The number of CPUs for each node in the node pool. Corresponds to the JSON property cpus

Returns:

  • (Fixnum)


5141
5142
5143
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5141

def cpus
  @cpus
end

#enable_load_balancerBoolean Also known as: enable_load_balancer?

Allow node pool traffic to be load balanced. Only works for clusters with MetalLB load balancers. Corresponds to the JSON property enableLoadBalancer

Returns:

  • (Boolean)


5147
5148
5149
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5147

def enable_load_balancer
  @enable_load_balancer
end

#imageString

The OS image name in vCenter, only valid when using Windows. Corresponds to the JSON property image

Returns:

  • (String)


5153
5154
5155
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5153

def image
  @image
end

#image_typeString

Required. The OS image to be used for each node in a node pool. Currently cos , cos_cgv2, ubuntu, ubuntu_cgv2, ubuntu_containerd and windows are supported. Corresponds to the JSON property imageType

Returns:

  • (String)


5160
5161
5162
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5160

def image_type
  @image_type
end

#labelsHash<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

Returns:

  • (Hash<String,String>)


5171
5172
5173
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5171

def labels
  @labels
end

#memory_mbFixnum

The megabytes of memory for each node in the node pool. Corresponds to the JSON property memoryMb

Returns:

  • (Fixnum)


5176
5177
5178
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5176

def memory_mb
  @memory_mb
end

#replicasFixnum

The number of nodes in the node pool. Corresponds to the JSON property replicas

Returns:

  • (Fixnum)


5181
5182
5183
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5181

def replicas
  @replicas
end

#taintsArray<Google::Apis::GkeonpremV1::NodeTaint>

The initial taints assigned to nodes of this node pool. Corresponds to the JSON property taints



5186
5187
5188
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5186

def taints
  @taints
end

#vsphere_configGoogle::Apis::GkeonpremV1::VmwareVsphereConfig

VmwareVsphereConfig represents configuration for the VMware VCenter for node pool. Corresponds to the JSON property vsphereConfig



5192
5193
5194
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5192

def vsphere_config
  @vsphere_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5199

def update!(**args)
  @boot_disk_size_gb = args[:boot_disk_size_gb] if args.key?(:boot_disk_size_gb)
  @cpus = args[:cpus] if args.key?(:cpus)
  @enable_load_balancer = args[:enable_load_balancer] if args.key?(:enable_load_balancer)
  @image = args[:image] if args.key?(:image)
  @image_type = args[:image_type] if args.key?(:image_type)
  @labels = args[:labels] if args.key?(:labels)
  @memory_mb = args[:memory_mb] if args.key?(:memory_mb)
  @replicas = args[:replicas] if args.key?(:replicas)
  @taints = args[:taints] if args.key?(:taints)
  @vsphere_config = args[:vsphere_config] if args.key?(:vsphere_config)
end