Class: Google::Apis::ComputeBeta::NodeGroup

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_beta/classes.rb,
generated/google/apis/compute_beta/representations.rb,
generated/google/apis/compute_beta/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

Constructor Details

#initialize(**args) ⇒ NodeGroup

Returns a new instance of NodeGroup.



20424
20425
20426
# File 'generated/google/apis/compute_beta/classes.rb', line 20424

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

Instance Attribute Details

#autoscaling_policyGoogle::Apis::ComputeBeta::NodeGroupAutoscalingPolicy

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



20342
20343
20344
# File 'generated/google/apis/compute_beta/classes.rb', line 20342

def autoscaling_policy
  @autoscaling_policy
end

#creation_timestampString

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

Returns:

  • (String)


20347
20348
20349
# File 'generated/google/apis/compute_beta/classes.rb', line 20347

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)


20353
20354
20355
# File 'generated/google/apis/compute_beta/classes.rb', line 20353

def description
  @description
end

#fingerprintString

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

Returns:

  • (String)


20359
20360
20361
# File 'generated/google/apis/compute_beta/classes.rb', line 20359

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)


20365
20366
20367
# File 'generated/google/apis/compute_beta/classes.rb', line 20365

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)


20371
20372
20373
# File 'generated/google/apis/compute_beta/classes.rb', line 20371

def kind
  @kind
end

#maintenance_policyString

Specifies how to handle instances when a node in the group undergoes maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information, see Maintenance policies. Corresponds to the JSON property maintenancePolicy

Returns:

  • (String)


20379
20380
20381
# File 'generated/google/apis/compute_beta/classes.rb', line 20379

def maintenance_policy
  @maintenance_policy
end

#maintenance_windowGoogle::Apis::ComputeBeta::NodeGroupMaintenanceWindow

Time window specified for daily maintenance operations. GCE's internal maintenance will be performed within this window. Corresponds to the JSON property maintenanceWindow



20385
20386
20387
# File 'generated/google/apis/compute_beta/classes.rb', line 20385

def maintenance_window
  @maintenance_window
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)


20396
20397
20398
# File 'generated/google/apis/compute_beta/classes.rb', line 20396

def name
  @name
end

#node_templateString

URL of the node template to create the node group from. Corresponds to the JSON property nodeTemplate

Returns:

  • (String)


20401
20402
20403
# File 'generated/google/apis/compute_beta/classes.rb', line 20401

def node_template
  @node_template
end

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

Returns:

  • (String)


20406
20407
20408
# File 'generated/google/apis/compute_beta/classes.rb', line 20406

def self_link
  @self_link
end

#sizeFixnum

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

Returns:

  • (Fixnum)


20411
20412
20413
# File 'generated/google/apis/compute_beta/classes.rb', line 20411

def size
  @size
end

#statusString

Corresponds to the JSON property status

Returns:

  • (String)


20416
20417
20418
# File 'generated/google/apis/compute_beta/classes.rb', line 20416

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)


20422
20423
20424
# File 'generated/google/apis/compute_beta/classes.rb', line 20422

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



20429
20430
20431
20432
20433
20434
20435
20436
20437
20438
20439
20440
20441
20442
20443
20444
# File 'generated/google/apis/compute_beta/classes.rb', line 20429

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)
  @maintenance_window = args[:maintenance_window] if args.key?(:maintenance_window)
  @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)
  @size = args[:size] if args.key?(:size)
  @status = args[:status] if args.key?(:status)
  @zone = args[:zone] if args.key?(:zone)
end