class Google::Apis::ComputeBeta::NodeTemplate

Represent a sole-tenant Node Template resource. You can use a template to define properties for nodes in a node group. For more information, read Creating node groups and instances.

Attributes

accelerators[RW]

Corresponds to the JSON property `accelerators` @return [Array<Google::Apis::ComputeBeta::AcceleratorConfig>]

cpu_overcommit_type[RW]

CPU overcommit. Corresponds to the JSON property `cpuOvercommitType` @return [String]

creation_timestamp[RW]
Output Only

Creation timestamp in RFC3339 text format.

Corresponds to the JSON property `creationTimestamp` @return [String]

description[RW]

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property `description` @return [String]

disks[RW]

Corresponds to the JSON property `disks` @return [Array<Google::Apis::ComputeBeta::LocalDisk>]

id[RW]
Output Only

The unique identifier for the resource. This identifier is

defined by the server. Corresponds to the JSON property `id` @return [Fixnum]

kind[RW]
Output Only

The type of the resource. Always compute#nodeTemplate for node

templates. Corresponds to the JSON property `kind` @return [String]

name[RW]

The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z](*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Corresponds to the JSON property `name` @return [String]

node_affinity_labels[RW]

Labels to use for node affinity, which will be used in instance scheduling. Corresponds to the JSON property `nodeAffinityLabels` @return [Hash<String,String>]

node_type[RW]

The node type to use for nodes group that are created from this template. Corresponds to the JSON property `nodeType` @return [String]

node_type_flexibility[RW]

The flexible properties of the desired node type. Node groups that use this node template will create nodes of a type that matches these properties. This field is mutually exclusive with the node_type property; you can only define one or the other, but not both. Corresponds to the JSON property `nodeTypeFlexibility` @return [Google::Apis::ComputeBeta::NodeTemplateNodeTypeFlexibility]

region[RW]
Output Only

The name of the region where the node template resides, such as

us-central1. Corresponds to the JSON property `region` @return [String]

server_binding[RW]

Sets the binding properties for the physical server. Valid values include: - *[ Default]* RESTART_NODE_ON_ANY_SERVER: Restarts VMs on any available physical server - RESTART_NODE_ON_MINIMAL_SERVER: Restarts VMs on the same physical server whenever possible See Sole-tenant node options for more information. Corresponds to the JSON property `serverBinding` @return [Google::Apis::ComputeBeta::ServerBinding]

status[RW]
Output Only

The status of the node template. One of the following values:

CREATING, READY, and DELETING. Corresponds to the JSON property `status` @return [String]

status_message[RW]
Output Only

An optional, human-readable explanation of the status.

Corresponds to the JSON property `statusMessage` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/compute_beta/classes.rb, line 21916
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/compute_beta/classes.rb, line 21921
def update!(**args)
  @accelerators = args[:accelerators] if args.key?(:accelerators)
  @cpu_overcommit_type = args[:cpu_overcommit_type] if args.key?(:cpu_overcommit_type)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @description = args[:description] if args.key?(:description)
  @disks = args[:disks] if args.key?(:disks)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @name = args[:name] if args.key?(:name)
  @node_affinity_labels = args[:node_affinity_labels] if args.key?(:node_affinity_labels)
  @node_type = args[:node_type] if args.key?(:node_type)
  @node_type_flexibility = args[:node_type_flexibility] if args.key?(:node_type_flexibility)
  @region = args[:region] if args.key?(:region)
  @self_link = args[:self_link] if args.key?(:self_link)
  @server_binding = args[:server_binding] if args.key?(:server_binding)
  @status = args[:status] if args.key?(:status)
  @status_message = args[:status_message] if args.key?(:status_message)
end