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 forload balancing. Instance groups can either be managed or unmanaged. To create managed instance groups, use the instanceGroupManager orregionInstanceGroupManager resource instead. Use zonal unmanaged instance groups if you need to applyload 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, readInstance groups.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ InstanceGroup

Returns a new instance of InstanceGroup.



27709
27710
27711
# File 'lib/google/apis/compute_alpha/classes.rb', line 27709

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

Instance Attribute Details

#creation_timestampString

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

Returns:

  • (String)


27615
27616
27617
# File 'lib/google/apis/compute_alpha/classes.rb', line 27615

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)


27621
27622
27623
# File 'lib/google/apis/compute_alpha/classes.rb', line 27621

def description
  @description
end

#fingerprintString

Output only. [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)


27629
27630
27631
# File 'lib/google/apis/compute_alpha/classes.rb', line 27629

def fingerprint
  @fingerprint
end

#idFixnum

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

Returns:

  • (Fixnum)


27636
27637
27638
# File 'lib/google/apis/compute_alpha/classes.rb', line 27636

def id
  @id
end

#kindString

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

Returns:

  • (String)


27642
27643
27644
# File 'lib/google/apis/compute_alpha/classes.rb', line 27642

def kind
  @kind
end

#nameString

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

Returns:

  • (String)


27648
27649
27650
# File 'lib/google/apis/compute_alpha/classes.rb', line 27648

def name
  @name
end

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

Optional. 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: " app1", port: 8080, name: "app1", port: 8081, name: "app2", port: 8082] Named ports apply to all instances in this instance group. Corresponds to the JSON property namedPorts



27660
27661
27662
# File 'lib/google/apis/compute_alpha/classes.rb', line 27660

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)


27668
27669
27670
# File 'lib/google/apis/compute_alpha/classes.rb', line 27668

def network
  @network
end

#regionString

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

Returns:

  • (String)


27674
27675
27676
# File 'lib/google/apis/compute_alpha/classes.rb', line 27674

def region
  @region
end

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

Returns:

  • (String)


27681
27682
27683
# File 'lib/google/apis/compute_alpha/classes.rb', line 27681

def self_link
  @self_link
end

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

Returns:

  • (String)


27687
27688
27689
# File 'lib/google/apis/compute_alpha/classes.rb', line 27687

def self_link_with_id
  @self_link_with_id
end

#sizeFixnum

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

Returns:

  • (Fixnum)


27692
27693
27694
# File 'lib/google/apis/compute_alpha/classes.rb', line 27692

def size
  @size
end

#subnetworkString

Output only. [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)


27701
27702
27703
# File 'lib/google/apis/compute_alpha/classes.rb', line 27701

def subnetwork
  @subnetwork
end

#zoneString

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

Returns:

  • (String)


27707
27708
27709
# File 'lib/google/apis/compute_alpha/classes.rb', line 27707

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



27714
27715
27716
27717
27718
27719
27720
27721
27722
27723
27724
27725
27726
27727
27728
27729
# File 'lib/google/apis/compute_alpha/classes.rb', line 27714

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