class AWS::AutoScaling::Instance
@attr_reader [String] lifecycle_state
@attr_reader [String] availability_zone_name
(e.g. ‘Healthly’ or ‘Unhealthly’).
@attr_reader [String] health_status Returns the instance health status
@attr_reader [String] launch_configuration_name
@attr_reader [String] auto_scaling_group_name
{Group#ec2_instances} instead.
If you prefer {EC2::Instance} objects you should use
end
# …
group.auto_scaling_instances.each do |instance|
group = auto_scaling.groups[‘group-name’]
If you want the instances for a single auto scaling group:
end
# …
auto_scaling.instances.each do |auto_scaling_instance|
auto_scaling = AWS::AutoScaling.new
You can enumerate ALL instances like so:
## Enumerating Auto Scaling Instances
instance.ec2_instance #=> <AWS::EC2::Instance instance_id:i-1234578>
instance.health_statue #=> :healthy
instance = auto_scaling.instances[‘i-1234578’]
to get the Auto Scaling instance.
If you know the EC2 instance id, you can use {InstanceCollection#[]}
## Getting Auto Scaling Instances
A small wrapper around an {EC2::Instance}.
def auto_scaling_group
-
(AutoScaling::Group)
-
def auto_scaling_group Group.new(auto_scaling_group_name, :config => config) end
def availability_zone
-
(EC2::AvailabilityZone)
-
def availability_zone EC2::AvailabilityZone.new(availability_zone_name, :config => config) end
def ec2_instance
-
(EC2::Instance)
-
def ec2_instance EC2::Instance.new(instance_id, :config => config) end
def exists?
-
(Boolean)
- Returns true if there exists an Auto Scaling
def exists? !get_resource.auto_scaling_instances.empty? end
def get_resource attr_name = nil
def get_resource attr_name = nil client_opts = {} client_opts[:instance_ids] = [instance_id] client.describe_auto_scaling_instances(client_opts) end
def initialize instance_id, options = {}
- Api: - private
def initialize instance_id, options = {} @instance_id = instance_id super end
def launch_configuration
-
(LaunchConfiguration)
-
def launch_configuration LaunchConfiguration.new(launch_configuration_name, :config => config) end
def resource_identifiers
def resource_identifiers [[:instance_id, instance_id]] end
def set_health status, options = {}
-
(nil)
-
Options Hash:
(**options)
-
:respect_grace_period
(Boolean
) -- If true,
Parameters:
-
options
(Hash
) -- -
status
(String
) -- Sets the health status of an instance.
def set_health status, options = {} client_opts = {} client_opts[:instance_id] = instance_id client_opts[:health_status] = status client_opts[:should_respect_grace_period] = options[:respect_grace_period] == true client.set_instance_health(client_opts) end
def terminate decrement_desired_capacity
-
(Activity)
- Returns an activity that represents the
Parameters:
-
decrement_desired_capacity
(Boolean
) -- Specifies whether or not
def terminate decrement_desired_capacity client_opts = {} client_opts[:instance_id] = instance_id client_opts[:should_decrement_desired_capacity] = decrement_desired_capacity resp = client.terminate_instance_in_auto_scaling_group(client_opts) Activity.new_from( :terminate_instance_in_auto_scaling_group, resp.activity, resp.activity.activity_id, :config => config) end