[][src]Crate rusoto_autoscaling

Amazon EC2 Auto Scaling

Amazon EC2 Auto Scaling is designed to automatically launch or terminate EC2 instances based on user-defined scaling policies, scheduled actions, and health checks. Use this service with AWS Auto Scaling, Amazon CloudWatch, and Elastic Load Balancing.

For more information, including information about granting IAM users required permissions for Amazon EC2 Auto Scaling actions, see the Amazon EC2 Auto Scaling User Guide.

If you're using the service, you're probably looking for AutoscalingClient and Autoscaling.

Structs

ActivitiesType
Activity

Describes scaling activity, which is a long-running process that represents a change to your Auto Scaling group, such as changing its size or replacing an instance.

ActivityType
AdjustmentType

Describes a policy adjustment type.

Alarm

Describes an alarm.

AttachInstancesQuery
AttachLoadBalancerTargetGroupsResultType
AttachLoadBalancerTargetGroupsType
AttachLoadBalancersResultType
AttachLoadBalancersType
AutoScalingGroup

Describes an Auto Scaling group.

AutoScalingGroupNamesType
AutoScalingGroupsType
AutoScalingInstanceDetails

Describes an EC2 instance associated with an Auto Scaling group.

AutoScalingInstancesType
AutoscalingClient

A client for the Auto Scaling API.

BatchDeleteScheduledActionAnswer
BatchDeleteScheduledActionType
BatchPutScheduledUpdateGroupActionAnswer
BatchPutScheduledUpdateGroupActionType
BlockDeviceMapping

Describes a block device mapping.

CancelInstanceRefreshAnswer
CancelInstanceRefreshType
CompleteLifecycleActionAnswer
CompleteLifecycleActionType
CreateAutoScalingGroupType
CreateLaunchConfigurationType
CreateOrUpdateTagsType
CustomizedMetricSpecification

Represents a CloudWatch metric of your choosing for a target tracking scaling policy to use with Amazon EC2 Auto Scaling.

To create your customized metric specification:

  • Add values for each required parameter from CloudWatch. You can use an existing metric, or a new metric that you create. To use your own metric, you must first publish the metric to CloudWatch. For more information, see Publish Custom Metrics in the Amazon CloudWatch User Guide.

  • Choose a metric that changes proportionally with capacity. The value of the metric should increase or decrease in inverse proportion to the number of capacity units. That is, the value of the metric should decrease when capacity increases.

For more information about CloudWatch, see Amazon CloudWatch Concepts.

DeleteAutoScalingGroupType
DeleteLifecycleHookAnswer
DeleteLifecycleHookType
DeleteNotificationConfigurationType
DeletePolicyType
DeleteScheduledActionType
DeleteTagsType
DescribeAccountLimitsAnswer
DescribeAdjustmentTypesAnswer
DescribeAutoScalingInstancesType
DescribeAutoScalingNotificationTypesAnswer
DescribeInstanceRefreshesAnswer
DescribeInstanceRefreshesType
DescribeLifecycleHookTypesAnswer
DescribeLifecycleHooksAnswer
DescribeLifecycleHooksType
DescribeLoadBalancerTargetGroupsRequest
DescribeLoadBalancerTargetGroupsResponse
DescribeLoadBalancersRequest
DescribeLoadBalancersResponse
DescribeMetricCollectionTypesAnswer
DescribeNotificationConfigurationsAnswer
DescribeNotificationConfigurationsType
DescribePoliciesType
DescribeScalingActivitiesType
DescribeScheduledActionsType
DescribeTagsType
DescribeTerminationPolicyTypesAnswer
DetachInstancesAnswer
DetachInstancesQuery
DetachLoadBalancerTargetGroupsResultType
DetachLoadBalancerTargetGroupsType
DetachLoadBalancersResultType
DetachLoadBalancersType
DisableMetricsCollectionQuery
Ebs

Describes information used to set up an Amazon EBS volume specified in a block device mapping.

EnableMetricsCollectionQuery
EnabledMetric

Describes an enabled metric.

EnterStandbyAnswer
EnterStandbyQuery
ExecutePolicyType
ExitStandbyAnswer
ExitStandbyQuery
FailedScheduledUpdateGroupActionRequest

