Class: Google::Apis::ComputeV1::InstanceGroup

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

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

#to_json

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

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ InstanceGroup

Returns a new instance of InstanceGroup.



10040
10041
10042
# File 'generated/google/apis/compute_v1/classes.rb', line 10040

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)


9964
9965
9966
# File 'generated/google/apis/compute_v1/classes.rb', line 9964

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)


9970
9971
9972
# File 'generated/google/apis/compute_v1/classes.rb', line 9970

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)


9978
9979
9980
# File 'generated/google/apis/compute_v1/classes.rb', line 9978

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)


9984
9985
9986
# File 'generated/google/apis/compute_v1/classes.rb', line 9984

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)


9990
9991
9992
# File 'generated/google/apis/compute_v1/classes.rb', line 9990

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)


9996
9997
9998
# File 'generated/google/apis/compute_v1/classes.rb', line 9996

def name
  @name
end

#named_portsArray<Google::Apis::ComputeV1::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



10005
10006
10007
# File 'generated/google/apis/compute_v1/classes.rb', line 10005

def named_ports
  @named_ports
end

#networkString

The URL of the network to which all instances in the instance group belong. Corresponds to the JSON property network

Returns:

  • (String)


10010
10011
10012
# File 'generated/google/apis/compute_v1/classes.rb', line 10010

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)


10016
10017
10018
# File 'generated/google/apis/compute_v1/classes.rb', line 10016

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)


10021
10022
10023
# File 'generated/google/apis/compute_v1/classes.rb', line 10021

def self_link
  @self_link
end

#sizeFixnum

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

Returns:

  • (Fixnum)


10026
10027
10028
# File 'generated/google/apis/compute_v1/classes.rb', line 10026

def size
  @size
end

#subnetworkString

[Output Only] The URL of the subnetwork to which all instances in the instance group belong. Corresponds to the JSON property subnetwork

Returns:

  • (String)


10032
10033
10034
# File 'generated/google/apis/compute_v1/classes.rb', line 10032

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)


10038
10039
10040
# File 'generated/google/apis/compute_v1/classes.rb', line 10038

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



10045
10046
10047
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
# File 'generated/google/apis/compute_v1/classes.rb', line 10045

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