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
515 516 517 |
# File 'generated/google/apis/container_v1/classes.rb', line 515 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
440 441 442 |
# File 'generated/google/apis/container_v1/classes.rb', line 440 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
469 470 471 |
# File 'generated/google/apis/container_v1/classes.rb', line 469 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
504 505 506 |
# File 'generated/google/apis/container_v1/classes.rb', line 504 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
513 514 515 |
# File 'generated/google/apis/container_v1/classes.rb', line 513 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
463 464 465 |
# File 'generated/google/apis/container_v1/classes.rb', line 463 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
433 434 435 |
# File 'generated/google/apis/container_v1/classes.rb', line 433 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 propertyoauthScopes
484 485 486 |
# File 'generated/google/apis/container_v1/classes.rb', line 484 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
491 492 493 |
# File 'generated/google/apis/container_v1/classes.rb', line 491 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
454 455 456 |
# File 'generated/google/apis/container_v1/classes.rb', line 454 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
448 449 450 |
# File 'generated/google/apis/container_v1/classes.rb', line 448 def @tags end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
520 521 522 523 524 525 526 527 528 529 530 531 |
# File 'generated/google/apis/container_v1/classes.rb', line 520 def update!(**args) @metadata = args[:metadata] if args.key?(:metadata) @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) @tags = args[:tags] if args.key?(:tags) @service_account = args[:service_account] if args.key?(:service_account) @machine_type = args[:machine_type] if args.key?(:machine_type) @image_type = args[:image_type] if args.key?(:image_type) @oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes) @preemptible = args[:preemptible] if args.key?(:preemptible) @labels = args[:labels] if args.key?(:labels) @local_ssd_count = args[:local_ssd_count] if args.key?(:local_ssd_count) end |