Describes a scheduled action that could not be created, updated, or deleted.

Filter

Describes a filter that is used to return a more specific list of results when describing tags.

For more information, see Tagging Auto Scaling Groups and Instances in the Amazon EC2 Auto Scaling User Guide.

Instance

Describes an EC2 instance.

InstanceMonitoring

Describes whether detailed monitoring is enabled for the Auto Scaling instances.

InstanceRefresh

Describes an instance refresh for an Auto Scaling group.

InstancesDistribution

Describes an instances distribution for an Auto Scaling group with a MixedInstancesPolicy.

The instances distribution specifies the distribution of On-Demand Instances and Spot Instances, the maximum price to pay for Spot Instances, and how the Auto Scaling group allocates instance types to fulfill On-Demand and Spot capacity.

When you update SpotAllocationStrategy, SpotInstancePools, or SpotMaxPrice, this update action does not deploy any changes across the running Amazon EC2 instances in the group. Your existing Spot Instances continue to run as long as the maximum price for those instances is higher than the current Spot price. When scale out occurs, Amazon EC2 Auto Scaling launches instances based on the new settings. When scale in occurs, Amazon EC2 Auto Scaling terminates instances according to the group's termination policies.

LaunchConfiguration

Describes a launch configuration.

LaunchConfigurationNameType
LaunchConfigurationNamesType
LaunchConfigurationsType
LaunchTemplate

Describes a launch template and overrides.

The overrides are used to override the instance type specified by the launch template with multiple instance types that can be used to launch On-Demand Instances and Spot Instances.

When you update the launch template or overrides, existing Amazon EC2 instances continue to run. When scale out occurs, Amazon EC2 Auto Scaling launches instances to match the new settings. When scale in occurs, Amazon EC2 Auto Scaling terminates instances according to the group's termination policies.

LaunchTemplateOverrides

Describes an override for a launch template. Currently, the only supported override is instance type.

The maximum number of instance type overrides that can be associated with an Auto Scaling group is 20.

LaunchTemplateSpecification

Describes the Amazon EC2 launch template and the launch template version that can be used by an Auto Scaling group to configure Amazon EC2 instances.

The launch template that is specified must be configured for use with an Auto Scaling group. For more information, see Creating a Launch Template for an Auto Scaling Group in the Amazon EC2 Auto Scaling User Guide.

LifecycleHook

Describes a lifecycle hook, which tells Amazon EC2 Auto Scaling that you want to perform an action whenever it launches instances or terminates instances.

LifecycleHookSpecification

Describes information used to specify a lifecycle hook for an Auto Scaling group.

A lifecycle hook tells Amazon EC2 Auto Scaling to perform an action on an instance when the instance launches (before it is put into service) or as the instance terminates (before it is fully terminated).

