Class: Google::Apis::ComputeBeta::InstanceGroupManager
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::InstanceGroupManager
- Defined in:
- generated/google/apis/compute_beta/classes.rb,
generated/google/apis/compute_beta/representations.rb,
generated/google/apis/compute_beta/representations.rb
Overview
An Instance Group Manager resource.
Instance Attribute Summary collapse
-
#auto_healing_policies ⇒ Array<Google::Apis::ComputeBeta::InstanceGroupManagerAutoHealingPolicy>
The autohealing policy for this managed instance group.
-
#base_instance_name ⇒ String
The base instance name to use for instances in this group.
-
#creation_timestamp ⇒ String
[Output Only] The creation timestamp for this managed instance group in RFC3339 text format.
-
#current_actions ⇒ Google::Apis::ComputeBeta::InstanceGroupManagerActionsSummary
[Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions.
-
#description ⇒ String
An optional description of this resource.
-
#distribution_policy ⇒ Google::Apis::ComputeBeta::DistributionPolicy
Policy valid only for regional managed instance groups.
-
#failover_action ⇒ String
The action to perform in case of zone failure.
-
#fingerprint ⇒ String
[Output Only] The fingerprint of the resource data.
-
#id ⇒ Fixnum
[Output Only] A unique identifier for this resource type.
-
#instance_group ⇒ String
[Output Only] The URL of the Instance Group resource.
-
#instance_template ⇒ String
The URL of the instance template that is specified for this managed instance group.
-
#kind ⇒ String
[Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups.
-
#name ⇒ String
The name of the managed instance group.
-
#named_ports ⇒ Array<Google::Apis::ComputeBeta::NamedPort>
Named ports configured for the Instance Groups complementary to this Instance Group Manager.
-
#pending_actions ⇒ Google::Apis::ComputeBeta::InstanceGroupManagerPendingActionsSummary
[Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions.
-
#region ⇒ String
[Output Only] The URL of the region where the managed instance group resides ( for regional resources).
-
#self_link ⇒ String
[Output Only] The URL for this managed instance group.
-
#service_account ⇒ String
[Output Only] The service account to be used as credentials for all operations performed by the managed instance group on instances.
-
#target_pools ⇒ Array<String>
The URLs for all TargetPool resources to which instances in the instanceGroup field are added.
-
#target_size ⇒ Fixnum
The target number of running instances for this managed instance group.
-
#update_policy ⇒ Google::Apis::ComputeBeta::InstanceGroupManagerUpdatePolicy
The update policy for this managed instance group.
-
#versions ⇒ Array<Google::Apis::ComputeBeta::InstanceGroupManagerVersion>
Versions supported by this IGM.
-
#zone ⇒ String
[Output Only] The URL of the zone where the managed instance group is located ( for zonal resources).
Instance Method Summary collapse
-
#initialize(**args) ⇒ InstanceGroupManager
constructor
A new instance of InstanceGroupManager.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Google::Apis::Core::JsonObjectSupport
Methods included from Google::Apis::Core::Hashable
Constructor Details
#initialize(**args) ⇒ InstanceGroupManager
Returns a new instance of InstanceGroupManager
7653 7654 7655 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7653 def initialize(**args) update!(**args) end |
Instance Attribute Details
#auto_healing_policies ⇒ Array<Google::Apis::ComputeBeta::InstanceGroupManagerAutoHealingPolicy>
The autohealing policy for this managed instance group. You can specify only
one value.
Corresponds to the JSON property autoHealingPolicies
7508 7509 7510 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7508 def auto_healing_policies @auto_healing_policies end |
#base_instance_name ⇒ String
The base instance name to use for instances in this group. The value must be 1-
58 characters long. Instances are named by appending a hyphen and a random
four-character string to the base instance name. The base instance name must
comply with RFC1035.
Corresponds to the JSON property baseInstanceName
7516 7517 7518 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7516 def base_instance_name @base_instance_name end |
#creation_timestamp ⇒ String
[Output Only] The creation timestamp for this managed instance group in
RFC3339 text format.
Corresponds to the JSON property creationTimestamp
7522 7523 7524 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7522 def @creation_timestamp end |
#current_actions ⇒ Google::Apis::ComputeBeta::InstanceGroupManagerActionsSummary
[Output Only] The list of instance actions and the number of instances in this
managed instance group that are scheduled for each of those actions.
Corresponds to the JSON property currentActions
7528 7529 7530 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7528 def current_actions @current_actions end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
7534 7535 7536 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7534 def description @description end |
#distribution_policy ⇒ Google::Apis::ComputeBeta::DistributionPolicy
Policy valid only for regional managed instance groups.
Corresponds to the JSON property distributionPolicy
7539 7540 7541 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7539 def distribution_policy @distribution_policy end |
#failover_action ⇒ String
The action to perform in case of zone failure. Only one value is supported,
NO_FAILOVER. The default is NO_FAILOVER.
Corresponds to the JSON property failoverAction
7545 7546 7547 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7545 def failover_action @failover_action end |
#fingerprint ⇒ String
[Output Only] The fingerprint of the resource data. You can use this optional
field for optimistic locking when you update the resource.
Corresponds to the JSON property fingerprint
NOTE: Values are automatically base64 encoded/decoded in the client library.
7552 7553 7554 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7552 def fingerprint @fingerprint end |
#id ⇒ Fixnum
[Output Only] A unique identifier for this resource type. The server generates
this identifier.
Corresponds to the JSON property id
7558 7559 7560 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7558 def id @id end |
#instance_group ⇒ String
[Output Only] The URL of the Instance Group resource.
Corresponds to the JSON property instanceGroup
7563 7564 7565 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7563 def instance_group @instance_group end |
#instance_template ⇒ String
The URL of the instance template that is specified for this managed instance
group. The group uses this template to create all new instances in the managed
instance group.
Corresponds to the JSON property instanceTemplate
7570 7571 7572 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7570 def instance_template @instance_template end |
#kind ⇒ String
[Output Only] The resource type, which is always compute#instanceGroupManager
for managed instance groups.
Corresponds to the JSON property kind
7576 7577 7578 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7576 def kind @kind end |
#name ⇒ String
The name of the managed instance group. The name must be 1-63 characters long,
and comply with RFC1035.
Corresponds to the JSON property name
7582 7583 7584 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7582 def name @name end |
#named_ports ⇒ Array<Google::Apis::ComputeBeta::NamedPort>
Named ports configured for the Instance Groups complementary to this Instance
Group Manager.
Corresponds to the JSON property namedPorts
7588 7589 7590 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7588 def named_ports @named_ports end |
#pending_actions ⇒ Google::Apis::ComputeBeta::InstanceGroupManagerPendingActionsSummary
[Output Only] The list of instance actions and the number of instances in this
managed instance group that are pending for each of those actions.
Corresponds to the JSON property pendingActions
7594 7595 7596 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7594 def pending_actions @pending_actions end |
#region ⇒ String
[Output Only] The URL of the region where the managed instance group resides (
for regional resources).
Corresponds to the JSON property region
7600 7601 7602 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7600 def region @region end |
#self_link ⇒ String
[Output Only] The URL for this managed instance group. The server defines this
URL.
Corresponds to the JSON property selfLink
7606 7607 7608 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7606 def self_link @self_link end |
#service_account ⇒ String
[Output Only] The service account to be used as credentials for all operations
performed by the managed instance group on instances. The service accounts
needs all permissions required to create and delete instances. By default, the
service account projectNumber
@cloudservices.gserviceaccount.com is used.
Corresponds to the JSON property serviceAccount
7614 7615 7616 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7614 def service_account @service_account end |
#target_pools ⇒ Array<String>
The URLs for all TargetPool resources to which instances in the instanceGroup
field are added. The target pools automatically apply to all of the instances
in the managed instance group.
Corresponds to the JSON property targetPools
7621 7622 7623 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7621 def target_pools @target_pools end |
#target_size ⇒ Fixnum
The target number of running instances for this managed instance group.
Deleting or abandoning instances reduces this number. Resizing the group
changes this number.
Corresponds to the JSON property targetSize
7628 7629 7630 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7628 def target_size @target_size end |
#update_policy ⇒ Google::Apis::ComputeBeta::InstanceGroupManagerUpdatePolicy
The update policy for this managed instance group.
Corresponds to the JSON property updatePolicy
7633 7634 7635 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7633 def update_policy @update_policy end |
#versions ⇒ Array<Google::Apis::ComputeBeta::InstanceGroupManagerVersion>
Versions supported by this IGM. User should set this field if they need fine-
grained control over how many instances in each version are run by this IGM.
Versions are keyed by instanceTemplate. Every instanceTemplate can appear at
most once. This field overrides instanceTemplate field. If both
instanceTemplate and versions are set, the user receives a warning. "
instanceTemplate: X" is semantically equivalent to "versions [
instanceTemplate: X
]". Exactly one version must have targetSize field left
unset. Size of such a version will be calculated automatically.
Corresponds to the JSON property versions
7645 7646 7647 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7645 def versions @versions end |
#zone ⇒ String
[Output Only] The URL of the zone where the managed instance group is located (
for zonal resources).
Corresponds to the JSON property zone
7651 7652 7653 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7651 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
7658 7659 7660 7661 7662 7663 7664 7665 7666 7667 7668 7669 7670 7671 7672 7673 7674 7675 7676 7677 7678 7679 7680 7681 7682 |
# File 'generated/google/apis/compute_beta/classes.rb', line 7658 def update!(**args) @auto_healing_policies = args[:auto_healing_policies] if args.key?(:auto_healing_policies) @base_instance_name = args[:base_instance_name] if args.key?(:base_instance_name) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @current_actions = args[:current_actions] if args.key?(:current_actions) @description = args[:description] if args.key?(:description) @distribution_policy = args[:distribution_policy] if args.key?(:distribution_policy) @failover_action = args[:failover_action] if args.key?(:failover_action) @fingerprint = args[:fingerprint] if args.key?(:fingerprint) @id = args[:id] if args.key?(:id) @instance_group = args[:instance_group] if args.key?(:instance_group) @instance_template = args[:instance_template] if args.key?(:instance_template) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @named_ports = args[:named_ports] if args.key?(:named_ports) @pending_actions = args[:pending_actions] if args.key?(:pending_actions) @region = args[:region] if args.key?(:region) @self_link = args[:self_link] if args.key?(:self_link) @service_account = args[:service_account] if args.key?(:service_account) @target_pools = args[:target_pools] if args.key?(:target_pools) @target_size = args[:target_size] if args.key?(:target_size) @update_policy = args[:update_policy] if args.key?(:update_policy) @versions = args[:versions] if args.key?(:versions) @zone = args[:zone] if args.key?(:zone) end |