Class: Google::Apis::ComputeAlpha::InstanceGroup

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

Overview

Represents an Instance Group resource. Instance Groups can be used to configure a target for load balancing. Instance groups can either be managed or unmanaged. To create managed instance groups, use the instanceGroupManager or regionInstanceGroupManager resource instead. Use zonal unmanaged instance groups if you need to apply load balancing to groups of heterogeneous instances or if you need to manage the instances yourself. You cannot create regional unmanaged instance groups. For more information, read Instance groups. (== resource_for $api_version.instanceGroups ==) (== resource_for $ api_version.regionInstanceGroups ==)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ InstanceGroup

Returns a new instance of InstanceGroup.



14797
14798
14799
# File 'lib/google/apis/compute_alpha/classes.rb', line 14797

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

Instance Attribute Details

#creation_timestampString

[Output Only] The creation timestamp for this instance group in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


14711
14712
14713
# File 'lib/google/apis/compute_alpha/classes.rb', line 14711

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)


14717
14718
14719
# File 'lib/google/apis/compute_alpha/classes.rb', line 14717

def description
  @description
end

#fingerprintString

[Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently. Corresponds to the JSON property fingerprint NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


14725
14726
14727
# File 'lib/google/apis/compute_alpha/classes.rb', line 14725

def fingerprint
  @fingerprint
end

#idFixnum

[Output Only] A unique identifier for this instance group, generated by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


14731
14732
14733
# File 'lib/google/apis/compute_alpha/classes.rb', line 14731

def id
  @id
end

#kindString

[Output Only] The resource type, which is always compute#instanceGroup for instance groups. Corresponds to the JSON property kind

Returns:

  • (String)


14737
14738
14739
# File 'lib/google/apis/compute_alpha/classes.rb', line 14737

def kind
  @kind
end

#nameString

The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035. Corresponds to the JSON property name

Returns:

  • (String)


14743
14744
14745
# File 'lib/google/apis/compute_alpha/classes.rb', line 14743

def name
  @name
end

#named_portsArray<Google::Apis::ComputeAlpha::NamedPort>

Assigns a name to a port number. For example: name: "http", port: 80 This allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [name: "http", port: 80,name: "http", port: 8080] Named ports apply to all instances in this instance group. Corresponds to the JSON property namedPorts



14752
14753
14754
# File 'lib/google/apis/compute_alpha/classes.rb', line 14752

def named_ports
  @named_ports
end

#networkString

[Output Only] The URL of the network to which all instances in the instance group belong. If your instance has multiple network interfaces, then the network and subnetwork fields only refer to the network and subnet used by your primary interface (nic0). Corresponds to the JSON property network

Returns:

  • (String)


14760
14761
14762
# File 'lib/google/apis/compute_alpha/classes.rb', line 14760

def network
  @network
end

#regionString

[Output Only] The URL of the region where the instance group is located (for regional resources). Corresponds to the JSON property region

Returns:

  • (String)


14766
14767
14768
# File 'lib/google/apis/compute_alpha/classes.rb', line 14766

def region
  @region
end

[Output Only] The URL for this instance group. The server generates this URL. Corresponds to the JSON property selfLink

Returns:

  • (String)


14771
14772
14773
# File 'lib/google/apis/compute_alpha/classes.rb', line 14771

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)


14776
14777
14778
# File 'lib/google/apis/compute_alpha/classes.rb', line 14776

def self_link_with_id
  @self_link_with_id
end

#sizeFixnum

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

Returns:

  • (Fixnum)


14781
14782
14783
# File 'lib/google/apis/compute_alpha/classes.rb', line 14781

def size
  @size
end

#subnetworkString

[Output Only] The URL of the subnetwork to which all instances in the instance group belong. If your instance has multiple network interfaces, then the network and subnetwork fields only refer to the network and subnet used by your primary interface (nic0). Corresponds to the JSON property subnetwork

Returns:

  • (String)


14789
14790
14791
# File 'lib/google/apis/compute_alpha/classes.rb', line 14789

def subnetwork
  @subnetwork
end

#zoneString

[Output Only] The URL of the zone where the instance group is located (for zonal resources). Corresponds to the JSON property zone

Returns:

  • (String)


14795
14796
14797
# File 'lib/google/apis/compute_alpha/classes.rb', line 14795

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



14802
14803
14804
14805
14806
14807
14808
14809
14810
14811
14812
14813
14814
14815
14816
14817
# File 'lib/google/apis/compute_alpha/classes.rb', line 14802

def update!(**args)
  @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)
  @name = args[:name] if args.key?(:name)
  @named_ports = args[:named_ports] if args.key?(:named_ports)
  @network = args[:network] if args.key?(:network)
  @region = args[:region] if args.key?(:region)
  @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)
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
  @zone = args[:zone] if args.key?(:zone)
end