Interface AmazonAutoScaling
- All Known Subinterfaces:
AmazonAutoScalingAsync
- All Known Implementing Classes:
AbstractAmazonAutoScaling
,AbstractAmazonAutoScalingAsync
,AmazonAutoScalingAsyncClient
,AmazonAutoScalingClient
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.
-
Method Summary
Modifier and TypeMethodDescriptionattachInstances
(AttachInstancesRequest attachInstancesRequest) Attaches one or more EC2 instances to the specified Auto Scaling group.Simplified method form for invoking the AttachLoadBalancers operation.attachLoadBalancers
(AttachLoadBalancersRequest attachLoadBalancersRequest) Attaches one or more load balancers to the specified Auto Scaling group.completeLifecycleAction
(CompleteLifecycleActionRequest completeLifecycleActionRequest) Completes the lifecycle action for the specified token or instance with the specified result.createAutoScalingGroup
(CreateAutoScalingGroupRequest createAutoScalingGroupRequest) Creates an Auto Scaling group with the specified name and attributes.createLaunchConfiguration
(CreateLaunchConfigurationRequest createLaunchConfigurationRequest) Creates a launch configuration.createOrUpdateTags
(CreateOrUpdateTagsRequest createOrUpdateTagsRequest) Creates or updates tags for the specified Auto Scaling group.deleteAutoScalingGroup
(DeleteAutoScalingGroupRequest deleteAutoScalingGroupRequest) Deletes the specified Auto Scaling group.deleteLaunchConfiguration
(DeleteLaunchConfigurationRequest deleteLaunchConfigurationRequest) Deletes the specified launch configuration.deleteLifecycleHook
(DeleteLifecycleHookRequest deleteLifecycleHookRequest) Deletes the specified lifecycle hook.deleteNotificationConfiguration
(DeleteNotificationConfigurationRequest deleteNotificationConfigurationRequest) Deletes the specified notification.deletePolicy
(DeletePolicyRequest deletePolicyRequest) Deletes the specified Auto Scaling policy.deleteScheduledAction
(DeleteScheduledActionRequest deleteScheduledActionRequest) Deletes the specified scheduled action.deleteTags
(DeleteTagsRequest deleteTagsRequest) Deletes the specified tags.Simplified method form for invoking the DescribeAccountLimits operation.describeAccountLimits
(DescribeAccountLimitsRequest describeAccountLimitsRequest) Describes the current Auto Scaling resource limits for your AWS account.Simplified method form for invoking the DescribeAdjustmentTypes operation.describeAdjustmentTypes
(DescribeAdjustmentTypesRequest describeAdjustmentTypesRequest) Describes the policy adjustment types for use with PutScalingPolicy.Simplified method form for invoking the DescribeAutoScalingGroups operation.describeAutoScalingGroups
(DescribeAutoScalingGroupsRequest describeAutoScalingGroupsRequest) Describes one or more Auto Scaling groups.Simplified method form for invoking the DescribeAutoScalingInstances operation.describeAutoScalingInstances
(DescribeAutoScalingInstancesRequest describeAutoScalingInstancesRequest) Describes one or more Auto Scaling instances.Simplified method form for invoking the DescribeAutoScalingNotificationTypes operation.describeAutoScalingNotificationTypes
(DescribeAutoScalingNotificationTypesRequest describeAutoScalingNotificationTypesRequest) Describes the notification types that are supported by Auto Scaling.Simplified method form for invoking the DescribeLaunchConfigurations operation.describeLaunchConfigurations
(DescribeLaunchConfigurationsRequest describeLaunchConfigurationsRequest) Describes one or more launch configurations.describeLifecycleHooks
(DescribeLifecycleHooksRequest describeLifecycleHooksRequest) Describes the lifecycle hooks for the specified Auto Scaling group.Simplified method form for invoking the DescribeLifecycleHookTypes operation.describeLifecycleHookTypes
(DescribeLifecycleHookTypesRequest describeLifecycleHookTypesRequest) Describes the available types of lifecycle hooks.describeLoadBalancers
(DescribeLoadBalancersRequest describeLoadBalancersRequest) Describes the load balancers for the specified Auto Scaling group.Simplified method form for invoking the DescribeMetricCollectionTypes operation.describeMetricCollectionTypes
(DescribeMetricCollectionTypesRequest describeMetricCollectionTypesRequest) Describes the available CloudWatch metrics for Auto Scaling.Simplified method form for invoking the DescribeNotificationConfigurations operation.describeNotificationConfigurations
(DescribeNotificationConfigurationsRequest describeNotificationConfigurationsRequest) Describes the notification actions associated with the specified Auto Scaling group.Simplified method form for invoking the DescribePolicies operation.describePolicies
(DescribePoliciesRequest describePoliciesRequest) Describes the policies for the specified Auto Scaling group.Simplified method form for invoking the DescribeScalingActivities operation.describeScalingActivities
(DescribeScalingActivitiesRequest describeScalingActivitiesRequest) Describes one or more scaling activities for the specified Auto Scaling group.Simplified method form for invoking the DescribeScalingProcessTypes operation.describeScalingProcessTypes
(DescribeScalingProcessTypesRequest describeScalingProcessTypesRequest) Describes the scaling process types for use with ResumeProcesses and SuspendProcesses.Simplified method form for invoking the DescribeScheduledActions operation.describeScheduledActions
(DescribeScheduledActionsRequest describeScheduledActionsRequest) Describes the actions scheduled for your Auto Scaling group that haven't run.Simplified method form for invoking the DescribeTags operation.describeTags
(DescribeTagsRequest describeTagsRequest) Describes the specified tags.Simplified method form for invoking the DescribeTerminationPolicyTypes operation.describeTerminationPolicyTypes
(DescribeTerminationPolicyTypesRequest describeTerminationPolicyTypesRequest) Describes the termination policies supported by Auto Scaling.detachInstances
(DetachInstancesRequest detachInstancesRequest) Removes one or more instances from the specified Auto Scaling group.Simplified method form for invoking the DetachLoadBalancers operation.detachLoadBalancers
(DetachLoadBalancersRequest detachLoadBalancersRequest) Removes one or more load balancers from the specified Auto Scaling group.disableMetricsCollection
(DisableMetricsCollectionRequest disableMetricsCollectionRequest) Disables monitoring of the specified metrics for the specified Auto Scaling group.enableMetricsCollection
(EnableMetricsCollectionRequest enableMetricsCollectionRequest) Enables monitoring of the specified metrics for the specified Auto Scaling group.enterStandby
(EnterStandbyRequest enterStandbyRequest) Moves the specified instances intoStandby
mode.executePolicy
(ExecutePolicyRequest executePolicyRequest) Executes the specified policy.exitStandby
(ExitStandbyRequest exitStandbyRequest) Moves the specified instances out ofStandby
mode.Returns additional metadata for a previously executed successful request, typically used for debugging issues where a service isn't acting as expected.putLifecycleHook
(PutLifecycleHookRequest putLifecycleHookRequest) Creates or updates a lifecycle hook for the specified Auto Scaling Group.putNotificationConfiguration
(PutNotificationConfigurationRequest putNotificationConfigurationRequest) Configures an Auto Scaling group to send notifications when specified events take place.putScalingPolicy
(PutScalingPolicyRequest putScalingPolicyRequest) Creates or updates a policy for an Auto Scaling group.putScheduledUpdateGroupAction
(PutScheduledUpdateGroupActionRequest putScheduledUpdateGroupActionRequest) Creates or updates a scheduled scaling action for an Auto Scaling group.recordLifecycleActionHeartbeat
(RecordLifecycleActionHeartbeatRequest recordLifecycleActionHeartbeatRequest) Records a heartbeat for the lifecycle action associated with the specified token or instance.resumeProcesses
(ResumeProcessesRequest resumeProcessesRequest) Resumes the specified suspended Auto Scaling processes, or all suspended process, for the specified Auto Scaling group.setDesiredCapacity
(SetDesiredCapacityRequest setDesiredCapacityRequest) Sets the size of the specified Auto Scaling group.void
setEndpoint
(String endpoint) Overrides the default endpoint for this client ("https://autoscaling.amazonaws.com").setInstanceHealth
(SetInstanceHealthRequest setInstanceHealthRequest) Sets the health status of the specified instance.setInstanceProtection
(SetInstanceProtectionRequest setInstanceProtectionRequest) Updates the instance protection settings of the specified instances.void
An alternative tosetEndpoint(String)
, sets the regional endpoint for this client's service calls.void
shutdown()
Shuts down this client object, releasing any resources that might be held open.suspendProcesses
(SuspendProcessesRequest suspendProcessesRequest) Suspends the specified Auto Scaling processes, or all processes, for the specified Auto Scaling group.terminateInstanceInAutoScalingGroup
(TerminateInstanceInAutoScalingGroupRequest terminateInstanceInAutoScalingGroupRequest) Terminates the specified instance and optionally adjusts the desired group size.updateAutoScalingGroup
(UpdateAutoScalingGroupRequest updateAutoScalingGroupRequest) Updates the configuration for the specified Auto Scaling group.
-
Method Details
-
setEndpoint
Overrides the default endpoint for this client ("https://autoscaling.amazonaws.com"). Callers can use this method to control which AWS region they want to work with.Callers can pass in just the endpoint (ex: "autoscaling.amazonaws.com") or a full URL, including the protocol (ex: "https://autoscaling.amazonaws.com"). If the protocol is not specified here, the default protocol from this client's
ClientConfiguration
will be used, which by default is HTTPS.For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available endpoints for all AWS services, see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID= 3912
This method is not threadsafe. An endpoint should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
- Parameters:
endpoint
- The endpoint (ex: "autoscaling.amazonaws.com") or a full URL, including the protocol (ex: "https://autoscaling.amazonaws.com") of the region specific AWS endpoint this client will communicate with.
-
setRegion
An alternative tosetEndpoint(String)
, sets the regional endpoint for this client's service calls. Callers can use this method to control which AWS region they want to work with.By default, all service endpoints in all regions use the https protocol. To use http instead, specify it in the
ClientConfiguration
supplied at construction.This method is not threadsafe. A region should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
- Parameters:
region
- The region this client will communicate with. SeeRegion.getRegion(com.amazonaws.regions.Regions)
for accessing a given region. Must not be null and must be a region where the service is available.- See Also:
-
attachInstances
Attaches one or more EC2 instances to the specified Auto Scaling group.
When you attach instances, Auto Scaling increases the desired capacity of the group by the number of instances being attached. If the number of instances being attached plus the desired capacity of the group exceeds the maximum size of the group, the operation fails.
For more information, see Attach EC2 Instances to Your Auto Scaling Group in the Auto Scaling Developer Guide.
- Parameters:
attachInstancesRequest
-- Returns:
- Result of the AttachInstances operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
attachLoadBalancers
AttachLoadBalancersResult attachLoadBalancers(AttachLoadBalancersRequest attachLoadBalancersRequest) 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.
- Parameters:
attachLoadBalancersRequest
-- Returns:
- Result of the AttachLoadBalancers operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
attachLoadBalancers
AttachLoadBalancersResult attachLoadBalancers()Simplified method form for invoking the AttachLoadBalancers operation.- See Also:
-
completeLifecycleAction
CompleteLifecycleActionResult completeLifecycleAction(CompleteLifecycleActionRequest completeLifecycleActionRequest) Completes the lifecycle action for the specified token or instance with the specified result.
This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:
- (Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Auto Scaling launches or terminates instances.
- (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 Auto Scaling to publish lifecycle notifications to the target.
- Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.
- If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.
- If you finish before the timeout period ends, complete the lifecycle action.
For more information, see Auto Scaling Lifecycle in the Auto Scaling Developer Guide.
- Parameters:
completeLifecycleActionRequest
-- Returns:
- Result of the CompleteLifecycleAction operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
createAutoScalingGroup
CreateAutoScalingGroupResult createAutoScalingGroup(CreateAutoScalingGroupRequest createAutoScalingGroupRequest) 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.
- Parameters:
createAutoScalingGroupRequest
-- Returns:
- Result of the CreateAutoScalingGroup operation returned by the service.
- Throws:
AlreadyExistsException
- You already have an Auto Scaling group or launch configuration with this name.LimitExceededException
- You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
createLaunchConfiguration
CreateLaunchConfigurationResult createLaunchConfiguration(CreateLaunchConfigurationRequest createLaunchConfigurationRequest) 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.
- Parameters:
createLaunchConfigurationRequest
-- Returns:
- Result of the CreateLaunchConfiguration operation returned by the service.
- Throws:
AlreadyExistsException
- You already have an Auto Scaling group or launch configuration with this name.LimitExceededException
- You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
createOrUpdateTags
Creates or updates tags for the specified Auto Scaling group.
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.
- Parameters:
createOrUpdateTagsRequest
-- Returns:
- Result of the CreateOrUpdateTags operation returned by the service.
- Throws:
LimitExceededException
- You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.AlreadyExistsException
- You already have an Auto Scaling group or launch configuration with this name.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
deleteAutoScalingGroup
DeleteAutoScalingGroupResult deleteAutoScalingGroup(DeleteAutoScalingGroupRequest deleteAutoScalingGroupRequest) Deletes the specified Auto Scaling group.
If the group has instances or scaling activities in progress, you must specify the option to force the deletion in order for it to succeed.
If the group has policies, deleting the group deletes the policies, the underlying alarm actions, and any alarm that no longer has an associated action.
To remove instances from the Auto Scaling group before deleting it, call DetachInstances with the list of instances and the option to decrement the desired capacity so that Auto Scaling does not launch replacement instances.
To terminate all instances before deleting the Auto Scaling group, call UpdateAutoScalingGroup and set the minimum size and desired capacity of the Auto Scaling group to zero.
- Parameters:
deleteAutoScalingGroupRequest
-- Returns:
- Result of the DeleteAutoScalingGroup operation returned by the service.
- Throws:
ScalingActivityInProgressException
- The Auto Scaling group can't be deleted because there are scaling activities in progress.ResourceInUseException
- The Auto Scaling group or launch configuration can't be deleted because it is in use.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
deleteLaunchConfiguration
DeleteLaunchConfigurationResult deleteLaunchConfiguration(DeleteLaunchConfigurationRequest deleteLaunchConfigurationRequest) 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.
- Parameters:
deleteLaunchConfigurationRequest
-- Returns:
- Result of the DeleteLaunchConfiguration operation returned by the service.
- Throws:
ResourceInUseException
- The Auto Scaling group or launch configuration can't be deleted because it is in use.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
deleteLifecycleHook
DeleteLifecycleHookResult deleteLifecycleHook(DeleteLifecycleHookRequest deleteLifecycleHookRequest) Deletes the specified lifecycle hook.
If there are any outstanding lifecycle actions, they are completed first (
ABANDON
for launching instances,CONTINUE
for terminating instances).- Parameters:
deleteLifecycleHookRequest
-- Returns:
- Result of the DeleteLifecycleHook operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
deleteNotificationConfiguration
DeleteNotificationConfigurationResult deleteNotificationConfiguration(DeleteNotificationConfigurationRequest deleteNotificationConfigurationRequest) Deletes the specified notification.
- Parameters:
deleteNotificationConfigurationRequest
-- Returns:
- Result of the DeleteNotificationConfiguration operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
deletePolicy
Deletes the specified Auto Scaling policy.
Deleting a policy deletes the underlying alarm action, but does not delete the alarm, even if it no longer has an associated action.
- Parameters:
deletePolicyRequest
-- Returns:
- Result of the DeletePolicy operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
deleteScheduledAction
DeleteScheduledActionResult deleteScheduledAction(DeleteScheduledActionRequest deleteScheduledActionRequest) Deletes the specified scheduled action.
- Parameters:
deleteScheduledActionRequest
-- Returns:
- Result of the DeleteScheduledAction operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
deleteTags
Deletes the specified tags.
- Parameters:
deleteTagsRequest
-- Returns:
- Result of the DeleteTags operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeAccountLimits
DescribeAccountLimitsResult describeAccountLimits(DescribeAccountLimitsRequest describeAccountLimitsRequest) 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.
- Parameters:
describeAccountLimitsRequest
-- Returns:
- Result of the DescribeAccountLimits operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeAccountLimits
DescribeAccountLimitsResult describeAccountLimits()Simplified method form for invoking the DescribeAccountLimits operation.- See Also:
-
describeAdjustmentTypes
DescribeAdjustmentTypesResult describeAdjustmentTypes(DescribeAdjustmentTypesRequest describeAdjustmentTypesRequest) Describes the policy adjustment types for use with PutScalingPolicy.
- Parameters:
describeAdjustmentTypesRequest
-- Returns:
- Result of the DescribeAdjustmentTypes operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeAdjustmentTypes
DescribeAdjustmentTypesResult describeAdjustmentTypes()Simplified method form for invoking the DescribeAdjustmentTypes operation.- See Also:
-
describeAutoScalingGroups
DescribeAutoScalingGroupsResult describeAutoScalingGroups(DescribeAutoScalingGroupsRequest describeAutoScalingGroupsRequest) Describes one or more Auto Scaling groups. If a list of names is not provided, the call describes all Auto Scaling groups.
- Parameters:
describeAutoScalingGroupsRequest
-- Returns:
- Result of the DescribeAutoScalingGroups operation returned by the service.
- Throws:
InvalidNextTokenException
- TheNextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeAutoScalingGroups
DescribeAutoScalingGroupsResult describeAutoScalingGroups()Simplified method form for invoking the DescribeAutoScalingGroups operation.- See Also:
-
describeAutoScalingInstances
DescribeAutoScalingInstancesResult describeAutoScalingInstances(DescribeAutoScalingInstancesRequest describeAutoScalingInstancesRequest) Describes one or more Auto Scaling instances. If a list is not provided, the call describes all instances.
- Parameters:
describeAutoScalingInstancesRequest
-- Returns:
- Result of the DescribeAutoScalingInstances operation returned by the service.
- Throws:
InvalidNextTokenException
- TheNextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeAutoScalingInstances
DescribeAutoScalingInstancesResult describeAutoScalingInstances()Simplified method form for invoking the DescribeAutoScalingInstances operation.- See Also:
-
describeAutoScalingNotificationTypes
DescribeAutoScalingNotificationTypesResult describeAutoScalingNotificationTypes(DescribeAutoScalingNotificationTypesRequest describeAutoScalingNotificationTypesRequest) Describes the notification types that are supported by Auto Scaling.
- Parameters:
describeAutoScalingNotificationTypesRequest
-- Returns:
- Result of the DescribeAutoScalingNotificationTypes operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeAutoScalingNotificationTypes
DescribeAutoScalingNotificationTypesResult describeAutoScalingNotificationTypes()Simplified method form for invoking the DescribeAutoScalingNotificationTypes operation.- See Also:
-
describeLaunchConfigurations
DescribeLaunchConfigurationsResult describeLaunchConfigurations(DescribeLaunchConfigurationsRequest describeLaunchConfigurationsRequest) Describes one or more launch configurations. If you omit the list of names, then the call describes all launch configurations.
- Parameters:
describeLaunchConfigurationsRequest
-- Returns:
- Result of the DescribeLaunchConfigurations operation returned by the service.
- Throws:
InvalidNextTokenException
- TheNextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeLaunchConfigurations
DescribeLaunchConfigurationsResult describeLaunchConfigurations()Simplified method form for invoking the DescribeLaunchConfigurations operation.- See Also:
-
describeLifecycleHookTypes
DescribeLifecycleHookTypesResult describeLifecycleHookTypes(DescribeLifecycleHookTypesRequest describeLifecycleHookTypesRequest) Describes the available types of lifecycle hooks.
- Parameters:
describeLifecycleHookTypesRequest
-- Returns:
- Result of the DescribeLifecycleHookTypes operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeLifecycleHookTypes
DescribeLifecycleHookTypesResult describeLifecycleHookTypes()Simplified method form for invoking the DescribeLifecycleHookTypes operation.- See Also:
-
describeLifecycleHooks
DescribeLifecycleHooksResult describeLifecycleHooks(DescribeLifecycleHooksRequest describeLifecycleHooksRequest) Describes the lifecycle hooks for the specified Auto Scaling group.
- Parameters:
describeLifecycleHooksRequest
-- Returns:
- Result of the DescribeLifecycleHooks operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeLoadBalancers
DescribeLoadBalancersResult describeLoadBalancers(DescribeLoadBalancersRequest describeLoadBalancersRequest) Describes the load balancers for the specified Auto Scaling group.
- Parameters:
describeLoadBalancersRequest
-- Returns:
- Result of the DescribeLoadBalancers operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeMetricCollectionTypes
DescribeMetricCollectionTypesResult describeMetricCollectionTypes(DescribeMetricCollectionTypesRequest describeMetricCollectionTypesRequest) 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.- Parameters:
describeMetricCollectionTypesRequest
-- Returns:
- Result of the DescribeMetricCollectionTypes operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeMetricCollectionTypes
DescribeMetricCollectionTypesResult describeMetricCollectionTypes()Simplified method form for invoking the DescribeMetricCollectionTypes operation.- See Also:
-
describeNotificationConfigurations
DescribeNotificationConfigurationsResult describeNotificationConfigurations(DescribeNotificationConfigurationsRequest describeNotificationConfigurationsRequest) Describes the notification actions associated with the specified Auto Scaling group.
- Parameters:
describeNotificationConfigurationsRequest
-- Returns:
- Result of the DescribeNotificationConfigurations operation returned by the service.
- Throws:
InvalidNextTokenException
- TheNextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeNotificationConfigurations
DescribeNotificationConfigurationsResult describeNotificationConfigurations()Simplified method form for invoking the DescribeNotificationConfigurations operation.- See Also:
-
describePolicies
Describes the policies for the specified Auto Scaling group.
- Parameters:
describePoliciesRequest
-- Returns:
- Result of the DescribePolicies operation returned by the service.
- Throws:
InvalidNextTokenException
- TheNextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describePolicies
DescribePoliciesResult describePolicies()Simplified method form for invoking the DescribePolicies operation.- See Also:
-
describeScalingActivities
DescribeScalingActivitiesResult describeScalingActivities(DescribeScalingActivitiesRequest describeScalingActivitiesRequest) 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.- Parameters:
describeScalingActivitiesRequest
-- Returns:
- Result of the DescribeScalingActivities operation returned by the service.
- Throws:
InvalidNextTokenException
- TheNextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeScalingActivities
DescribeScalingActivitiesResult describeScalingActivities()Simplified method form for invoking the DescribeScalingActivities operation.- See Also:
-
describeScalingProcessTypes
DescribeScalingProcessTypesResult describeScalingProcessTypes(DescribeScalingProcessTypesRequest describeScalingProcessTypesRequest) Describes the scaling process types for use with ResumeProcesses and SuspendProcesses.
- Parameters:
describeScalingProcessTypesRequest
-- Returns:
- Result of the DescribeScalingProcessTypes operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeScalingProcessTypes
DescribeScalingProcessTypesResult describeScalingProcessTypes()Simplified method form for invoking the DescribeScalingProcessTypes operation.- See Also:
-
describeScheduledActions
DescribeScheduledActionsResult describeScheduledActions(DescribeScheduledActionsRequest describeScheduledActionsRequest) Describes the actions scheduled for your Auto Scaling group that haven't run. To describe the actions that have already run, use DescribeScalingActivities.
- Parameters:
describeScheduledActionsRequest
-- Returns:
- Result of the DescribeScheduledActions operation returned by the service.
- Throws:
InvalidNextTokenException
- TheNextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeScheduledActions
DescribeScheduledActionsResult describeScheduledActions()Simplified method form for invoking the DescribeScheduledActions operation.- See Also:
-
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.
- Parameters:
describeTagsRequest
-- Returns:
- Result of the DescribeTags operation returned by the service.
- Throws:
InvalidNextTokenException
- TheNextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeTags
DescribeTagsResult describeTags()Simplified method form for invoking the DescribeTags operation.- See Also:
-
describeTerminationPolicyTypes
DescribeTerminationPolicyTypesResult describeTerminationPolicyTypes(DescribeTerminationPolicyTypesRequest describeTerminationPolicyTypesRequest) Describes the termination policies supported by Auto Scaling.
- Parameters:
describeTerminationPolicyTypesRequest
-- Returns:
- Result of the DescribeTerminationPolicyTypes operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
describeTerminationPolicyTypes
DescribeTerminationPolicyTypesResult describeTerminationPolicyTypes()Simplified method form for invoking the DescribeTerminationPolicyTypes operation.- See Also:
-
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.
If you do not specify the option to decrement the desired capacity, Auto Scaling launches instances to replace the ones that are detached.
For more information, see Detach EC2 Instances from Your Auto Scaling Group in the Auto Scaling Developer Guide.
- Parameters:
detachInstancesRequest
-- Returns:
- Result of the DetachInstances operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
detachLoadBalancers
DetachLoadBalancersResult detachLoadBalancers(DetachLoadBalancersRequest detachLoadBalancersRequest) 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.- Parameters:
detachLoadBalancersRequest
-- Returns:
- Result of the DetachLoadBalancers operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
detachLoadBalancers
DetachLoadBalancersResult detachLoadBalancers()Simplified method form for invoking the DetachLoadBalancers operation.- See Also:
-
disableMetricsCollection
DisableMetricsCollectionResult disableMetricsCollection(DisableMetricsCollectionRequest disableMetricsCollectionRequest) Disables monitoring of the specified metrics for the specified Auto Scaling group.
- Parameters:
disableMetricsCollectionRequest
-- Returns:
- Result of the DisableMetricsCollection operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
enableMetricsCollection
EnableMetricsCollectionResult enableMetricsCollection(EnableMetricsCollectionRequest enableMetricsCollectionRequest) 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 toTrue
.- Parameters:
enableMetricsCollectionRequest
-- Returns:
- Result of the EnableMetricsCollection operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
enterStandby
Moves the specified instances into
Standby
mode.For more information, see Auto Scaling Lifecycle in the Auto Scaling Developer Guide.
- Parameters:
enterStandbyRequest
-- Returns:
- Result of the EnterStandby operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
executePolicy
Executes the specified policy.
- Parameters:
executePolicyRequest
-- Returns:
- Result of the ExecutePolicy operation returned by the service.
- Throws:
ScalingActivityInProgressException
- The Auto Scaling group can't be deleted because there are scaling activities in progress.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
exitStandby
Moves the specified instances out of
Standby
mode.For more information, see Auto Scaling Lifecycle in the Auto Scaling Developer Guide.
- Parameters:
exitStandbyRequest
-- Returns:
- Result of the ExitStandby operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
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 step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:
- (Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Auto Scaling launches or terminates instances.
- (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 Auto Scaling to publish lifecycle notifications to the target.
- Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.
- If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.
- If you finish before the timeout period ends, complete the lifecycle action.
For more information, see Auto Scaling Lifecycle 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.
- Parameters:
putLifecycleHookRequest
-- Returns:
- Result of the PutLifecycleHook operation returned by the service.
- Throws:
LimitExceededException
- You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
putNotificationConfiguration
PutNotificationConfigurationResult putNotificationConfiguration(PutNotificationConfigurationRequest putNotificationConfigurationRequest) 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.
- Parameters:
putNotificationConfigurationRequest
-- Returns:
- Result of the PutNotificationConfiguration operation returned by the service.
- Throws:
LimitExceededException
- You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
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.
- Parameters:
putScalingPolicyRequest
-- Returns:
- Result of the PutScalingPolicy operation returned by the service.
- Throws:
LimitExceededException
- You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
putScheduledUpdateGroupAction
PutScheduledUpdateGroupActionResult putScheduledUpdateGroupAction(PutScheduledUpdateGroupActionRequest putScheduledUpdateGroupActionRequest) 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.
- Parameters:
putScheduledUpdateGroupActionRequest
-- Returns:
- Result of the PutScheduledUpdateGroupAction operation returned by the service.
- Throws:
AlreadyExistsException
- You already have an Auto Scaling group or launch configuration with this name.LimitExceededException
- You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
recordLifecycleActionHeartbeat
RecordLifecycleActionHeartbeatResult recordLifecycleActionHeartbeat(RecordLifecycleActionHeartbeatRequest recordLifecycleActionHeartbeatRequest) Records a heartbeat for the lifecycle action associated with the specified token or instance. This extends the timeout by the length of time defined using PutLifecycleHook.
This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:
- (Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Auto Scaling launches or terminates instances.
- (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 Auto Scaling to publish lifecycle notifications to the target.
- Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.
- If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.
- If you finish before the timeout period ends, complete the lifecycle action.
For more information, see Auto Scaling Lifecycle in the Auto Scaling Developer Guide.
- Parameters:
recordLifecycleActionHeartbeatRequest
-- Returns:
- Result of the RecordLifecycleActionHeartbeat operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
resumeProcesses
Resumes the specified suspended Auto Scaling processes, or all suspended process, for the specified Auto Scaling group.
For more information, see Suspending and Resuming Auto Scaling Processes in the Auto Scaling Developer Guide.
- Parameters:
resumeProcessesRequest
-- Returns:
- Result of the ResumeProcesses operation returned by the service.
- Throws:
ResourceInUseException
- The Auto Scaling group or launch configuration can't be deleted because it is in use.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
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.
- Parameters:
setDesiredCapacityRequest
-- Returns:
- Result of the SetDesiredCapacity operation returned by the service.
- Throws:
ScalingActivityInProgressException
- The Auto Scaling group can't be deleted because there are scaling activities in progress.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
setInstanceHealth
Sets the health status of the specified instance.
For more information, see Health Checks in the Auto Scaling Developer Guide.
- Parameters:
setInstanceHealthRequest
-- Returns:
- Result of the SetInstanceHealth operation returned by the service.
- Throws:
ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
setInstanceProtection
SetInstanceProtectionResult setInstanceProtection(SetInstanceProtectionRequest setInstanceProtectionRequest) Updates the instance protection settings of the specified instances.
For more information, see Instance Protection in the Auto Scaling Developer Guide.
- Parameters:
setInstanceProtectionRequest
-- Returns:
- Result of the SetInstanceProtection operation returned by the service.
- Throws:
LimitExceededException
- You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
suspendProcesses
Suspends the specified Auto Scaling processes, or all processes, for the specified Auto Scaling group.
Note that if you suspend either the
Launch
orTerminate
process types, it can prevent other process types from functioning properly.To resume processes that have been suspended, use ResumeProcesses.
For more information, see Suspending and Resuming Auto Scaling Processes in the Auto Scaling Developer Guide.
- Parameters:
suspendProcessesRequest
-- Returns:
- Result of the SuspendProcesses operation returned by the service.
- Throws:
ResourceInUseException
- The Auto Scaling group or launch configuration can't be deleted because it is in use.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
terminateInstanceInAutoScalingGroup
TerminateInstanceInAutoScalingGroupResult terminateInstanceInAutoScalingGroup(TerminateInstanceInAutoScalingGroupRequest terminateInstanceInAutoScalingGroupRequest) Terminates the specified instance and optionally adjusts the desired group size.
This call simply makes a termination request. The instance is not terminated immediately.
- Parameters:
terminateInstanceInAutoScalingGroupRequest
-- Returns:
- Result of the TerminateInstanceInAutoScalingGroup operation returned by the service.
- Throws:
ScalingActivityInProgressException
- The Auto Scaling group can't be deleted because there are scaling activities in progress.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
updateAutoScalingGroup
UpdateAutoScalingGroupResult updateAutoScalingGroup(UpdateAutoScalingGroupRequest updateAutoScalingGroupRequest) Updates the configuration for the specified Auto Scaling group.
To update an Auto Scaling group with a launch configuration with
InstanceMonitoring
set toFalse
, 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 call SetDesiredCapacity 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 call SetDesiredCapacity to set the size of the group to the new value ofMaxSize
. -
All other optional parameters are left unchanged if not specified.
- Parameters:
updateAutoScalingGroupRequest
-- Returns:
- Result of the UpdateAutoScalingGroup operation returned by the service.
- Throws:
ScalingActivityInProgressException
- The Auto Scaling group can't be deleted because there are scaling activities in progress.ResourceContentionException
- You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).
-
-
shutdown
void shutdown()Shuts down this client object, releasing any resources that might be held open. This is an optional method, and callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client has been shutdown, it should not be used to make any more requests. -
getCachedResponseMetadata
Returns additional metadata for a previously executed successful request, typically used for debugging issues where a service isn't acting as expected. This data isn't considered part of the result data returned by an operation, so it's available through this separate, diagnostic interface.Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing a request.
- Parameters:
request
- The originally executed request.- Returns:
- The response metadata for the specified request, or null if none is available.
-