ExAws.Autoscaling.Core
Auto Scaling
Auto Scaling
Auto Scaling is designed to automatically launch or terminate EC2 instances based on user-defined policies, schedules, and health checks. Use this service in conjunction with the Amazon CloudWatch and Elastic Load Balancing services.
Summary↑
Types ↑
xml_string_max_len1600 :: binary
delete_notification_configuration_type :: [auto_scaling_group_name: resource_name, topic_arn: resource_name]
metric_granularity_type :: [{:granularity, xml_string_max_len255}]
timestamp_type :: integer
policy_arn_type :: [{:policy_arn, resource_name}]
put_notification_configuration_type :: [auto_scaling_group_name: resource_name, notification_types: auto_scaling_notification_types, topic_arn: resource_name]
attach_load_balancers_type :: [auto_scaling_group_name: resource_name, load_balancer_names: load_balancer_names]
resource_contention_fault :: [{:message, xml_string_max_len255}]
auto_scaling_instance_details :: [auto_scaling_group_name: xml_string_max_len255, availability_zone: xml_string_max_len255, health_status: xml_string_max_len32, instance_id: xml_string_max_len16, launch_configuration_name: xml_string_max_len255, lifecycle_state: xml_string_max_len32]
activity_type :: [{:activity, activity}]
health_check_grace_period :: integer
processes :: [process_type]
create_or_update_tags_type :: [{:tags, tags}]
describe_auto_scaling_instances_type :: [instance_ids: instance_ids, max_records: max_records, next_token: xml_string]
disable_metrics_collection_query :: [auto_scaling_group_name: resource_name, metrics: metrics]
create_launch_configuration_type :: [associate_public_ip_address: associate_public_ip_address, block_device_mappings: block_device_mappings, classic_link_vpc_id: xml_string_max_len255, classic_link_vpc_security_groups: classic_link_vpc_security_groups, ebs_optimized: ebs_optimized, iam_instance_profile: xml_string_max_len1600, image_id: xml_string_max_len255, instance_id: xml_string_max_len16, instance_monitoring: instance_monitoring, instance_type: xml_string_max_len255, kernel_id: xml_string_max_len255, key_name: xml_string_max_len255, launch_configuration_name: xml_string_max_len255, placement_tenancy: xml_string_max_len64, ramdisk_id: xml_string_max_len255, security_groups: security_groups, spot_price: spot_price, user_data: xml_string_user_data]
block_device_ebs_iops :: integer
scaling_activity_in_progress_fault :: [{:message, xml_string_max_len255}]
launch_configurations_type :: [launch_configurations: launch_configurations, next_token: xml_string]
scaling_process_query :: [auto_scaling_group_name: resource_name, scaling_processes: process_names]
process_type :: [{:process_name, xml_string_max_len255}]
describe_lifecycle_hooks_type :: [auto_scaling_group_name: resource_name, lifecycle_hook_names: lifecycle_hook_names]
exit_standby_query :: [auto_scaling_group_name: resource_name, instance_ids: instance_ids]
should_decrement_desired_capacity :: boolean
global_timeout :: integer
min_adjustment_step :: integer
enable_metrics_collection_query :: [auto_scaling_group_name: resource_name, granularity: xml_string_max_len255, metrics: metrics]
already_exists_fault :: [{:message, xml_string_max_len255}]
describe_adjustment_types_answer :: [{:adjustment_types, adjustment_types}]
describe_load_balancers_response :: [load_balancers: load_balancer_states, next_token: xml_string]
policies_type :: [next_token: xml_string, scaling_policies: scaling_policies]
auto_scaling_group_min_size :: integer
delete_auto_scaling_group_type :: [auto_scaling_group_name: resource_name, force_delete: force_delete]
describe_auto_scaling_notification_types_answer :: [{:auto_scaling_notification_types, auto_scaling_notification_types}]
spot_price :: binary
min_adjustment_magnitude :: integer
describe_scheduled_actions_type :: [auto_scaling_group_name: resource_name, end_time: timestamp_type, max_records: max_records, next_token: xml_string, scheduled_action_names: scheduled_action_names, start_time: timestamp_type]
lifecycle_action_result :: binary
complete_lifecycle_action_type :: [auto_scaling_group_name: resource_name, lifecycle_action_result: lifecycle_action_result, lifecycle_action_token: lifecycle_action_token, lifecycle_hook_name: ascii_string_max_len255]
auto_scaling_group_max_size :: integer
detach_load_balancers_type :: [auto_scaling_group_name: resource_name, load_balancer_names: load_balancer_names]
lifecycle_hook :: [auto_scaling_group_name: resource_name, default_result: lifecycle_action_result, global_timeout: global_timeout, heartbeat_timeout: heartbeat_timeout, lifecycle_hook_name: ascii_string_max_len255, lifecycle_transition: lifecycle_transition, notification_metadata: xml_string_max_len1023, notification_target_arn: resource_name, role_arn: resource_name]
max_number_of_launch_configurations :: integer
values :: [xml_string]
describe_termination_policy_types_answer :: [{:termination_policy_types, termination_policies}]
lifecycle_transition :: binary
activities :: [activity]
invalid_next_token :: [{:message, xml_string_max_len255}]
filter :: [name: xml_string, values: values]
scheduled_actions_type :: [next_token: xml_string, scheduled_update_group_actions: scheduled_update_group_actions]
ebs :: [delete_on_termination: block_device_ebs_delete_on_termination, iops: block_device_ebs_iops, snapshot_id: xml_string_max_len255, volume_size: block_device_ebs_volume_size, volume_type: block_device_ebs_volume_type]
put_scaling_policy_type :: [adjustment_type: xml_string_max_len255, auto_scaling_group_name: resource_name, cooldown: cooldown, estimated_instance_warmup: estimated_instance_warmup, metric_aggregation_type: xml_string_max_len32, min_adjustment_magnitude: min_adjustment_magnitude, min_adjustment_step: min_adjustment_step, policy_name: xml_string_max_len255, policy_type: xml_string_max_len64, scaling_adjustment: policy_increment, step_adjustments: step_adjustments]
processes_type :: [{:processes, processes}]
block_device_ebs_delete_on_termination :: boolean
tags_type :: [next_token: xml_string, tags: tag_description_list]
describe_load_balancers_request :: [auto_scaling_group_name: resource_name, max_records: max_records, next_token: xml_string]
describe_tags_type :: [filters: filters, max_records: max_records, next_token: xml_string]
describe_lifecycle_hook_types_answer :: [{:lifecycle_hook_types, auto_scaling_notification_types}]
xml_string_max_len1023 :: binary
record_lifecycle_action_heartbeat_type :: [auto_scaling_group_name: resource_name, lifecycle_action_token: lifecycle_action_token, lifecycle_hook_name: ascii_string_max_len255]
delete_tags_type :: [{:tags, tags}]
describe_metric_collection_types_answer :: [granularities: metric_granularity_types, metrics: metric_collection_types]
activity_ids :: [xml_string]
tag :: [key: tag_key, propagate_at_launch: propagate_at_launch, resource_id: xml_string, resource_type: xml_string, value: tag_value]
xml_string_max_len16 :: binary
delete_scheduled_action_type :: [auto_scaling_group_name: resource_name, scheduled_action_name: resource_name]
lifecycle_action_token :: binary
metric_scale :: float
limit_exceeded_fault :: [{:message, xml_string_max_len255}]
auto_scaling_group_desired_capacity :: integer
auto_scaling_groups_type :: [auto_scaling_groups: auto_scaling_groups, next_token: xml_string]
adjustment_type :: [{:adjustment_type, xml_string_max_len255}]
enter_standby_answer :: [{:activities, activities}]
load_balancer_state :: [load_balancer_name: xml_string_max_len255, state: xml_string_max_len255]
associate_public_ip_address :: boolean
ascii_string_max_len255 :: binary
tag_value :: binary
detach_instances_answer :: [{:activities, activities}]
xml_string_max_len64 :: binary
max_records :: integer
heartbeat_timeout :: integer
update_auto_scaling_group_type :: [auto_scaling_group_name: resource_name, availability_zones: availability_zones, default_cooldown: cooldown, desired_capacity: auto_scaling_group_desired_capacity, health_check_grace_period: health_check_grace_period, health_check_type: xml_string_max_len32, launch_configuration_name: resource_name, max_size: auto_scaling_group_max_size, min_size: auto_scaling_group_min_size, placement_group: xml_string_max_len255, termination_policies: termination_policies, vpc_zone_identifier: xml_string_max_len255]
xml_string :: binary
scaling_policy :: [adjustment_type: xml_string_max_len255, alarms: alarms, auto_scaling_group_name: xml_string_max_len255, cooldown: cooldown, estimated_instance_warmup: estimated_instance_warmup, metric_aggregation_type: xml_string_max_len32, min_adjustment_magnitude: min_adjustment_magnitude, min_adjustment_step: min_adjustment_step, policy_arn: resource_name, policy_name: xml_string_max_len255, policy_type: xml_string_max_len64, scaling_adjustment: policy_increment, step_adjustments: step_adjustments]
policy_increment :: integer
delete_lifecycle_hook_type :: [auto_scaling_group_name: resource_name, lifecycle_hook_name: ascii_string_max_len255]
terminate_instance_in_auto_scaling_group_type :: [instance_id: xml_string_max_len16, should_decrement_desired_capacity: should_decrement_desired_capacity]
instance_monitoring :: [{:enabled, monitoring_enabled}]
force_delete :: boolean
launch_configuration :: [associate_public_ip_address: associate_public_ip_address, block_device_mappings: block_device_mappings, classic_link_vpc_id: xml_string_max_len255, classic_link_vpc_security_groups: classic_link_vpc_security_groups, created_time: timestamp_type, ebs_optimized: ebs_optimized, iam_instance_profile: xml_string_max_len1600, image_id: xml_string_max_len255, instance_monitoring: instance_monitoring, instance_type: xml_string_max_len255, kernel_id: xml_string_max_len255, key_name: xml_string_max_len255, launch_configuration_arn: resource_name, launch_configuration_name: xml_string_max_len255, placement_tenancy: xml_string_max_len64, ramdisk_id: xml_string_max_len255, security_groups: security_groups, spot_price: spot_price, user_data: xml_string_user_data]
tag_description :: [key: tag_key, propagate_at_launch: propagate_at_launch, resource_id: xml_string, resource_type: xml_string, value: tag_value]
propagate_at_launch :: boolean
lifecycle_state :: binary
describe_notification_configurations_type :: [auto_scaling_group_names: auto_scaling_group_names, max_records: max_records, next_token: xml_string]
describe_policies_type :: [auto_scaling_group_name: resource_name, max_records: max_records, next_token: xml_string, policy_names: policy_names, policy_types: policy_types]
scheduled_update_group_action :: [auto_scaling_group_name: xml_string_max_len255, desired_capacity: auto_scaling_group_desired_capacity, end_time: timestamp_type, max_size: auto_scaling_group_max_size, min_size: auto_scaling_group_min_size, recurrence: xml_string_max_len255, scheduled_action_arn: resource_name, scheduled_action_name: xml_string_max_len255, start_time: timestamp_type, time: timestamp_type]
describe_lifecycle_hooks_answer :: [{:lifecycle_hooks, lifecycle_hooks}]
set_desired_capacity_type :: [auto_scaling_group_name: resource_name, desired_capacity: auto_scaling_group_desired_capacity, honor_cooldown: honor_cooldown]
no_device :: boolean
honor_cooldown :: boolean
attach_instances_query :: [auto_scaling_group_name: resource_name, instance_ids: instance_ids]
create_auto_scaling_group_type :: [auto_scaling_group_name: xml_string_max_len255, availability_zones: availability_zones, default_cooldown: cooldown, desired_capacity: auto_scaling_group_desired_capacity, health_check_grace_period: health_check_grace_period, health_check_type: xml_string_max_len32, instance_id: xml_string_max_len16, launch_configuration_name: resource_name, load_balancer_names: load_balancer_names, max_size: auto_scaling_group_max_size, min_size: auto_scaling_group_min_size, placement_group: xml_string_max_len255, tags: tags, termination_policies: termination_policies, vpc_zone_identifier: xml_string_max_len255]
enter_standby_query :: [auto_scaling_group_name: resource_name, instance_ids: instance_ids, should_decrement_desired_capacity: should_decrement_desired_capacity]
put_lifecycle_hook_type :: [auto_scaling_group_name: resource_name, default_result: lifecycle_action_result, heartbeat_timeout: heartbeat_timeout, lifecycle_hook_name: ascii_string_max_len255, lifecycle_transition: lifecycle_transition, notification_metadata: xml_string_max_len1023, notification_target_arn: resource_name, role_arn: resource_name]
describe_notification_configurations_answer :: [next_token: xml_string, notification_configurations: notification_configurations]
activity :: [activity_id: xml_string, auto_scaling_group_name: xml_string_max_len255, cause: xml_string_max_len1023, description: xml_string, details: xml_string, end_time: timestamp_type, progress: progress, start_time: timestamp_type, status_code: scaling_activity_status_code, status_message: xml_string_max_len255]
enabled_metric :: [granularity: xml_string_max_len255, metric: xml_string_max_len255]
metric_collection_type :: [{:metric, xml_string_max_len255}]
xml_string_max_len255 :: binary
set_instance_health_query :: [health_status: xml_string_max_len32, instance_id: xml_string_max_len16, should_respect_grace_period: should_respect_grace_period]
estimated_instance_warmup :: integer
block_device_ebs_volume_size :: integer
execute_policy_type :: [auto_scaling_group_name: resource_name, breach_threshold: metric_scale, honor_cooldown: honor_cooldown, metric_value: metric_scale, policy_name: resource_name]
delete_policy_type :: [auto_scaling_group_name: resource_name, policy_name: resource_name]
should_respect_grace_period :: boolean
xml_string_max_len32 :: binary
progress :: integer
step_adjustment :: [metric_interval_lower_bound: metric_scale, metric_interval_upper_bound: metric_scale, scaling_adjustment: policy_increment]
describe_scaling_activities_type :: [activity_ids: activity_ids, auto_scaling_group_name: resource_name, max_records: max_records, next_token: xml_string]
scaling_activity_status_code :: binary
block_device_ebs_volume_type :: binary
auto_scaling_instances_type :: [auto_scaling_instances: auto_scaling_instances, next_token: xml_string]
tag_key :: binary
launch_configuration_names_type :: [launch_configuration_names: launch_configuration_names, max_records: max_records, next_token: xml_string]
describe_account_limits_answer :: [max_number_of_auto_scaling_groups: max_number_of_auto_scaling_groups, max_number_of_launch_configurations: max_number_of_launch_configurations]
cooldown :: integer
detach_instances_query :: [auto_scaling_group_name: resource_name, instance_ids: instance_ids, should_decrement_desired_capacity: should_decrement_desired_capacity]
monitoring_enabled :: boolean
max_number_of_auto_scaling_groups :: integer
xml_string_user_data :: binary
auto_scaling_group_names_type :: [auto_scaling_group_names: auto_scaling_group_names, max_records: max_records, next_token: xml_string]
ebs_optimized :: boolean
resource_in_use_fault :: [{:message, xml_string_max_len255}]
auto_scaling_group :: [auto_scaling_group_arn: resource_name, auto_scaling_group_name: xml_string_max_len255, availability_zones: availability_zones, created_time: timestamp_type, default_cooldown: cooldown, desired_capacity: auto_scaling_group_desired_capacity, enabled_metrics: enabled_metrics, health_check_grace_period: health_check_grace_period, health_check_type: xml_string_max_len32, instances: instances, launch_configuration_name: xml_string_max_len255, load_balancer_names: load_balancer_names, max_size: auto_scaling_group_max_size, min_size: auto_scaling_group_min_size, placement_group: xml_string_max_len255, status: xml_string_max_len255, suspended_processes: suspended_processes, tags: tag_description_list, termination_policies: termination_policies, vpc_zone_identifier: xml_string_max_len255]
resource_name :: binary
exit_standby_answer :: [{:activities, activities}]
notification_configuration :: [auto_scaling_group_name: resource_name, notification_type: xml_string_max_len255, topic_arn: resource_name]
launch_configuration_name_type :: [{:launch_configuration_name, resource_name}]
suspended_process :: [process_name: xml_string_max_len255, suspension_reason: xml_string_max_len255]
activities_type :: [activities: activities, next_token: xml_string]
block_device_mapping :: [device_name: xml_string_max_len255, ebs: ebs, no_device: no_device, virtual_name: xml_string_max_len255]
put_scheduled_update_group_action_type :: [auto_scaling_group_name: resource_name, desired_capacity: auto_scaling_group_desired_capacity, end_time: timestamp_type, max_size: auto_scaling_group_max_size, min_size: auto_scaling_group_min_size, recurrence: xml_string_max_len255, scheduled_action_name: xml_string_max_len255, start_time: timestamp_type, time: timestamp_type]
alarm :: [alarm_arn: resource_name, alarm_name: xml_string_max_len255]
instance :: [availability_zone: xml_string_max_len255, health_status: xml_string_max_len32, instance_id: xml_string_max_len16, launch_configuration_name: xml_string_max_len255, lifecycle_state: lifecycle_state]
Functions
Specs:
- attach_instances(client :: ExAws.Autoscaling.t, input :: attach_instances_query) :: ExAws.Request.Query.response_t
AttachInstances
Attaches one or more EC2 instances to the specified Auto Scaling group.
For more information, see Attach EC2 Instances to Your Auto Scaling Group in the Auto Scaling Developer Guide.
Specs:
- attach_instances!(client :: ExAws.Autoscaling.t, input :: attach_instances_query) :: ExAws.Request.Query.success_t | no_return
Same as attach_instances/2
but raise on error.
Specs:
- attach_load_balancers(client :: ExAws.Autoscaling.t, input :: attach_load_balancers_type) :: ExAws.Request.Query.response_t
AttachLoadBalancers
Attaches one or more load balancers to the specified Auto Scaling group.
To describe the load balancers for an Auto Scaling group, use
DescribeLoadBalancers
. To detach the load balancer from the Auto Scaling
group, use DetachLoadBalancers
.
For more information, see Attach a Load Balancer to Your Auto Scaling Group in the Auto Scaling Developer Guide.
Specs:
- attach_load_balancers!(client :: ExAws.Autoscaling.t, input :: attach_load_balancers_type) :: ExAws.Request.Query.success_t | no_return
Same as attach_load_balancers/2
but raise on error.
Specs:
- complete_lifecycle_action(client :: ExAws.Autoscaling.t, input :: complete_lifecycle_action_type) :: ExAws.Request.Query.response_t
CompleteLifecycleAction
Completes the lifecycle action for the associated token initiated under the given lifecycle hook with the specified result.
This operation is a part of the basic sequence for adding a lifecycle hook to an Auto Scaling group:
Create a notification target. A target can be either an Amazon SQS queue or an Amazon SNS topic.
Create an IAM role. This role allows Auto Scaling to publish lifecycle notifications to the designated SQS queue or SNS topic.
Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate.
If necessary, record the lifecycle action heartbeat to keep the instance in a pending state.
- Complete the lifecycle action.
For more information, see Auto Scaling Pending State and Auto Scaling Terminating State in the Auto Scaling Developer Guide.
Specs:
- complete_lifecycle_action!(client :: ExAws.Autoscaling.t, input :: complete_lifecycle_action_type) :: ExAws.Request.Query.success_t | no_return
Same as complete_lifecycle_action/2
but raise on error.
Specs:
- create_auto_scaling_group(client :: ExAws.Autoscaling.t, input :: create_auto_scaling_group_type) :: ExAws.Request.Query.response_t
CreateAutoScalingGroup
Creates an Auto Scaling group with the specified name and attributes.
If you exceed your maximum limit of Auto Scaling groups, which by default
is 20 per region, the call fails. For information about viewing and
updating this limit, see DescribeAccountLimits
.
For more information, see Auto Scaling Groups in the Auto Scaling Developer Guide.
Specs:
- create_auto_scaling_group!(client :: ExAws.Autoscaling.t, input :: create_auto_scaling_group_type) :: ExAws.Request.Query.success_t | no_return
Same as create_auto_scaling_group/2
but raise on error.
Specs:
- create_launch_configuration(client :: ExAws.Autoscaling.t, input :: create_launch_configuration_type) :: ExAws.Request.Query.response_t
CreateLaunchConfiguration
Creates a launch configuration.
If you exceed your maximum limit of launch configurations, which by default
is 100 per region, the call fails. For information about viewing and
updating this limit, see DescribeAccountLimits
.
For more information, see Launch Configurations in the Auto Scaling Developer Guide.
Specs:
- create_launch_configuration!(client :: ExAws.Autoscaling.t, input :: create_launch_configuration_type) :: ExAws.Request.Query.success_t | no_return
Same as create_launch_configuration/2
but raise on error.
Specs:
- create_or_update_tags(client :: ExAws.Autoscaling.t, input :: create_or_update_tags_type) :: ExAws.Request.Query.response_t
CreateOrUpdateTags
Creates or updates tags for the specified Auto Scaling group.
A tag is defined by its resource ID, resource type, key, value, and
propagate flag. The value and the propagate flag are optional parameters.
The only supported resource type is auto-scaling-group
, and the resource
ID must be the name of the group. The PropagateAtLaunch
flag determines
whether the tag is added to instances launched in the group. Valid values
are true
or false
.
When you specify a tag with a key that already exists, the operation overwrites the previous tag definition, and you do not get an error message.
For more information, see Tagging Auto Scaling Groups and Instances in the Auto Scaling Developer Guide.
Specs:
- create_or_update_tags!(client :: ExAws.Autoscaling.t, input :: create_or_update_tags_type) :: ExAws.Request.Query.success_t | no_return
Same as create_or_update_tags/2
but raise on error.
Specs:
- delete_auto_scaling_group(client :: ExAws.Autoscaling.t, input :: delete_auto_scaling_group_type) :: ExAws.Request.Query.response_t
DeleteAutoScalingGroup
Deletes the specified Auto Scaling group.
The group must have no instances and no scaling activities in progress.
To remove all instances before calling DeleteAutoScalingGroup
, call
UpdateAutoScalingGroup
to set the minimum and maximum size of the Auto
Scaling group to zero.
Specs:
- delete_auto_scaling_group!(client :: ExAws.Autoscaling.t, input :: delete_auto_scaling_group_type) :: ExAws.Request.Query.success_t | no_return
Same as delete_auto_scaling_group/2
but raise on error.
Specs:
- delete_launch_configuration(client :: ExAws.Autoscaling.t, input :: launch_configuration_name_type) :: ExAws.Request.Query.response_t
DeleteLaunchConfiguration
Deletes the specified launch configuration.
The launch configuration must not be attached to an Auto Scaling group. When this call completes, the launch configuration is no longer available for use.
Specs:
- delete_launch_configuration!(client :: ExAws.Autoscaling.t, input :: launch_configuration_name_type) :: ExAws.Request.Query.success_t | no_return
Same as delete_launch_configuration/2
but raise on error.
Specs:
- delete_lifecycle_hook(client :: ExAws.Autoscaling.t, input :: delete_lifecycle_hook_type) :: ExAws.Request.Query.response_t
DeleteLifecycleHook
Deletes the specified lifecycle hook.
If there are any outstanding lifecycle actions, they are completed first
(ABANDON
for launching instances, CONTINUE
for terminating instances).
Specs:
- delete_lifecycle_hook!(client :: ExAws.Autoscaling.t, input :: delete_lifecycle_hook_type) :: ExAws.Request.Query.success_t | no_return
Same as delete_lifecycle_hook/2
but raise on error.
Specs:
- delete_notification_configuration(client :: ExAws.Autoscaling.t, input :: delete_notification_configuration_type) :: ExAws.Request.Query.response_t
DeleteNotificationConfiguration
Deletes the specified notification.
Specs:
- delete_notification_configuration!(client :: ExAws.Autoscaling.t, input :: delete_notification_configuration_type) :: ExAws.Request.Query.success_t | no_return
Same as delete_notification_configuration/2
but raise on error.
Specs:
- delete_policy(client :: ExAws.Autoscaling.t, input :: delete_policy_type) :: ExAws.Request.Query.response_t
DeletePolicy
Deletes the specified Auto Scaling policy.
Specs:
- delete_policy!(client :: ExAws.Autoscaling.t, input :: delete_policy_type) :: ExAws.Request.Query.success_t | no_return
Same as delete_policy/2
but raise on error.
Specs:
- delete_scheduled_action(client :: ExAws.Autoscaling.t, input :: delete_scheduled_action_type) :: ExAws.Request.Query.response_t
DeleteScheduledAction
Deletes the specified scheduled action.
Specs:
- delete_scheduled_action!(client :: ExAws.Autoscaling.t, input :: delete_scheduled_action_type) :: ExAws.Request.Query.success_t | no_return
Same as delete_scheduled_action/2
but raise on error.
Specs:
- delete_tags(client :: ExAws.Autoscaling.t, input :: delete_tags_type) :: ExAws.Request.Query.response_t
DeleteTags
Deletes the specified tags.
Specs:
- delete_tags!(client :: ExAws.Autoscaling.t, input :: delete_tags_type) :: ExAws.Request.Query.success_t | no_return
Same as delete_tags/2
but raise on error.
Specs:
- describe_account_limits(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.response_t
DescribeAccountLimits
Describes the current Auto Scaling resource limits for your AWS account.
For information about requesting an increase in these limits, see AWS Service Limits in the Amazon Web Services General Reference.
Specs:
- describe_account_limits!(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.success_t | no_return
Same as describe_account_limits/2
but raise on error.
Specs:
- describe_adjustment_types(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.response_t
DescribeAdjustmentTypes
Describes the policy adjustment types for use with PutScalingPolicy
.
Specs:
- describe_adjustment_types!(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.success_t | no_return
Same as describe_adjustment_types/2
but raise on error.
Specs:
- describe_auto_scaling_groups(client :: ExAws.Autoscaling.t, input :: auto_scaling_group_names_type) :: ExAws.Request.Query.response_t
DescribeAutoScalingGroups
Describes one or more Auto Scaling groups. If a list of names is not provided, the call describes all Auto Scaling groups.
Specs:
- describe_auto_scaling_groups!(client :: ExAws.Autoscaling.t, input :: auto_scaling_group_names_type) :: ExAws.Request.Query.success_t | no_return
Same as describe_auto_scaling_groups/2
but raise on error.
Specs:
- describe_auto_scaling_instances(client :: ExAws.Autoscaling.t, input :: describe_auto_scaling_instances_type) :: ExAws.Request.Query.response_t
DescribeAutoScalingInstances
Describes one or more Auto Scaling instances. If a list is not provided, the call describes all instances.
Specs:
- describe_auto_scaling_instances!(client :: ExAws.Autoscaling.t, input :: describe_auto_scaling_instances_type) :: ExAws.Request.Query.success_t | no_return
Same as describe_auto_scaling_instances/2
but raise on error.
Specs:
- describe_auto_scaling_notification_types(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.response_t
DescribeAutoScalingNotificationTypes
Describes the notification types that are supported by Auto Scaling.
Specs:
- describe_auto_scaling_notification_types!(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.success_t | no_return
Same as describe_auto_scaling_notification_types/2
but raise on error.
Specs:
- describe_launch_configurations(client :: ExAws.Autoscaling.t, input :: launch_configuration_names_type) :: ExAws.Request.Query.response_t
DescribeLaunchConfigurations
Describes one or more launch configurations. If you omit the list of names, then the call describes all launch configurations.
Specs:
- describe_launch_configurations!(client :: ExAws.Autoscaling.t, input :: launch_configuration_names_type) :: ExAws.Request.Query.success_t | no_return
Same as describe_launch_configurations/2
but raise on error.
Specs:
- describe_lifecycle_hook_types(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.response_t
DescribeLifecycleHookTypes
Describes the available types of lifecycle hooks.
Specs:
- describe_lifecycle_hook_types!(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.success_t | no_return
Same as describe_lifecycle_hook_types/2
but raise on error.
Specs:
- describe_lifecycle_hooks(client :: ExAws.Autoscaling.t, input :: describe_lifecycle_hooks_type) :: ExAws.Request.Query.response_t
DescribeLifecycleHooks
Describes the lifecycle hooks for the specified Auto Scaling group.
Specs:
- describe_lifecycle_hooks!(client :: ExAws.Autoscaling.t, input :: describe_lifecycle_hooks_type) :: ExAws.Request.Query.success_t | no_return
Same as describe_lifecycle_hooks/2
but raise on error.
Specs:
- describe_load_balancers(client :: ExAws.Autoscaling.t, input :: describe_load_balancers_request) :: ExAws.Request.Query.response_t
DescribeLoadBalancers
Describes the load balancers for the specified Auto Scaling group.
Specs:
- describe_load_balancers!(client :: ExAws.Autoscaling.t, input :: describe_load_balancers_request) :: ExAws.Request.Query.success_t | no_return
Same as describe_load_balancers/2
but raise on error.
Specs:
- describe_metric_collection_types(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.response_t
DescribeMetricCollectionTypes
Describes the available CloudWatch metrics for Auto Scaling.
Note that the GroupStandbyInstances
metric is not returned by default.
You must explicitly request this metric when calling
EnableMetricsCollection
.
Specs:
- describe_metric_collection_types!(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.success_t | no_return
Same as describe_metric_collection_types/2
but raise on error.
Specs:
- describe_notification_configurations(client :: ExAws.Autoscaling.t, input :: describe_notification_configurations_type) :: ExAws.Request.Query.response_t
DescribeNotificationConfigurations
Describes the notification actions associated with the specified Auto Scaling group.
Specs:
- describe_notification_configurations!(client :: ExAws.Autoscaling.t, input :: describe_notification_configurations_type) :: ExAws.Request.Query.success_t | no_return
Same as describe_notification_configurations/2
but raise on error.
Specs:
- describe_policies(client :: ExAws.Autoscaling.t, input :: describe_policies_type) :: ExAws.Request.Query.response_t
DescribePolicies
Describes the policies for the specified Auto Scaling group.
Specs:
- describe_policies!(client :: ExAws.Autoscaling.t, input :: describe_policies_type) :: ExAws.Request.Query.success_t | no_return
Same as describe_policies/2
but raise on error.
Specs:
- describe_scaling_activities(client :: ExAws.Autoscaling.t, input :: describe_scaling_activities_type) :: ExAws.Request.Query.response_t
DescribeScalingActivities
Describes one or more scaling activities for the specified Auto Scaling
group. If you omit the ActivityIds
, the call returns all activities from
the past six weeks. Activities are sorted by the start time. Activities
still in progress appear first on the list.
Specs:
- describe_scaling_activities!(client :: ExAws.Autoscaling.t, input :: describe_scaling_activities_type) :: ExAws.Request.Query.success_t | no_return
Same as describe_scaling_activities/2
but raise on error.
Specs:
- describe_scaling_process_types(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.response_t
DescribeScalingProcessTypes
Describes the scaling process types for use with ResumeProcesses
and
SuspendProcesses
.
Specs:
- describe_scaling_process_types!(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.success_t | no_return
Same as describe_scaling_process_types/2
but raise on error.
Specs:
- describe_scheduled_actions(client :: ExAws.Autoscaling.t, input :: describe_scheduled_actions_type) :: ExAws.Request.Query.response_t
DescribeScheduledActions
Describes the actions scheduled for your Auto Scaling group that haven’t
run. To describe the actions that have already run, use
DescribeScalingActivities
.
Specs:
- describe_scheduled_actions!(client :: ExAws.Autoscaling.t, input :: describe_scheduled_actions_type) :: ExAws.Request.Query.success_t | no_return
Same as describe_scheduled_actions/2
but raise on error.
Specs:
- describe_tags(client :: ExAws.Autoscaling.t, input :: describe_tags_type) :: ExAws.Request.Query.response_t
DescribeTags
Describes the specified tags.
You can use filters to limit the results. For example, you can query for the tags for a specific Auto Scaling group. You can specify multiple values for a filter. A tag must match at least one of the specified values for it to be included in the results.
You can also specify multiple filters. The result includes information for a particular tag only if it matches all the filters. If there’s no match, no special message is returned.
Specs:
- describe_tags!(client :: ExAws.Autoscaling.t, input :: describe_tags_type) :: ExAws.Request.Query.success_t | no_return
Same as describe_tags/2
but raise on error.
Specs:
- describe_termination_policy_types(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.response_t
DescribeTerminationPolicyTypes
Describes the termination policies supported by Auto Scaling.
Specs:
- describe_termination_policy_types!(client :: ExAws.Autoscaling.t) :: ExAws.Request.Query.success_t | no_return
Same as describe_termination_policy_types/2
but raise on error.
Specs:
- detach_instances(client :: ExAws.Autoscaling.t, input :: detach_instances_query) :: ExAws.Request.Query.response_t
DetachInstances
Removes one or more instances from the specified Auto Scaling group. After the instances are detached, you can manage them independently from the rest of the Auto Scaling group.
For more information, see Detach EC2 Instances from Your Auto Scaling Group in the Auto Scaling Developer Guide.
Specs:
- detach_instances!(client :: ExAws.Autoscaling.t, input :: detach_instances_query) :: ExAws.Request.Query.success_t | no_return
Same as detach_instances/2
but raise on error.
Specs:
- detach_load_balancers(client :: ExAws.Autoscaling.t, input :: detach_load_balancers_type) :: ExAws.Request.Query.response_t
DetachLoadBalancers
Removes one or more load balancers from the specified Auto Scaling group.
When you detach a load balancer, it enters the Removing
state while
deregistering the instances in the group. When all instances are
deregistered, then you can no longer describe the load balancer using
DescribeLoadBalancers
. Note that the instances remain running.
Specs:
- detach_load_balancers!(client :: ExAws.Autoscaling.t, input :: detach_load_balancers_type) :: ExAws.Request.Query.success_t | no_return
Same as detach_load_balancers/2
but raise on error.
Specs:
- disable_metrics_collection(client :: ExAws.Autoscaling.t, input :: disable_metrics_collection_query) :: ExAws.Request.Query.response_t
DisableMetricsCollection
Disables monitoring of the specified metrics for the specified Auto Scaling group.
Specs:
- disable_metrics_collection!(client :: ExAws.Autoscaling.t, input :: disable_metrics_collection_query) :: ExAws.Request.Query.success_t | no_return
Same as disable_metrics_collection/2
but raise on error.
Specs:
- enable_metrics_collection(client :: ExAws.Autoscaling.t, input :: enable_metrics_collection_query) :: ExAws.Request.Query.response_t
EnableMetricsCollection
Enables monitoring of the specified metrics for the specified Auto Scaling group.
You can only enable metrics collection if InstanceMonitoring
in the
launch configuration for the group is set to True
.
Specs:
- enable_metrics_collection!(client :: ExAws.Autoscaling.t, input :: enable_metrics_collection_query) :: ExAws.Request.Query.success_t | no_return
Same as enable_metrics_collection/2
but raise on error.
Specs:
- enter_standby(client :: ExAws.Autoscaling.t, input :: enter_standby_query) :: ExAws.Request.Query.response_t
EnterStandby
Moves the specified instances into Standby
mode.
For more information, see Auto Scaling InService State in the Auto Scaling Developer Guide.
Specs:
- enter_standby!(client :: ExAws.Autoscaling.t, input :: enter_standby_query) :: ExAws.Request.Query.success_t | no_return
Same as enter_standby/2
but raise on error.
Specs:
- execute_policy(client :: ExAws.Autoscaling.t, input :: execute_policy_type) :: ExAws.Request.Query.response_t
ExecutePolicy
Executes the specified policy.
Specs:
- execute_policy!(client :: ExAws.Autoscaling.t, input :: execute_policy_type) :: ExAws.Request.Query.success_t | no_return
Same as execute_policy/2
but raise on error.
Specs:
- exit_standby(client :: ExAws.Autoscaling.t, input :: exit_standby_query) :: ExAws.Request.Query.response_t
ExitStandby
Moves the specified instances out of Standby
mode.
For more information, see Auto Scaling InService State in the Auto Scaling Developer Guide.
Specs:
- exit_standby!(client :: ExAws.Autoscaling.t, input :: exit_standby_query) :: ExAws.Request.Query.success_t | no_return
Same as exit_standby/2
but raise on error.
Specs:
- put_lifecycle_hook(client :: ExAws.Autoscaling.t, input :: put_lifecycle_hook_type) :: ExAws.Request.Query.response_t
PutLifecycleHook
Creates or updates a lifecycle hook for the specified Auto Scaling Group.
A lifecycle hook tells Auto Scaling that you want to perform an action on an instance that is not actively in service; for example, either when the instance launches or before the instance terminates.
This operation is a part of the basic sequence for adding a lifecycle hook to an Auto Scaling group:
Create a notification target. A target can be either an Amazon SQS queue or an Amazon SNS topic.
Create an IAM role. This role allows Auto Scaling to publish lifecycle notifications to the designated SQS queue or SNS topic.
Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate.
If necessary, record the lifecycle action heartbeat to keep the instance in a pending state.
- Complete the lifecycle action.
For more information, see Auto Scaling Pending State and Auto Scaling Terminating State in the Auto Scaling Developer Guide.
If you exceed your maximum limit of lifecycle hooks, which by default is 50 per region, the call fails. For information about updating this limit, see AWS Service Limits in the Amazon Web Services General Reference.
Specs:
- put_lifecycle_hook!(client :: ExAws.Autoscaling.t, input :: put_lifecycle_hook_type) :: ExAws.Request.Query.success_t | no_return
Same as put_lifecycle_hook/2
but raise on error.
Specs:
- put_notification_configuration(client :: ExAws.Autoscaling.t, input :: put_notification_configuration_type) :: ExAws.Request.Query.response_t
PutNotificationConfiguration
Configures an Auto Scaling group to send notifications when specified events take place. Subscribers to this topic can have messages for events delivered to an endpoint such as a web server or email address.
For more information see Getting Notifications When Your Auto Scaling Group Changes in the Auto Scaling Developer Guide.
This configuration overwrites an existing configuration.
Specs:
- put_notification_configuration!(client :: ExAws.Autoscaling.t, input :: put_notification_configuration_type) :: ExAws.Request.Query.success_t | no_return
Same as put_notification_configuration/2
but raise on error.
Specs:
- put_scaling_policy(client :: ExAws.Autoscaling.t, input :: put_scaling_policy_type) :: ExAws.Request.Query.response_t
PutScalingPolicy
Creates or updates a policy for an Auto Scaling group. To update an existing policy, use the existing policy name and set the parameters you want to change. Any existing parameter not changed in an update to an existing policy is not changed in this update request.
If you exceed your maximum limit of step adjustments, which by default is 20 per region, the call fails. For information about updating this limit, see AWS Service Limits in the Amazon Web Services General Reference.
Specs:
- put_scaling_policy!(client :: ExAws.Autoscaling.t, input :: put_scaling_policy_type) :: ExAws.Request.Query.success_t | no_return
Same as put_scaling_policy/2
but raise on error.
Specs:
- put_scheduled_update_group_action(client :: ExAws.Autoscaling.t, input :: put_scheduled_update_group_action_type) :: ExAws.Request.Query.response_t
PutScheduledUpdateGroupAction
Creates or updates a scheduled scaling action for an Auto Scaling group. When updating a scheduled scaling action, if you leave a parameter unspecified, the corresponding value remains unchanged in the affected Auto Scaling group.
For more information, see Scheduled Scaling in the Auto Scaling Developer Guide.
Specs:
- put_scheduled_update_group_action!(client :: ExAws.Autoscaling.t, input :: put_scheduled_update_group_action_type) :: ExAws.Request.Query.success_t | no_return
Same as put_scheduled_update_group_action/2
but raise on error.
Specs:
- record_lifecycle_action_heartbeat(client :: ExAws.Autoscaling.t, input :: record_lifecycle_action_heartbeat_type) :: ExAws.Request.Query.response_t
RecordLifecycleActionHeartbeat
Records a heartbeat for the lifecycle action associated with a specific
token. This extends the timeout by the length of time defined by the
HeartbeatTimeout
parameter of PutLifecycleHook
.
This operation is a part of the basic sequence for adding a lifecycle hook to an Auto Scaling group:
Create a notification target. A target can be either an Amazon SQS queue or an Amazon SNS topic.
Create an IAM role. This role allows Auto Scaling to publish lifecycle notifications to the designated SQS queue or SNS topic.
Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate.
If necessary, record the lifecycle action heartbeat to keep the instance in a pending state.
- Complete the lifecycle action.
For more information, see Auto Scaling Pending State and Auto Scaling Terminating State in the Auto Scaling Developer Guide.
Specs:
- record_lifecycle_action_heartbeat!(client :: ExAws.Autoscaling.t, input :: record_lifecycle_action_heartbeat_type) :: ExAws.Request.Query.success_t | no_return
Same as record_lifecycle_action_heartbeat/2
but raise on error.
Specs:
- resume_processes(client :: ExAws.Autoscaling.t, input :: scaling_process_query) :: ExAws.Request.Query.response_t
ResumeProcesses
Resumes the specified suspended Auto Scaling processes for the specified
Auto Scaling group. To resume specific processes, use the
ScalingProcesses
parameter. To resume all processes, omit the
ScalingProcesses
parameter. For more information, see Suspend and Resume
Auto Scaling
Processes
in the Auto Scaling Developer Guide.
Specs:
- resume_processes!(client :: ExAws.Autoscaling.t, input :: scaling_process_query) :: ExAws.Request.Query.success_t | no_return
Same as resume_processes/2
but raise on error.
Specs:
- set_desired_capacity(client :: ExAws.Autoscaling.t, input :: set_desired_capacity_type) :: ExAws.Request.Query.response_t
SetDesiredCapacity
Sets the size of the specified Auto Scaling group.
For more information about desired capacity, see What Is Auto Scaling? in the Auto Scaling Developer Guide.
Specs:
- set_desired_capacity!(client :: ExAws.Autoscaling.t, input :: set_desired_capacity_type) :: ExAws.Request.Query.success_t | no_return
Same as set_desired_capacity/2
but raise on error.
Specs:
- set_instance_health(client :: ExAws.Autoscaling.t, input :: set_instance_health_query) :: ExAws.Request.Query.response_t
SetInstanceHealth
Sets the health status of the specified instance.
For more information, see Health Checks in the Auto Scaling Developer Guide.
Specs:
- set_instance_health!(client :: ExAws.Autoscaling.t, input :: set_instance_health_query) :: ExAws.Request.Query.success_t | no_return
Same as set_instance_health/2
but raise on error.
Specs:
- suspend_processes(client :: ExAws.Autoscaling.t, input :: scaling_process_query) :: ExAws.Request.Query.response_t
SuspendProcesses
Suspends the specified Auto Scaling processes for the specified Auto
Scaling group. To suspend specific processes, use the ScalingProcesses
parameter. To suspend all processes, omit the ScalingProcesses
parameter.
Note that if you suspend either the Launch
or Terminate
process types,
it can prevent other process types from functioning properly.
To resume processes that have been suspended, use ResumeProcesses
.
For more information, see Suspend and Resume Auto Scaling Processes in the Auto Scaling Developer Guide.
Specs:
- suspend_processes!(client :: ExAws.Autoscaling.t, input :: scaling_process_query) :: ExAws.Request.Query.success_t | no_return
Same as suspend_processes/2
but raise on error.
Specs:
- terminate_instance_in_auto_scaling_group(client :: ExAws.Autoscaling.t, input :: terminate_instance_in_auto_scaling_group_type) :: ExAws.Request.Query.response_t
TerminateInstanceInAutoScalingGroup
Terminates the specified instance and optionally adjusts the desired group size.
This call simply makes a termination request. The instances is not terminated immediately.
Specs:
- terminate_instance_in_auto_scaling_group!(client :: ExAws.Autoscaling.t, input :: terminate_instance_in_auto_scaling_group_type) :: ExAws.Request.Query.success_t | no_return
Same as terminate_instance_in_auto_scaling_group/2
but raise on error.
Specs:
- update_auto_scaling_group(client :: ExAws.Autoscaling.t, input :: update_auto_scaling_group_type) :: ExAws.Request.Query.response_t
UpdateAutoScalingGroup
Updates the configuration for the specified Auto Scaling group.
To update an Auto Scaling group with a launch configuration with
InstanceMonitoring
set to False
, you must first disable the collection
of group metrics. Otherwise, you will get an error. If you have previously
enabled the collection of group metrics, you can disable it using
DisableMetricsCollection
.
The new settings are registered upon the completion of this call. Any launch configuration settings take effect on any triggers after this call returns. Scaling activities that are currently in progress aren’t affected.
Note the following:
If you specify a new value for
MinSize
without specifying a value forDesiredCapacity
, and the newMinSize
is larger than the current size of the group, we implicitly callSetDesiredCapacity
to set the size of the group to the new value ofMinSize
.If you specify a new value for
MaxSize
without specifying a value forDesiredCapacity
, and the newMaxSize
is smaller than the current size of the group, we implicitly callSetDesiredCapacity
to set the size of the group to the new value ofMaxSize
.- All other optional parameters are left unchanged if not specified.
Specs:
- update_auto_scaling_group!(client :: ExAws.Autoscaling.t, input :: update_auto_scaling_group_type) :: ExAws.Request.Query.success_t | no_return
Same as update_auto_scaling_group/2
but raise on error.