Class: Google::Apis::ComputeAlpha::NodeGroup

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_alpha/classes.rb,
generated/google/apis/compute_alpha/representations.rb,
generated/google/apis/compute_alpha/representations.rb

Overview

Represent a sole-tenant Node Group resource. A sole-tenant node is a physical server that is dedicated to hosting VM instances only for your specific project. Use sole-tenant nodes to keep your instances physically separated from instances in other projects, or to group your instances together on the same host hardware. For more information, read Sole-tenant nodes. (== resource_for $api_version.nodeGroups ==)

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ NodeGroup

Returns a new instance of NodeGroup.



20268
20269
20270
# File 'generated/google/apis/compute_alpha/classes.rb', line 20268

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

Instance Attribute Details

#autoscaling_policyGoogle::Apis::ComputeAlpha::NodeGroupAutoscalingPolicy

Specifies how autoscaling should behave. Corresponds to the JSON property autoscalingPolicy



20189
20190
20191
# File 'generated/google/apis/compute_alpha/classes.rb', line 20189

def autoscaling_policy
  @autoscaling_policy
end

#creation_timestampString

[Output Only] Creation timestamp in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


20194
20195
20196
# File 'generated/google/apis/compute_alpha/classes.rb', line 20194

def creation_timestamp
  @creation_timestamp
end

#descriptionString

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


20200
20201
20202
# File 'generated/google/apis/compute_alpha/classes.rb', line 20200

def description
  @description
end

#fingerprintString

Corresponds to the JSON property fingerprint NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


20206
20207
20208
# File 'generated/google/apis/compute_alpha/classes.rb', line 20206

def fingerprint
  @fingerprint
end

#idFixnum

[Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


20212
20213
20214
# File 'generated/google/apis/compute_alpha/classes.rb', line 20212

def id
  @id
end

#kindString

[Output Only] The type of the resource. Always compute#nodeGroup for node group. Corresponds to the JSON property kind

Returns:

  • (String)


20218
20219
20220
# File 'generated/google/apis/compute_alpha/classes.rb', line 20218

def kind
  @kind
end

#maintenance_policyString

Specifies how to handle instances when a node in the group undergoes maintenance. Corresponds to the JSON property maintenancePolicy

Returns:

  • (String)


20224
20225
20226
# File 'generated/google/apis/compute_alpha/classes.rb', line 20224

def maintenance_policy
  @maintenance_policy
end

#nameString

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]*[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

Returns:

  • (String)


20235
20236
20237
# File 'generated/google/apis/compute_alpha/classes.rb', line 20235

def name
  @name
end

#node_templateString

The URL of the node template to which this node group belongs. Corresponds to the JSON property nodeTemplate

Returns:

  • (String)


20240
20241
20242
# File 'generated/google/apis/compute_alpha/classes.rb', line 20240

def node_template
  @node_template
end

[Output Only] Server-defined URL for the resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


20245
20246
20247
# File 'generated/google/apis/compute_alpha/classes.rb', line 20245

def self_link
  @self_link
end

[Output Only] Server-defined URL for this resource with the resource id. Corresponds to the JSON property selfLinkWithId

Returns:

  • (String)


20250
20251
20252
# File 'generated/google/apis/compute_alpha/classes.rb', line 20250

def self_link_with_id
  @self_link_with_id
end

#sizeFixnum

[Output Only] The total number of nodes in the node group. Corresponds to the JSON property size

Returns:

  • (Fixnum)


20255
20256
20257
# File 'generated/google/apis/compute_alpha/classes.rb', line 20255

def size
  @size
end

#statusString

Corresponds to the JSON property status

Returns:

  • (String)


20260
20261
20262
# File 'generated/google/apis/compute_alpha/classes.rb', line 20260

def status
  @status
end

#zoneString

[Output Only] The name of the zone where the node group resides, such as us- central1-a. Corresponds to the JSON property zone

Returns:

  • (String)


20266
20267
20268
# File 'generated/google/apis/compute_alpha/classes.rb', line 20266

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



20273
20274
20275
20276
20277
20278
20279
20280
20281
20282
20283
20284
20285
20286
20287
20288
# File 'generated/google/apis/compute_alpha/classes.rb', line 20273

def update!(**args)
  @autoscaling_policy = args[:autoscaling_policy] if args.key?(:autoscaling_policy)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @description = args[:description] if args.key?(:description)
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @maintenance_policy = args[:maintenance_policy] if args.key?(:maintenance_policy)
  @name = args[:name] if args.key?(:name)
  @node_template = args[:node_template] if args.key?(:node_template)
  @self_link = args[:self_link] if args.key?(:self_link)
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
  @size = args[:size] if args.key?(:size)
  @status = args[:status] if args.key?(:status)
  @zone = args[:zone] if args.key?(:zone)
end