Class: Google::Apis::ComputeAlpha::InstanceGroupManager
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::InstanceGroupManager
- Defined in:
- generated/google/apis/compute_alpha/classes.rb,
generated/google/apis/compute_alpha/representations.rb,
generated/google/apis/compute_alpha/representations.rb
Overview
An Instance Group Manager resource. (== resource_for beta. instanceGroupManagers ==) (== resource_for v1.instanceGroupManagers ==) (== resource_for beta.regionInstanceGroupManagers ==) (== resource_for v1. regionInstanceGroupManagers ==)
Instance Attribute Summary collapse
-
#activities ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerActivities
Corresponds to the JSON property
activities
. -
#auto_healing_policies ⇒ Array<Google::Apis::ComputeAlpha::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::ComputeAlpha::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::ComputeAlpha::DistributionPolicy
Policy valid only for regional managed instance groups.
-
#failover_action ⇒ String
The action to perform in case of zone failure.
-
#fingerprint ⇒ String
Fingerprint of this resource.
-
#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::ComputeAlpha::NamedPort>
Named ports configured for the Instance Groups complementary to this Instance Group Manager.
-
#pending_actions ⇒ Google::Apis::ComputeAlpha::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
The service account to be used as credentials for all operations performed by the managed instance group on instances.
-
#stateful_policy ⇒ Google::Apis::ComputeAlpha::StatefulPolicy
Stateful configuration for this Instanced Group Manager Corresponds to the JSON property
statefulPolicy
. -
#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::ComputeAlpha::InstanceGroupManagerUpdatePolicy
The update policy for this managed instance group.
-
#versions ⇒ Array<Google::Apis::ComputeAlpha::InstanceGroupManagerVersion>
Specifies the instance templates used by this managed instance group to create instances.
-
#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
9841 9842 9843 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9841 def initialize(**args) update!(**args) end |
Instance Attribute Details
#activities ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerActivities
Corresponds to the JSON property activities
9684 9685 9686 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9684 def activities @activities end |
#auto_healing_policies ⇒ Array<Google::Apis::ComputeAlpha::InstanceGroupManagerAutoHealingPolicy>
The autohealing policy for this managed instance group. You can specify only
one value.
Corresponds to the JSON property autoHealingPolicies
9690 9691 9692 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9690 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
9698 9699 9700 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9698 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
9704 9705 9706 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9704 def @creation_timestamp end |
#current_actions ⇒ Google::Apis::ComputeAlpha::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
9710 9711 9712 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9710 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
9716 9717 9718 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9716 def description @description end |
#distribution_policy ⇒ Google::Apis::ComputeAlpha::DistributionPolicy
Policy valid only for regional managed instance groups.
Corresponds to the JSON property distributionPolicy
9721 9722 9723 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9721 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
9727 9728 9729 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9727 def failover_action @failover_action end |
#fingerprint ⇒ String
Fingerprint of this resource. This field may be used in optimistic locking. It
will be ignored when inserting an InstanceGroupManager. An up-to-date
fingerprint must be provided in order to update the InstanceGroupManager.
Corresponds to the JSON property fingerprint
NOTE: Values are automatically base64 encoded/decoded in the client library.
9735 9736 9737 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9735 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
9741 9742 9743 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9741 def id @id end |
#instance_group ⇒ String
[Output Only] The URL of the Instance Group resource.
Corresponds to the JSON property instanceGroup
9746 9747 9748 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9746 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
9753 9754 9755 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9753 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
9759 9760 9761 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9759 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
9765 9766 9767 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9765 def name @name end |
#named_ports ⇒ Array<Google::Apis::ComputeAlpha::NamedPort>
Named ports configured for the Instance Groups complementary to this Instance
Group Manager.
Corresponds to the JSON property namedPorts
9771 9772 9773 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9771 def named_ports @named_ports end |
#pending_actions ⇒ Google::Apis::ComputeAlpha::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
9777 9778 9779 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9777 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
9783 9784 9785 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9783 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
9789 9790 9791 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9789 def self_link @self_link end |
#service_account ⇒ String
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
9797 9798 9799 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9797 def service_account @service_account end |
#stateful_policy ⇒ Google::Apis::ComputeAlpha::StatefulPolicy
Stateful configuration for this Instanced Group Manager
Corresponds to the JSON property statefulPolicy
9802 9803 9804 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9802 def stateful_policy @stateful_policy 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
9809 9810 9811 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9809 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
9816 9817 9818 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9816 def target_size @target_size end |
#update_policy ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerUpdatePolicy
The update policy for this managed instance group.
Corresponds to the JSON property updatePolicy
9821 9822 9823 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9821 def update_policy @update_policy end |
#versions ⇒ Array<Google::Apis::ComputeAlpha::InstanceGroupManagerVersion>
Specifies the instance templates used by this managed instance group to create
instances.
Each version is defined by an instanceTemplate. Every template can appear at
most once per instance group. This field overrides the top-level
instanceTemplate field. Read more about the relationships between these fields.
Exactly one version must leave the targetSize field unset. That version will
be applied to all remaining instances. For more information, read about canary
updates.
Corresponds to the JSON property versions
9833 9834 9835 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9833 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
9839 9840 9841 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9839 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
9846 9847 9848 9849 9850 9851 9852 9853 9854 9855 9856 9857 9858 9859 9860 9861 9862 9863 9864 9865 9866 9867 9868 9869 9870 9871 9872 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 9846 def update!(**args) @activities = args[:activities] if args.key?(:activities) @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) @stateful_policy = args[:stateful_policy] if args.key?(:stateful_policy) @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 |