Class: Google::Apis::ContainerV1::NodeConfig
- Inherits:
-
Object
- Object
- Google::Apis::ContainerV1::NodeConfig
- Defined in:
- generated/google/apis/container_v1/classes.rb,
generated/google/apis/container_v1/representations.rb,
generated/google/apis/container_v1/representations.rb
Overview
Parameters that describe the nodes in a cluster.
Instance Attribute Summary collapse
-
#disk_size_gb ⇒ Fixnum
Size of the disk attached to each node, specified in GB.
-
#image_type ⇒ String
The image type to use for this node.
-
#labels ⇒ Hash<String,String>
The map of Kubernetes labels (key/value pairs) to be applied to each node.
-
#local_ssd_count ⇒ Fixnum
The number of local SSD disks to be attached to the node.
-
#machine_type ⇒ String
The name of a Google Compute Engine machine type (e.g.
n1-standard-1). -
#metadata ⇒ Hash<String,String>
The metadata key/value pairs assigned to instances in the cluster.
-
#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.
-
#service_account ⇒ String
The Google Cloud Platform Service Account to be used by the node VMs.
-
#tags ⇒ Array<String>
The list of instance tags applied to all nodes.
Instance Method Summary collapse
-
#initialize(**args) ⇒ NodeConfig
constructor
A new instance of NodeConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Google::Apis::Core::JsonObjectSupport
Methods included from Google::Apis::Core::Hashable
Constructor Details
#initialize(**args) ⇒ NodeConfig
Returns a new instance of NodeConfig
365 366 367 |
# File 'generated/google/apis/container_v1/classes.rb', line 365 def initialize(**args) update!(**args) end |
Instance Attribute Details
#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
291 292 293 |
# File 'generated/google/apis/container_v1/classes.rb', line 291 def disk_size_gb @disk_size_gb 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.
Corresponds to the JSON property imageType
328 329 330 |
# File 'generated/google/apis/container_v1/classes.rb', line 328 def image_type @image_type 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: http://kubernetes.io/v1.1/docs/user-guide/
labels.html
Corresponds to the JSON property labels
339 340 341 |
# File 'generated/google/apis/container_v1/classes.rb', line 339 def labels @labels end |
#local_ssd_count ⇒ Fixnum
The number of local SSD disks to be attached to the node. The limit for this
value is dependant upon the maximum number of disks available on a machine per
zone. See: https://cloud.google.com/compute/docs/disks/local-ssd#
local_ssd_limits for more information.
Corresponds to the JSON property localSsdCount
347 348 349 |
# File 'generated/google/apis/container_v1/classes.rb', line 347 def local_ssd_count @local_ssd_count end |
#machine_type ⇒ String
The name of a Google Compute Engine machine type
(e.g. n1-standard-1). If unspecified, the default machine type is n1-
standard-1.
Corresponds to the JSON property machineType
285 286 287 |
# File 'generated/google/apis/container_v1/classes.rb', line 285 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 four reserved keys: "instance-template", "kube-env", "
startup-script", and "user-data" 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
322 323 324 |
# File 'generated/google/apis/container_v1/classes.rb', line 322 def @metadata 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
303 304 305 |
# File 'generated/google/apis/container_v1/classes.rb', line 303 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 inforamtion about
preemptible VM instances.
Corresponds to the JSON property preemptible
362 363 364 |
# File 'generated/google/apis/container_v1/classes.rb', line 362 def preemptible @preemptible end |
#service_account ⇒ String
The Google Cloud Platform Service Account to be used by the node VMs. If no
Service Account is specified, the "default" service account is used.
Corresponds to the JSON property serviceAccount
309 310 311 |
# File 'generated/google/apis/container_v1/classes.rb', line 309 def service_account @service_account 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
355 356 357 |
# File 'generated/google/apis/container_v1/classes.rb', line 355 def @tags end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
370 371 372 373 374 375 376 377 378 379 380 381 |
# File 'generated/google/apis/container_v1/classes.rb', line 370 def update!(**args) @machine_type = args[:machine_type] if args.key?(:machine_type) @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) @oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes) @service_account = args[:service_account] if args.key?(:service_account) @metadata = args[:metadata] if args.key?(:metadata) @image_type = args[:image_type] if args.key?(:image_type) @labels = args[:labels] if args.key?(:labels) @local_ssd_count = args[:local_ssd_count] if args.key?(:local_ssd_count) @tags = args[:tags] if args.key?(:tags) @preemptible = args[:preemptible] if args.key?(:preemptible) end |