This step is a part of the procedure for creating a lifecycle hook for an Auto Scaling group:

  1. (Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Amazon EC2 Auto Scaling launches or terminates instances.

  2. (Optional) Create a notification target and an IAM role. The target can be either an Amazon SQS queue or an Amazon SNS topic. The role allows Amazon EC2 Auto Scaling to publish lifecycle notifications to the target.

  3. Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.

  4. If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.

  5. If you finish before the timeout period ends, complete the lifecycle action.

For more information, see Amazon EC2 Auto Scaling Lifecycle Hooks in the Amazon EC2 Auto Scaling User Guide.

LoadBalancerState

Describes the state of a Classic Load Balancer.

If you specify a load balancer when creating the Auto Scaling group, the state of the load balancer is InService.

If you attach a load balancer to an existing Auto Scaling group, the initial state is Adding. The state transitions to Added after all instances in the group are registered with the load balancer. If Elastic Load Balancing health checks are enabled for the load balancer, the state transitions to InService after at least one instance in the group passes the health check. If EC2 health checks are enabled instead, the load balancer remains in the Added state.

LoadBalancerTargetGroupState

Describes the state of a target group.

If you attach a target group to an existing Auto Scaling group, the initial state is Adding. The state transitions to Added after all Auto Scaling instances are registered with the target group. If Elastic Load Balancing health checks are enabled, the state transitions to InService after at least one Auto Scaling instance passes the health check. If EC2 health checks are enabled instead, the target group remains in the Added state.

MetricCollectionType

Describes a metric.

MetricDimension

Describes the dimension of a metric.

MetricGranularityType

Describes a granularity of a metric.

MixedInstancesPolicy

Describes a mixed instances policy for an Auto Scaling group. With mixed instances, your Auto Scaling group can provision a combination of On-Demand Instances and Spot Instances across multiple instance types. For more information, see Auto Scaling Groups with Multiple Instance Types and Purchase Options in the Amazon EC2 Auto Scaling User Guide.

You can create a mixed instances policy for a new Auto Scaling group, or you can create it for an existing group by updating the group to specify MixedInstancesPolicy as the top-level parameter instead of a launch configuration or launch template. For more information, see CreateAutoScalingGroup and UpdateAutoScalingGroup.

NotificationConfiguration

Describes a notification.

PoliciesType
PolicyARNType

Contains the output of PutScalingPolicy.

PredefinedMetricSpecification

Represents a predefined metric for a target tracking scaling policy to use with Amazon EC2 Auto Scaling.

ProcessType

Describes a process type.

For more information, see Scaling Processes in the Amazon EC2 Auto Scaling User Guide.

ProcessesType
PutLifecycleHookAnswer
PutLifecycleHookType
PutNotificationConfigurationType
PutScalingPolicyType
PutScheduledUpdateGroupActionType
RecordLifecycleActionHeartbeatAnswer
RecordLifecycleActionHeartbeatType
RefreshPreferences

Describes information used to start an instance refresh.

ScalingPolicy

Describes a scaling policy.

ScalingProcessQuery
ScheduledActionsType
ScheduledUpdateGroupAction

Describes a scheduled scaling action.

ScheduledUpdateGroupActionRequest

Describes information used for one or more scheduled scaling action updates in a BatchPutScheduledUpdateGroupAction operation.

When updating a scheduled scaling action, all optional parameters are left unchanged if not specified.

SetDesiredCapacityType
SetInstanceHealthQuery
SetInstanceProtectionAnswer
SetInstanceProtectionQuery
StartInstanceRefreshAnswer
StartInstanceRefreshType
StepAdjustment

Describes information used to create a step adjustment for a step scaling policy.

For the following examples, suppose that you have an alarm with a breach threshold of 50:

  • To trigger the adjustment when the metric is greater than or equal to 50 and less than 60, specify a lower bound of 0 and an upper bound of 10.

  • To trigger the adjustment when the metric is greater than 40 and less than or equal to 50, specify a lower bound of -10 and an upper bound of 0.

There are a few rules for the step adjustments for your step policy:

  • The ranges of your step adjustments can't overlap or have a gap.

  • At most, one step adjustment can have a null lower bound. If one step adjustment has a negative lower bound, then there must be a step adjustment with a null lower bound.

  • At most, one step adjustment can have a null upper bound. If one step adjustment has a positive upper bound, then there must be a step adjustment with a null upper bound.

  • The upper and lower bound can't be null in the same step adjustment.

For more information, see Step Adjustments in the Amazon EC2 Auto Scaling User Guide.

SuspendedProcess

Describes an automatic scaling process that has been suspended.

For more information, see Scaling Processes in the Amazon EC2 Auto Scaling User Guide.

Tag

Describes a tag for an Auto Scaling group.

TagDescription

Describes a tag for an Auto Scaling group.

TagsType
TargetTrackingConfiguration

Represents a target tracking scaling policy configuration to use with Amazon EC2 Auto Scaling.

TerminateInstanceInAutoScalingGroupType
UpdateAutoScalingGroupType

Enums

AttachInstancesError

Errors returned by AttachInstances

AttachLoadBalancerTargetGroupsError

Errors returned by AttachLoadBalancerTargetGroups

AttachLoadBalancersError

Errors returned by AttachLoadBalancers

BatchDeleteScheduledActionError

Errors returned by BatchDeleteScheduledAction

BatchPutScheduledUpdateGroupActionError

Errors returned by BatchPutScheduledUpdateGroupAction

CancelInstanceRefreshError

Errors returned by CancelInstanceRefresh

CompleteLifecycleActionError

Errors returned by CompleteLifecycleAction

CreateAutoScalingGroupError

Errors returned by CreateAutoScalingGroup

CreateLaunchConfigurationError

Errors returned by CreateLaunchConfiguration

CreateOrUpdateTagsError

Errors returned by CreateOrUpdateTags

DeleteAutoScalingGroupError

Errors returned by DeleteAutoScalingGroup

DeleteLaunchConfigurationError

Errors returned by DeleteLaunchConfiguration

DeleteLifecycleHookError

Errors returned by DeleteLifecycleHook

DeleteNotificationConfigurationError

Errors returned by DeleteNotificationConfiguration

DeletePolicyError

Errors returned by DeletePolicy

DeleteScheduledActionError

Errors returned by DeleteScheduledAction

DeleteTagsError

Errors returned by DeleteTags

DescribeAccountLimitsError

Errors returned by DescribeAccountLimits

DescribeAdjustmentTypesError

Errors returned by DescribeAdjustmentTypes

DescribeAutoScalingGroupsError

Errors returned by DescribeAutoScalingGroups

DescribeAutoScalingInstancesError

Errors returned by DescribeAutoScalingInstances

DescribeAutoScalingNotificationTypesError

Errors returned by DescribeAutoScalingNotificationTypes

DescribeInstanceRefreshesError

Errors returned by DescribeInstanceRefreshes

DescribeLaunchConfigurationsError

Errors returned by DescribeLaunchConfigurations

DescribeLifecycleHookTypesError

Errors returned by DescribeLifecycleHookTypes

DescribeLifecycleHooksError

Errors returned by DescribeLifecycleHooks

DescribeLoadBalancerTargetGroupsError

Errors returned by DescribeLoadBalancerTargetGroups

DescribeLoadBalancersError

Errors returned by DescribeLoadBalancers

DescribeMetricCollectionTypesError

Errors returned by DescribeMetricCollectionTypes

DescribeNotificationConfigurationsError

Errors returned by DescribeNotificationConfigurations

DescribePoliciesError

Errors returned by DescribePolicies

DescribeScalingActivitiesError

Errors returned by DescribeScalingActivities

DescribeScalingProcessTypesError

Errors returned by DescribeScalingProcessTypes

DescribeScheduledActionsError

Errors returned by DescribeScheduledActions

DescribeTagsError

Errors returned by DescribeTags

DescribeTerminationPolicyTypesError

Errors returned by DescribeTerminationPolicyTypes

DetachInstancesError

Errors returned by DetachInstances

DetachLoadBalancerTargetGroupsError

Errors returned by DetachLoadBalancerTargetGroups

DetachLoadBalancersError

Errors returned by DetachLoadBalancers

DisableMetricsCollectionError

Errors returned by DisableMetricsCollection

EnableMetricsCollectionError

Errors returned by EnableMetricsCollection

EnterStandbyError

Errors returned by EnterStandby

ExecutePolicyError

Errors returned by ExecutePolicy

ExitStandbyError

Errors returned by ExitStandby

PutLifecycleHookError

Errors returned by PutLifecycleHook

PutNotificationConfigurationError

Errors returned by PutNotificationConfiguration

PutScalingPolicyError

Errors returned by PutScalingPolicy

PutScheduledUpdateGroupActionError

Errors returned by PutScheduledUpdateGroupAction

RecordLifecycleActionHeartbeatError

Errors returned by RecordLifecycleActionHeartbeat

ResumeProcessesError

Errors returned by ResumeProcesses

SetDesiredCapacityError

Errors returned by SetDesiredCapacity

SetInstanceHealthError

Errors returned by SetInstanceHealth

SetInstanceProtectionError

Errors returned by SetInstanceProtection

StartInstanceRefreshError

Errors returned by StartInstanceRefresh

SuspendProcessesError

Errors returned by SuspendProcesses

TerminateInstanceInAutoScalingGroupError

Errors returned by TerminateInstanceInAutoScalingGroup

UpdateAutoScalingGroupError

Errors returned by UpdateAutoScalingGroup

Traits

Autoscaling

Trait representing the capabilities of the Auto Scaling API. Auto Scaling clients implement this trait.