@ThreadSafe @Generated(value="com.amazonaws:aws-java-sdk-code-generator") public class AmazonAutoScalingClient extends AmazonWebServiceClient implements AmazonAutoScaling
Amazon EC2 Auto Scaling is designed to automatically launch or terminate EC2 instances based on user-defined scaling policies, scheduled actions, and health checks.
For more information about Amazon EC2 Auto Scaling, see the Amazon EC2 Auto Scaling User Guide. For information about granting IAM users required permissions for calls to Amazon EC2 Auto Scaling, see Granting IAM users required permissions for Amazon EC2 Auto Scaling resources in the Amazon EC2 Auto Scaling API Reference.
Modifier and Type | Field and Description |
---|---|
protected static ClientConfigurationFactory |
configFactory
Client configuration factory providing ClientConfigurations tailored to this client
|
protected List<Unmarshaller<AmazonServiceException,Node>> |
exceptionUnmarshallers
List of exception unmarshallers for all modeled exceptions
|
client, clientConfiguration, endpoint, isEndpointOverridden, LOGGING_AWS_REQUEST_METRIC, requestHandler2s, timeOffset
ENDPOINT_PREFIX
Constructor and Description |
---|
AmazonAutoScalingClient()
Deprecated.
|
AmazonAutoScalingClient(AWSCredentials awsCredentials)
Deprecated.
use
AwsClientBuilder.withCredentials(AWSCredentialsProvider) for example:
AmazonAutoScalingClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(awsCredentials)).build(); |
AmazonAutoScalingClient(AWSCredentials awsCredentials,
ClientConfiguration clientConfiguration)
|
AmazonAutoScalingClient(AWSCredentialsProvider awsCredentialsProvider)
Deprecated.
|
AmazonAutoScalingClient(AWSCredentialsProvider awsCredentialsProvider,
ClientConfiguration clientConfiguration)
|
AmazonAutoScalingClient(AWSCredentialsProvider awsCredentialsProvider,
ClientConfiguration clientConfiguration,
RequestMetricCollector requestMetricCollector)
|
AmazonAutoScalingClient(ClientConfiguration clientConfiguration)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
AttachInstancesResult |
attachInstances(AttachInstancesRequest request)
Attaches one or more EC2 instances to the specified Auto Scaling group.
|
AttachLoadBalancersResult |
attachLoadBalancers()
Simplified method form for invoking the AttachLoadBalancers operation.
|
AttachLoadBalancersResult |
attachLoadBalancers(AttachLoadBalancersRequest request)
|
AttachLoadBalancerTargetGroupsResult |
attachLoadBalancerTargetGroups(AttachLoadBalancerTargetGroupsRequest request)
Attaches one or more target groups to the specified Auto Scaling group.
|
BatchDeleteScheduledActionResult |
batchDeleteScheduledAction(BatchDeleteScheduledActionRequest request)
Deletes one or more scheduled actions for the specified Auto Scaling group.
|
BatchPutScheduledUpdateGroupActionResult |
batchPutScheduledUpdateGroupAction(BatchPutScheduledUpdateGroupActionRequest request)
Creates or updates one or more scheduled scaling actions for an Auto Scaling group.
|
static AmazonAutoScalingClientBuilder |
builder() |
CancelInstanceRefreshResult |
cancelInstanceRefresh(CancelInstanceRefreshRequest request)
Cancels an instance refresh operation in progress.
|
CompleteLifecycleActionResult |
completeLifecycleAction(CompleteLifecycleActionRequest request)
Completes the lifecycle action for the specified token or instance with the specified result.
|
CreateAutoScalingGroupResult |
createAutoScalingGroup(CreateAutoScalingGroupRequest request)
We strongly recommend using a launch template when calling this operation to ensure full functionality for
Amazon EC2 Auto Scaling and Amazon EC2.
|
CreateLaunchConfigurationResult |
createLaunchConfiguration(CreateLaunchConfigurationRequest request)
Creates a launch configuration.
|
CreateOrUpdateTagsResult |
createOrUpdateTags(CreateOrUpdateTagsRequest request)
Creates or updates tags for the specified Auto Scaling group.
|
DeleteAutoScalingGroupResult |
deleteAutoScalingGroup(DeleteAutoScalingGroupRequest request)
Deletes the specified Auto Scaling group.
|
DeleteLaunchConfigurationResult |
deleteLaunchConfiguration(DeleteLaunchConfigurationRequest request)
Deletes the specified launch configuration.
|
DeleteLifecycleHookResult |
deleteLifecycleHook(DeleteLifecycleHookRequest request)
Deletes the specified lifecycle hook.
|
DeleteNotificationConfigurationResult |
deleteNotificationConfiguration(DeleteNotificationConfigurationRequest request)
Deletes the specified notification.
|
DeletePolicyResult |
deletePolicy(DeletePolicyRequest request)
Deletes the specified scaling policy.
|
DeleteScheduledActionResult |
deleteScheduledAction(DeleteScheduledActionRequest request)
Deletes the specified scheduled action.
|
DeleteTagsResult |
deleteTags(DeleteTagsRequest request)
Deletes the specified tags.
|
DeleteWarmPoolResult |
deleteWarmPool(DeleteWarmPoolRequest request)
Deletes the warm pool for the specified Auto Scaling group.
|
DescribeAccountLimitsResult |
describeAccountLimits()
Simplified method form for invoking the DescribeAccountLimits operation.
|
DescribeAccountLimitsResult |
describeAccountLimits(DescribeAccountLimitsRequest request)
Describes the current Amazon EC2 Auto Scaling resource quotas for your account.
|
DescribeAdjustmentTypesResult |
describeAdjustmentTypes()
Simplified method form for invoking the DescribeAdjustmentTypes operation.
|
DescribeAdjustmentTypesResult |
describeAdjustmentTypes(DescribeAdjustmentTypesRequest request)
Describes the available adjustment types for step scaling and simple scaling policies.
|
DescribeAutoScalingGroupsResult |
describeAutoScalingGroups()
Simplified method form for invoking the DescribeAutoScalingGroups operation.
|
DescribeAutoScalingGroupsResult |
describeAutoScalingGroups(DescribeAutoScalingGroupsRequest request)
Gets information about the Auto Scaling groups in the account and Region.
|
DescribeAutoScalingInstancesResult |
describeAutoScalingInstances()
Simplified method form for invoking the DescribeAutoScalingInstances operation.
|
DescribeAutoScalingInstancesResult |
describeAutoScalingInstances(DescribeAutoScalingInstancesRequest request)
Gets information about the Auto Scaling instances in the account and Region.
|
DescribeAutoScalingNotificationTypesResult |
describeAutoScalingNotificationTypes()
Simplified method form for invoking the DescribeAutoScalingNotificationTypes operation.
|
DescribeAutoScalingNotificationTypesResult |
describeAutoScalingNotificationTypes(DescribeAutoScalingNotificationTypesRequest request)
Describes the notification types that are supported by Amazon EC2 Auto Scaling.
|
DescribeInstanceRefreshesResult |
describeInstanceRefreshes(DescribeInstanceRefreshesRequest request)
Gets information about the instance refreshes for the specified Auto Scaling group.
|
DescribeLaunchConfigurationsResult |
describeLaunchConfigurations()
Simplified method form for invoking the DescribeLaunchConfigurations operation.
|
DescribeLaunchConfigurationsResult |
describeLaunchConfigurations(DescribeLaunchConfigurationsRequest request)
Gets information about the launch configurations in the account and Region.
|
DescribeLifecycleHooksResult |
describeLifecycleHooks(DescribeLifecycleHooksRequest request)
Gets information about the lifecycle hooks for the specified Auto Scaling group.
|
DescribeLifecycleHookTypesResult |
describeLifecycleHookTypes()
Simplified method form for invoking the DescribeLifecycleHookTypes operation.
|
DescribeLifecycleHookTypesResult |
describeLifecycleHookTypes(DescribeLifecycleHookTypesRequest request)
Describes the available types of lifecycle hooks.
|
DescribeLoadBalancersResult |
describeLoadBalancers(DescribeLoadBalancersRequest request)
Gets information about the load balancers for the specified Auto Scaling group.
|
DescribeLoadBalancerTargetGroupsResult |
describeLoadBalancerTargetGroups(DescribeLoadBalancerTargetGroupsRequest request)
Gets information about the load balancer target groups for the specified Auto Scaling group.
|
DescribeMetricCollectionTypesResult |
describeMetricCollectionTypes()
Simplified method form for invoking the DescribeMetricCollectionTypes operation.
|
DescribeMetricCollectionTypesResult |
describeMetricCollectionTypes(DescribeMetricCollectionTypesRequest request)
Describes the available CloudWatch metrics for Amazon EC2 Auto Scaling.
|
DescribeNotificationConfigurationsResult |
describeNotificationConfigurations()
Simplified method form for invoking the DescribeNotificationConfigurations operation.
|
DescribeNotificationConfigurationsResult |
describeNotificationConfigurations(DescribeNotificationConfigurationsRequest request)
Gets information about the Amazon SNS notifications that are configured for one or more Auto Scaling groups.
|
DescribePoliciesResult |
describePolicies()
Simplified method form for invoking the DescribePolicies operation.
|
DescribePoliciesResult |
describePolicies(DescribePoliciesRequest request)
Gets information about the scaling policies in the account and Region.
|
DescribeScalingActivitiesResult |
describeScalingActivities()
Simplified method form for invoking the DescribeScalingActivities operation.
|
DescribeScalingActivitiesResult |
describeScalingActivities(DescribeScalingActivitiesRequest request)
Gets information about the scaling activities in the account and Region.
|
DescribeScalingProcessTypesResult |
describeScalingProcessTypes()
Simplified method form for invoking the DescribeScalingProcessTypes operation.
|
DescribeScalingProcessTypesResult |
describeScalingProcessTypes(DescribeScalingProcessTypesRequest request)
Describes the scaling process types for use with the ResumeProcesses and SuspendProcesses APIs.
|
DescribeScheduledActionsResult |
describeScheduledActions()
Simplified method form for invoking the DescribeScheduledActions operation.
|
DescribeScheduledActionsResult |
describeScheduledActions(DescribeScheduledActionsRequest request)
Gets information about the scheduled actions that haven't run or that have not reached their end time.
|
DescribeTagsResult |
describeTags()
Simplified method form for invoking the DescribeTags operation.
|
DescribeTagsResult |
describeTags(DescribeTagsRequest request)
Describes the specified tags.
|
DescribeTerminationPolicyTypesResult |
describeTerminationPolicyTypes()
Simplified method form for invoking the DescribeTerminationPolicyTypes operation.
|
DescribeTerminationPolicyTypesResult |
describeTerminationPolicyTypes(DescribeTerminationPolicyTypesRequest request)
Describes the termination policies supported by Amazon EC2 Auto Scaling.
|
DescribeWarmPoolResult |
describeWarmPool(DescribeWarmPoolRequest request)
Gets information about a warm pool and its instances.
|
DetachInstancesResult |
detachInstances(DetachInstancesRequest request)
Removes one or more instances from the specified Auto Scaling group.
|
DetachLoadBalancersResult |
detachLoadBalancers()
Simplified method form for invoking the DetachLoadBalancers operation.
|
DetachLoadBalancersResult |
detachLoadBalancers(DetachLoadBalancersRequest request)
Detaches one or more Classic Load Balancers from the specified Auto Scaling group.
|
DetachLoadBalancerTargetGroupsResult |
detachLoadBalancerTargetGroups(DetachLoadBalancerTargetGroupsRequest request)
Detaches one or more target groups from the specified Auto Scaling group.
|
DisableMetricsCollectionResult |
disableMetricsCollection(DisableMetricsCollectionRequest request)
Disables group metrics for the specified Auto Scaling group.
|
EnableMetricsCollectionResult |
enableMetricsCollection(EnableMetricsCollectionRequest request)
Enables group metrics for the specified Auto Scaling group.
|
EnterStandbyResult |
enterStandby(EnterStandbyRequest request)
Moves the specified instances into the standby state.
|
ExecutePolicyResult |
executePolicy(ExecutePolicyRequest request)
Executes the specified policy.
|
ExitStandbyResult |
exitStandby(ExitStandbyRequest request)
Moves the specified instances out of the standby state.
|
ResponseMetadata |
getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful, request, typically used for debugging issues
where a service isn't acting as expected.
|
GetPredictiveScalingForecastResult |
getPredictiveScalingForecast(GetPredictiveScalingForecastRequest request)
Retrieves the forecast data for a predictive scaling policy.
|
PutLifecycleHookResult |
putLifecycleHook(PutLifecycleHookRequest request)
Creates or updates a lifecycle hook for the specified Auto Scaling group.
|
PutNotificationConfigurationResult |
putNotificationConfiguration(PutNotificationConfigurationRequest request)
Configures an Auto Scaling group to send notifications when specified events take place.
|
PutScalingPolicyResult |
putScalingPolicy(PutScalingPolicyRequest request)
Creates or updates a scaling policy for an Auto Scaling group.
|
PutScheduledUpdateGroupActionResult |
putScheduledUpdateGroupAction(PutScheduledUpdateGroupActionRequest request)
Creates or updates a scheduled scaling action for an Auto Scaling group.
|
PutWarmPoolResult |
putWarmPool(PutWarmPoolRequest request)
Creates or updates a warm pool for the specified Auto Scaling group.
|
RecordLifecycleActionHeartbeatResult |
recordLifecycleActionHeartbeat(RecordLifecycleActionHeartbeatRequest request)
Records a heartbeat for the lifecycle action associated with the specified token or instance.
|
ResumeProcessesResult |
resumeProcesses(ResumeProcessesRequest request)
Resumes the specified suspended auto scaling processes, or all suspended process, for the specified Auto Scaling
group.
|
SetDesiredCapacityResult |
setDesiredCapacity(SetDesiredCapacityRequest request)
Sets the size of the specified Auto Scaling group.
|
SetInstanceHealthResult |
setInstanceHealth(SetInstanceHealthRequest request)
Sets the health status of the specified instance.
|
SetInstanceProtectionResult |
setInstanceProtection(SetInstanceProtectionRequest request)
Updates the instance protection settings of the specified instances.
|
void |
shutdown()
Shuts down this client object, releasing any resources that might be held open.
|
StartInstanceRefreshResult |
startInstanceRefresh(StartInstanceRefreshRequest request)
Starts a new instance refresh operation.
|
SuspendProcessesResult |
suspendProcesses(SuspendProcessesRequest request)
Suspends the specified auto scaling processes, or all processes, for the specified Auto Scaling group.
|
TerminateInstanceInAutoScalingGroupResult |
terminateInstanceInAutoScalingGroup(TerminateInstanceInAutoScalingGroupRequest request)
Terminates the specified instance and optionally adjusts the desired group size.
|
UpdateAutoScalingGroupResult |
updateAutoScalingGroup(UpdateAutoScalingGroupRequest request)
We strongly recommend that all Auto Scaling groups use launch templates to ensure full functionality for
Amazon EC2 Auto Scaling and Amazon EC2.
|
AmazonAutoScalingWaiters |
waiters() |
addRequestHandler, addRequestHandler, beforeClientExecution, beforeMarshalling, calculateCRC32FromCompressedData, checkMutability, configureRegion, createExecutionContext, createExecutionContext, createExecutionContext, createSignerProvider, endClientExecution, endClientExecution, getClientConfiguration, getClientId, getEndpointPrefix, getMonitoringListeners, getRequestMetricsCollector, getServiceAbbreviation, getServiceName, getServiceNameIntern, getSigner, getSignerByURI, getSignerOverride, getSignerProvider, getSignerRegionOverride, getSigningRegion, getTimeOffset, isCsmEnabled, isEndpointOverridden, isProfilingEnabled, isRequestMetricsEnabled, makeImmutable, removeRequestHandler, removeRequestHandler, requestMetricCollector, setEndpoint, setEndpoint, setEndpointPrefix, setRegion, setServiceNameIntern, setSignerRegionOverride, setTimeOffset, shouldGenerateClientSideMonitoringEvents, useStrictHostNameVerification, withEndpoint, withRegion, withRegion, withTimeOffset
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
setEndpoint, setRegion
protected static final ClientConfigurationFactory configFactory
protected final List<Unmarshaller<AmazonServiceException,Node>> exceptionUnmarshallers
@Deprecated public AmazonAutoScalingClient()
AmazonAutoScalingClientBuilder.defaultClient()
All service calls made using this new client object are blocking, and will not return until the service call completes.
DefaultAWSCredentialsProviderChain
@Deprecated public AmazonAutoScalingClient(ClientConfiguration clientConfiguration)
AwsClientBuilder.withClientConfiguration(ClientConfiguration)
All service calls made using this new client object are blocking, and will not return until the service call completes.
clientConfiguration
- The client configuration options controlling how this client connects to Auto Scaling (ex: proxy settings,
retry counts, etc.).DefaultAWSCredentialsProviderChain
@Deprecated public AmazonAutoScalingClient(AWSCredentials awsCredentials)
AwsClientBuilder.withCredentials(AWSCredentialsProvider)
for example:
AmazonAutoScalingClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(awsCredentials)).build();
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentials
- The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.@Deprecated public AmazonAutoScalingClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration)
AwsClientBuilder.withCredentials(AWSCredentialsProvider)
and
AwsClientBuilder.withClientConfiguration(ClientConfiguration)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentials
- The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.clientConfiguration
- The client configuration options controlling how this client connects to Auto Scaling (ex: proxy settings,
retry counts, etc.).@Deprecated public AmazonAutoScalingClient(AWSCredentialsProvider awsCredentialsProvider)
AwsClientBuilder.withCredentials(AWSCredentialsProvider)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentialsProvider
- The AWS credentials provider which will provide credentials to authenticate requests with AWS services.@Deprecated public AmazonAutoScalingClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration)
AwsClientBuilder.withCredentials(AWSCredentialsProvider)
and
AwsClientBuilder.withClientConfiguration(ClientConfiguration)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentialsProvider
- The AWS credentials provider which will provide credentials to authenticate requests with AWS services.clientConfiguration
- The client configuration options controlling how this client connects to Auto Scaling (ex: proxy settings,
retry counts, etc.).@Deprecated public AmazonAutoScalingClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, RequestMetricCollector requestMetricCollector)
AwsClientBuilder.withCredentials(AWSCredentialsProvider)
and
AwsClientBuilder.withClientConfiguration(ClientConfiguration)
and
AwsClientBuilder.withMetricsCollector(RequestMetricCollector)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentialsProvider
- The AWS credentials provider which will provide credentials to authenticate requests with AWS services.clientConfiguration
- The client configuration options controlling how this client connects to Auto Scaling (ex: proxy settings,
retry counts, etc.).requestMetricCollector
- optional request metric collectorpublic static AmazonAutoScalingClientBuilder builder()
public AttachInstancesResult attachInstances(AttachInstancesRequest request)
Attaches one or more EC2 instances to the specified Auto Scaling group.
When you attach instances, Amazon EC2 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.
If there is a Classic Load Balancer attached to your Auto Scaling group, the instances are also registered with the load balancer. If there are target groups attached to your Auto Scaling group, the instances are also registered with the target groups.
For more information, see Attach EC2 instances to your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
attachInstances
in interface AmazonAutoScaling
attachInstancesRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ServiceLinkedRoleFailureException
- The service-linked role is not yet ready for use.public AttachLoadBalancerTargetGroupsResult attachLoadBalancerTargetGroups(AttachLoadBalancerTargetGroupsRequest request)
Attaches one or more target groups to the specified Auto Scaling group.
This operation is used with the following load balancer types:
Application Load Balancer - Operates at the application layer (layer 7) and supports HTTP and HTTPS.
Network Load Balancer - Operates at the transport layer (layer 4) and supports TCP, TLS, and UDP.
Gateway Load Balancer - Operates at the network layer (layer 3).
To describe the target groups for an Auto Scaling group, call the DescribeLoadBalancerTargetGroups API. To detach the target group from the Auto Scaling group, call the DetachLoadBalancerTargetGroups API.
This operation is additive and does not detach existing target groups or Classic Load Balancers from the Auto Scaling group.
For more information, see Elastic Load Balancing and Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
attachLoadBalancerTargetGroups
in interface AmazonAutoScaling
attachLoadBalancerTargetGroupsRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ServiceLinkedRoleFailureException
- The service-linked role is not yet ready for use.public AttachLoadBalancersResult attachLoadBalancers(AttachLoadBalancersRequest request)
To attach an Application Load Balancer, Network Load Balancer, or Gateway Load Balancer, use the AttachLoadBalancerTargetGroups API operation instead.
Attaches one or more Classic Load Balancers to the specified Auto Scaling group. Amazon EC2 Auto Scaling registers the running instances with these Classic Load Balancers.
To describe the load balancers for an Auto Scaling group, call the DescribeLoadBalancers API. To detach the load balancer from the Auto Scaling group, call the DetachLoadBalancers API.
This operation is additive and does not detach existing Classic Load Balancers or target groups from the Auto Scaling group.
For more information, see Elastic Load Balancing and Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
attachLoadBalancers
in interface AmazonAutoScaling
attachLoadBalancersRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ServiceLinkedRoleFailureException
- The service-linked role is not yet ready for use.public AttachLoadBalancersResult attachLoadBalancers()
AmazonAutoScaling
attachLoadBalancers
in interface AmazonAutoScaling
AmazonAutoScaling.attachLoadBalancers(AttachLoadBalancersRequest)
public BatchDeleteScheduledActionResult batchDeleteScheduledAction(BatchDeleteScheduledActionRequest request)
Deletes one or more scheduled actions for the specified Auto Scaling group.
batchDeleteScheduledAction
in interface AmazonAutoScaling
batchDeleteScheduledActionRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public BatchPutScheduledUpdateGroupActionResult batchPutScheduledUpdateGroupAction(BatchPutScheduledUpdateGroupActionRequest request)
Creates or updates one or more scheduled scaling actions for an Auto Scaling group.
batchPutScheduledUpdateGroupAction
in interface AmazonAutoScaling
batchPutScheduledUpdateGroupActionRequest
- AlreadyExistsException
- You already have an Auto Scaling group or launch configuration with this name.LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public CancelInstanceRefreshResult cancelInstanceRefresh(CancelInstanceRefreshRequest request)
Cancels an instance refresh operation in progress. Cancellation does not roll back any replacements that have already been completed, but it prevents new replacements from being started.
This operation is part of the instance refresh feature in Amazon EC2 Auto Scaling, which helps you update instances in your Auto Scaling group after you make configuration changes.
cancelInstanceRefresh
in interface AmazonAutoScaling
cancelInstanceRefreshRequest
- LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ActiveInstanceRefreshNotFoundException
- The request failed because an active instance refresh for the specified Auto Scaling group was not found.public CompleteLifecycleActionResult completeLifecycleAction(CompleteLifecycleActionRequest request)
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 Amazon EventBridge to invoke your Lambda function when Amazon EC2 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 Amazon EC2 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, send a callback by using the CompleteLifecycleAction API call.
For more information, see Amazon EC2 Auto Scaling lifecycle hooks in the Amazon EC2 Auto Scaling User Guide.
completeLifecycleAction
in interface AmazonAutoScaling
completeLifecycleActionRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public CreateAutoScalingGroupResult createAutoScalingGroup(CreateAutoScalingGroupRequest request)
We strongly recommend using a launch template when calling this operation to ensure full functionality for Amazon EC2 Auto Scaling and Amazon EC2.
Creates an Auto Scaling group with the specified name and attributes.
If you exceed your maximum limit of Auto Scaling groups, the call fails. To query this limit, call the DescribeAccountLimits API. For information about updating this limit, see Amazon EC2 Auto Scaling service quotas in the Amazon EC2 Auto Scaling User Guide.
For introductory exercises for creating an Auto Scaling group, see Getting started with Amazon EC2 Auto Scaling and Tutorial: Set up a scaled and load-balanced application in the Amazon EC2 Auto Scaling User Guide. For more information, see Auto Scaling groups in the Amazon EC2 Auto Scaling User Guide.
Every Auto Scaling group has three size parameters (DesiredCapacity
, MaxSize
, and
MinSize
). Usually, you set these sizes based on a specific number of instances. However, if you
configure a mixed instances policy that defines weights for the instance types, you must specify these sizes with
the same units that you use for weighting instances.
createAutoScalingGroup
in interface AmazonAutoScaling
createAutoScalingGroupRequest
- AlreadyExistsException
- You already have an Auto Scaling group or launch configuration with this name.LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ServiceLinkedRoleFailureException
- The service-linked role is not yet ready for use.public CreateLaunchConfigurationResult createLaunchConfiguration(CreateLaunchConfigurationRequest request)
Creates a launch configuration.
If you exceed your maximum limit of launch configurations, the call fails. To query this limit, call the DescribeAccountLimits API. For information about updating this limit, see Amazon EC2 Auto Scaling service quotas in the Amazon EC2 Auto Scaling User Guide.
For more information, see Launch configurations in the Amazon EC2 Auto Scaling User Guide.
createLaunchConfiguration
in interface AmazonAutoScaling
createLaunchConfigurationRequest
- AlreadyExistsException
- You already have an Auto Scaling group or launch configuration with this name.LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public CreateOrUpdateTagsResult createOrUpdateTags(CreateOrUpdateTagsRequest request)
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 Amazon EC2 Auto Scaling User Guide.
createOrUpdateTags
in interface AmazonAutoScaling
createOrUpdateTagsRequest
- LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.AlreadyExistsException
- You already have an Auto Scaling group or launch configuration with this name.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ResourceInUseException
- The operation can't be performed because the resource is in use.public DeleteAutoScalingGroupResult deleteAutoScalingGroup(DeleteAutoScalingGroupRequest request)
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 the DetachInstances API with the list of instances and the option to decrement the desired capacity. This ensures that Amazon EC2 Auto Scaling does not launch replacement instances.
To terminate all instances before deleting the Auto Scaling group, call the UpdateAutoScalingGroup API and set the minimum size and desired capacity of the Auto Scaling group to zero.
deleteAutoScalingGroup
in interface AmazonAutoScaling
deleteAutoScalingGroupRequest
- ScalingActivityInProgressException
- The operation can't be performed because there are scaling activities in progress.ResourceInUseException
- The operation can't be performed because the resource is in use.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DeleteLaunchConfigurationResult deleteLaunchConfiguration(DeleteLaunchConfigurationRequest request)
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.
deleteLaunchConfiguration
in interface AmazonAutoScaling
deleteLaunchConfigurationRequest
- ResourceInUseException
- The operation can't be performed because the resource is in use.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DeleteLifecycleHookResult deleteLifecycleHook(DeleteLifecycleHookRequest request)
Deletes the specified lifecycle hook.
If there are any outstanding lifecycle actions, they are completed first (ABANDON
for launching
instances, CONTINUE
for terminating instances).
deleteLifecycleHook
in interface AmazonAutoScaling
deleteLifecycleHookRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DeleteNotificationConfigurationResult deleteNotificationConfiguration(DeleteNotificationConfigurationRequest request)
Deletes the specified notification.
deleteNotificationConfiguration
in interface AmazonAutoScaling
deleteNotificationConfigurationRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DeletePolicyResult deletePolicy(DeletePolicyRequest request)
Deletes the specified scaling policy.
Deleting either a step scaling policy or a simple scaling policy deletes the underlying alarm action, but does not delete the alarm, even if it no longer has an associated action.
For more information, see Deleting a scaling policy in the Amazon EC2 Auto Scaling User Guide.
deletePolicy
in interface AmazonAutoScaling
deletePolicyRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ServiceLinkedRoleFailureException
- The service-linked role is not yet ready for use.public DeleteScheduledActionResult deleteScheduledAction(DeleteScheduledActionRequest request)
Deletes the specified scheduled action.
deleteScheduledAction
in interface AmazonAutoScaling
deleteScheduledActionRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DeleteTagsResult deleteTags(DeleteTagsRequest request)
Deletes the specified tags.
deleteTags
in interface AmazonAutoScaling
deleteTagsRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ResourceInUseException
- The operation can't be performed because the resource is in use.public DeleteWarmPoolResult deleteWarmPool(DeleteWarmPoolRequest request)
Deletes the warm pool for the specified Auto Scaling group.
For more information, see Warm pools for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
deleteWarmPool
in interface AmazonAutoScaling
deleteWarmPoolRequest
- LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ScalingActivityInProgressException
- The operation can't be performed because there are scaling activities in progress.ResourceInUseException
- The operation can't be performed because the resource is in use.public DescribeAccountLimitsResult describeAccountLimits(DescribeAccountLimitsRequest request)
Describes the current Amazon EC2 Auto Scaling resource quotas for your account.
When you establish an Amazon Web Services account, the account has initial quotas on the maximum number of Auto Scaling groups and launch configurations that you can create in a given Region. For more information, see Amazon EC2 Auto Scaling service quotas in the Amazon EC2 Auto Scaling User Guide.
describeAccountLimits
in interface AmazonAutoScaling
describeAccountLimitsRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeAccountLimitsResult describeAccountLimits()
AmazonAutoScaling
describeAccountLimits
in interface AmazonAutoScaling
AmazonAutoScaling.describeAccountLimits(DescribeAccountLimitsRequest)
public DescribeAdjustmentTypesResult describeAdjustmentTypes(DescribeAdjustmentTypesRequest request)
Describes the available adjustment types for step scaling and simple scaling policies.
The following adjustment types are supported:
ChangeInCapacity
ExactCapacity
PercentChangeInCapacity
describeAdjustmentTypes
in interface AmazonAutoScaling
describeAdjustmentTypesRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeAdjustmentTypesResult describeAdjustmentTypes()
AmazonAutoScaling
describeAdjustmentTypes
in interface AmazonAutoScaling
AmazonAutoScaling.describeAdjustmentTypes(DescribeAdjustmentTypesRequest)
public DescribeAutoScalingGroupsResult describeAutoScalingGroups(DescribeAutoScalingGroupsRequest request)
Gets information about the Auto Scaling groups in the account and Region.
If you specify Auto Scaling group names, the output includes information for only the specified Auto Scaling groups. If you specify filters, the output includes information for only those Auto Scaling groups that meet the filter criteria. If you do not specify group names or filters, the output includes information for all Auto Scaling groups.
This operation also returns information about instances in Auto Scaling groups. To retrieve information about the instances in a warm pool, you must call the DescribeWarmPool API.
describeAutoScalingGroups
in interface AmazonAutoScaling
describeAutoScalingGroupsRequest
- InvalidNextTokenException
- The NextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeAutoScalingGroupsResult describeAutoScalingGroups()
AmazonAutoScaling
describeAutoScalingGroups
in interface AmazonAutoScaling
AmazonAutoScaling.describeAutoScalingGroups(DescribeAutoScalingGroupsRequest)
public DescribeAutoScalingInstancesResult describeAutoScalingInstances(DescribeAutoScalingInstancesRequest request)
Gets information about the Auto Scaling instances in the account and Region.
describeAutoScalingInstances
in interface AmazonAutoScaling
describeAutoScalingInstancesRequest
- InvalidNextTokenException
- The NextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeAutoScalingInstancesResult describeAutoScalingInstances()
AmazonAutoScaling
describeAutoScalingInstances
in interface AmazonAutoScaling
AmazonAutoScaling.describeAutoScalingInstances(DescribeAutoScalingInstancesRequest)
public DescribeAutoScalingNotificationTypesResult describeAutoScalingNotificationTypes(DescribeAutoScalingNotificationTypesRequest request)
Describes the notification types that are supported by Amazon EC2 Auto Scaling.
describeAutoScalingNotificationTypes
in interface AmazonAutoScaling
describeAutoScalingNotificationTypesRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeAutoScalingNotificationTypesResult describeAutoScalingNotificationTypes()
AmazonAutoScaling
describeAutoScalingNotificationTypes
in interface AmazonAutoScaling
AmazonAutoScaling.describeAutoScalingNotificationTypes(DescribeAutoScalingNotificationTypesRequest)
public DescribeInstanceRefreshesResult describeInstanceRefreshes(DescribeInstanceRefreshesRequest request)
Gets information about the instance refreshes for the specified Auto Scaling group.
This operation is part of the instance refresh feature in Amazon EC2 Auto Scaling, which helps you update instances in your Auto Scaling group after you make configuration changes.
To help you determine the status of an instance refresh, this operation returns information about the instance refreshes you previously initiated, including their status, end time, the percentage of the instance refresh that is complete, and the number of instances remaining to update before the instance refresh is complete.
The following are the possible statuses:
Pending
- The request was created, but the operation has not started.
InProgress
- The operation is in progress.
Successful
- The operation completed successfully.
Failed
- The operation failed to complete. You can troubleshoot using the status reason and the
scaling activities.
Cancelling
- An ongoing operation is being cancelled. Cancellation does not roll back any
replacements that have already been completed, but it prevents new replacements from being started.
Cancelled
- The operation is cancelled.
describeInstanceRefreshes
in interface AmazonAutoScaling
describeInstanceRefreshesRequest
- InvalidNextTokenException
- The NextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeLaunchConfigurationsResult describeLaunchConfigurations(DescribeLaunchConfigurationsRequest request)
Gets information about the launch configurations in the account and Region.
describeLaunchConfigurations
in interface AmazonAutoScaling
describeLaunchConfigurationsRequest
- InvalidNextTokenException
- The NextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeLaunchConfigurationsResult describeLaunchConfigurations()
AmazonAutoScaling
describeLaunchConfigurations
in interface AmazonAutoScaling
AmazonAutoScaling.describeLaunchConfigurations(DescribeLaunchConfigurationsRequest)
public DescribeLifecycleHookTypesResult describeLifecycleHookTypes(DescribeLifecycleHookTypesRequest request)
Describes the available types of lifecycle hooks.
The following hook types are supported:
autoscaling:EC2_INSTANCE_LAUNCHING
autoscaling:EC2_INSTANCE_TERMINATING
describeLifecycleHookTypes
in interface AmazonAutoScaling
describeLifecycleHookTypesRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeLifecycleHookTypesResult describeLifecycleHookTypes()
AmazonAutoScaling
describeLifecycleHookTypes
in interface AmazonAutoScaling
AmazonAutoScaling.describeLifecycleHookTypes(DescribeLifecycleHookTypesRequest)
public DescribeLifecycleHooksResult describeLifecycleHooks(DescribeLifecycleHooksRequest request)
Gets information about the lifecycle hooks for the specified Auto Scaling group.
describeLifecycleHooks
in interface AmazonAutoScaling
describeLifecycleHooksRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeLoadBalancerTargetGroupsResult describeLoadBalancerTargetGroups(DescribeLoadBalancerTargetGroupsRequest request)
Gets information about the load balancer target groups for the specified Auto Scaling group.
To determine the availability of registered instances, use the State
element in the response. When
you attach a target group to an Auto Scaling group, the initial State
value 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 for the Auto Scaling group, the state transitions to
InService
after at least one Auto Scaling instance passes the health check. When the target group is
in the InService
state, Amazon EC2 Auto Scaling can terminate and replace any instances that are
reported as unhealthy. If no registered instances pass the health checks, the target group doesn't enter the
InService
state.
Target groups also have an InService
state if you attach them in the CreateAutoScalingGroup
API call. If your target group state is InService
, but it is not working properly, check the scaling
activities by calling DescribeScalingActivities and take any corrective actions necessary.
For help with failed health checks, see Troubleshooting Amazon EC2 Auto Scaling: Health checks in the Amazon EC2 Auto Scaling User Guide. For more information, see Elastic Load Balancing and Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
describeLoadBalancerTargetGroups
in interface AmazonAutoScaling
describeLoadBalancerTargetGroupsRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).InvalidNextTokenException
- The NextToken
value is not valid.public DescribeLoadBalancersResult describeLoadBalancers(DescribeLoadBalancersRequest request)
Gets information about the load balancers for the specified Auto Scaling group.
This operation describes only Classic Load Balancers. If you have Application Load Balancers, Network Load Balancers, or Gateway Load Balancers, use the DescribeLoadBalancerTargetGroups API instead.
To determine the availability of registered instances, use the State
element in the response. When
you attach a load balancer to an Auto Scaling group, the initial State
value is Adding
.
The state transitions to Added
after all Auto Scaling instances are registered with the load
balancer. If Elastic Load Balancing health checks are enabled for the Auto Scaling group, the state transitions
to InService
after at least one Auto Scaling instance passes the health check. When the load
balancer is in the InService
state, Amazon EC2 Auto Scaling can terminate and replace any instances
that are reported as unhealthy. If no registered instances pass the health checks, the load balancer doesn't
enter the InService
state.
Load balancers also have an InService
state if you attach them in the CreateAutoScalingGroup
API call. If your load balancer state is InService
, but it is not working properly, check the
scaling activities by calling DescribeScalingActivities and take any corrective actions necessary.
For help with failed health checks, see Troubleshooting Amazon EC2 Auto Scaling: Health checks in the Amazon EC2 Auto Scaling User Guide. For more information, see Elastic Load Balancing and Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
describeLoadBalancers
in interface AmazonAutoScaling
describeLoadBalancersRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).InvalidNextTokenException
- The NextToken
value is not valid.public DescribeMetricCollectionTypesResult describeMetricCollectionTypes(DescribeMetricCollectionTypesRequest request)
Describes the available CloudWatch metrics for Amazon EC2 Auto Scaling.
The GroupStandbyInstances
metric is not returned by default. You must explicitly request this metric
when calling the EnableMetricsCollection API.
describeMetricCollectionTypes
in interface AmazonAutoScaling
describeMetricCollectionTypesRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeMetricCollectionTypesResult describeMetricCollectionTypes()
AmazonAutoScaling
describeMetricCollectionTypes
in interface AmazonAutoScaling
AmazonAutoScaling.describeMetricCollectionTypes(DescribeMetricCollectionTypesRequest)
public DescribeNotificationConfigurationsResult describeNotificationConfigurations(DescribeNotificationConfigurationsRequest request)
Gets information about the Amazon SNS notifications that are configured for one or more Auto Scaling groups.
describeNotificationConfigurations
in interface AmazonAutoScaling
describeNotificationConfigurationsRequest
- InvalidNextTokenException
- The NextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeNotificationConfigurationsResult describeNotificationConfigurations()
AmazonAutoScaling
describeNotificationConfigurations
in interface AmazonAutoScaling
AmazonAutoScaling.describeNotificationConfigurations(DescribeNotificationConfigurationsRequest)
public DescribePoliciesResult describePolicies(DescribePoliciesRequest request)
Gets information about the scaling policies in the account and Region.
describePolicies
in interface AmazonAutoScaling
describePoliciesRequest
- InvalidNextTokenException
- The NextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ServiceLinkedRoleFailureException
- The service-linked role is not yet ready for use.public DescribePoliciesResult describePolicies()
AmazonAutoScaling
describePolicies
in interface AmazonAutoScaling
AmazonAutoScaling.describePolicies(DescribePoliciesRequest)
public DescribeScalingActivitiesResult describeScalingActivities(DescribeScalingActivitiesRequest request)
Gets information about the scaling activities in the account and Region.
When scaling events occur, you see a record of the scaling activity in the scaling activities. For more information, see Verifying a scaling activity for an Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
If the scaling event succeeds, the value of the StatusCode
element in the response is
Successful
. If an attempt to launch instances failed, the StatusCode
value is
Failed
or Cancelled
and the StatusMessage
element in the response
indicates the cause of the failure. For help interpreting the StatusMessage
, see Troubleshooting Amazon EC2
Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
describeScalingActivities
in interface AmazonAutoScaling
describeScalingActivitiesRequest
- InvalidNextTokenException
- The NextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeScalingActivitiesResult describeScalingActivities()
AmazonAutoScaling
describeScalingActivities
in interface AmazonAutoScaling
AmazonAutoScaling.describeScalingActivities(DescribeScalingActivitiesRequest)
public DescribeScalingProcessTypesResult describeScalingProcessTypes(DescribeScalingProcessTypesRequest request)
Describes the scaling process types for use with the ResumeProcesses and SuspendProcesses APIs.
describeScalingProcessTypes
in interface AmazonAutoScaling
describeScalingProcessTypesRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeScalingProcessTypesResult describeScalingProcessTypes()
AmazonAutoScaling
describeScalingProcessTypes
in interface AmazonAutoScaling
AmazonAutoScaling.describeScalingProcessTypes(DescribeScalingProcessTypesRequest)
public DescribeScheduledActionsResult describeScheduledActions(DescribeScheduledActionsRequest request)
Gets information about the scheduled actions that haven't run or that have not reached their end time.
To describe the scaling activities for scheduled actions that have already run, call the DescribeScalingActivities API.
describeScheduledActions
in interface AmazonAutoScaling
describeScheduledActionsRequest
- InvalidNextTokenException
- The NextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeScheduledActionsResult describeScheduledActions()
AmazonAutoScaling
describeScheduledActions
in interface AmazonAutoScaling
AmazonAutoScaling.describeScheduledActions(DescribeScheduledActionsRequest)
public DescribeTagsResult describeTags(DescribeTagsRequest request)
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.
For more information, see Tagging Auto Scaling groups and instances in the Amazon EC2 Auto Scaling User Guide.
describeTags
in interface AmazonAutoScaling
describeTagsRequest
- InvalidNextTokenException
- The NextToken
value is not valid.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeTagsResult describeTags()
AmazonAutoScaling
describeTags
in interface AmazonAutoScaling
AmazonAutoScaling.describeTags(DescribeTagsRequest)
public DescribeTerminationPolicyTypesResult describeTerminationPolicyTypes(DescribeTerminationPolicyTypesRequest request)
Describes the termination policies supported by Amazon EC2 Auto Scaling.
For more information, see Controlling which Auto Scaling instances terminate during scale in in the Amazon EC2 Auto Scaling User Guide.
describeTerminationPolicyTypes
in interface AmazonAutoScaling
describeTerminationPolicyTypesRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DescribeTerminationPolicyTypesResult describeTerminationPolicyTypes()
AmazonAutoScaling
describeTerminationPolicyTypes
in interface AmazonAutoScaling
AmazonAutoScaling.describeTerminationPolicyTypes(DescribeTerminationPolicyTypesRequest)
public DescribeWarmPoolResult describeWarmPool(DescribeWarmPoolRequest request)
Gets information about a warm pool and its instances.
For more information, see Warm pools for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
describeWarmPool
in interface AmazonAutoScaling
describeWarmPoolRequest
- InvalidNextTokenException
- The NextToken
value is not valid.LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DetachInstancesResult detachInstances(DetachInstancesRequest request)
Removes one or more instances from the specified Auto Scaling group.
After the instances are detached, you can manage them independent of the Auto Scaling group.
If you do not specify the option to decrement the desired capacity, Amazon EC2 Auto Scaling launches instances to replace the ones that are detached.
If there is a Classic Load Balancer attached to the Auto Scaling group, the instances are deregistered from the load balancer. If there are target groups attached to the Auto Scaling group, the instances are deregistered from the target groups.
For more information, see Detach EC2 instances from your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
detachInstances
in interface AmazonAutoScaling
detachInstancesRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DetachLoadBalancerTargetGroupsResult detachLoadBalancerTargetGroups(DetachLoadBalancerTargetGroupsRequest request)
Detaches one or more target groups from the specified Auto Scaling group.
detachLoadBalancerTargetGroups
in interface AmazonAutoScaling
detachLoadBalancerTargetGroupsRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DetachLoadBalancersResult detachLoadBalancers(DetachLoadBalancersRequest request)
Detaches one or more Classic Load Balancers from the specified Auto Scaling group.
This operation detaches only Classic Load Balancers. If you have Application Load Balancers, Network Load Balancers, or Gateway Load Balancers, use the DetachLoadBalancerTargetGroups API instead.
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 the
DescribeLoadBalancers API call. The instances remain running.
detachLoadBalancers
in interface AmazonAutoScaling
detachLoadBalancersRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public DetachLoadBalancersResult detachLoadBalancers()
AmazonAutoScaling
detachLoadBalancers
in interface AmazonAutoScaling
AmazonAutoScaling.detachLoadBalancers(DetachLoadBalancersRequest)
public DisableMetricsCollectionResult disableMetricsCollection(DisableMetricsCollectionRequest request)
Disables group metrics for the specified Auto Scaling group.
disableMetricsCollection
in interface AmazonAutoScaling
disableMetricsCollectionRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public EnableMetricsCollectionResult enableMetricsCollection(EnableMetricsCollectionRequest request)
Enables group metrics for the specified Auto Scaling group. For more information, see Monitoring CloudWatch metrics for your Auto Scaling groups and instances in the Amazon EC2 Auto Scaling User Guide.
enableMetricsCollection
in interface AmazonAutoScaling
enableMetricsCollectionRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public EnterStandbyResult enterStandby(EnterStandbyRequest request)
Moves the specified instances into the standby state.
If you choose to decrement the desired capacity of the Auto Scaling group, the instances can enter standby as long as the desired capacity of the Auto Scaling group after the instances are placed into standby is equal to or greater than the minimum capacity of the group.
If you choose not to decrement the desired capacity of the Auto Scaling group, the Auto Scaling group launches new instances to replace the instances on standby.
For more information, see Temporarily removing instances from your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
enterStandby
in interface AmazonAutoScaling
enterStandbyRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public ExecutePolicyResult executePolicy(ExecutePolicyRequest request)
Executes the specified policy. This can be useful for testing the design of your scaling policy.
executePolicy
in interface AmazonAutoScaling
executePolicyRequest
- ScalingActivityInProgressException
- The operation can't be performed because there are scaling activities in progress.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public ExitStandbyResult exitStandby(ExitStandbyRequest request)
Moves the specified instances out of the standby state.
After you put the instances back in service, the desired capacity is incremented.
For more information, see Temporarily removing instances from your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
exitStandby
in interface AmazonAutoScaling
exitStandbyRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public GetPredictiveScalingForecastResult getPredictiveScalingForecast(GetPredictiveScalingForecastRequest request)
Retrieves the forecast data for a predictive scaling policy.
Load forecasts are predictions of the hourly load values using historical load data from CloudWatch and an analysis of historical trends. Capacity forecasts are represented as predicted values for the minimum capacity that is needed on an hourly basis, based on the hourly load forecast.
A minimum of 24 hours of data is required to create the initial forecasts. However, having a full 14 days of historical data results in more accurate forecasts.
For more information, see Predictive scaling for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
getPredictiveScalingForecast
in interface AmazonAutoScaling
getPredictiveScalingForecastRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public PutLifecycleHookResult putLifecycleHook(PutLifecycleHookRequest request)
Creates or updates a lifecycle hook for the specified Auto Scaling group.
A lifecycle hook enables an Auto Scaling group to be aware of events in the Auto Scaling instance lifecycle, and then perform a custom action when the corresponding lifecycle event occurs.
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 Amazon EventBridge to invoke your Lambda function when Amazon EC2 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 Amazon EC2 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 using the RecordLifecycleActionHeartbeat API call.
If you finish before the timeout period ends, send a callback by using the CompleteLifecycleAction API call.
For more information, see Amazon EC2 Auto Scaling lifecycle hooks in the Amazon EC2 Auto Scaling User Guide.
If you exceed your maximum limit of lifecycle hooks, which by default is 50 per Auto Scaling group, the call fails.
You can view the lifecycle hooks for an Auto Scaling group using the DescribeLifecycleHooks API call. If you are no longer using a lifecycle hook, you can delete it by calling the DeleteLifecycleHook API.
putLifecycleHook
in interface AmazonAutoScaling
putLifecycleHookRequest
- LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public PutNotificationConfigurationResult putNotificationConfiguration(PutNotificationConfigurationRequest request)
Configures an Auto Scaling group to send notifications when specified events take place. Subscribers to the specified topic can have messages delivered to an endpoint such as a web server or an email address.
This configuration overwrites any existing configuration.
For more information, see Getting Amazon SNS notifications when your Auto Scaling group scales in the Amazon EC2 Auto Scaling User Guide.
If you exceed your maximum limit of SNS topics, which is 10 per Auto Scaling group, the call fails.
putNotificationConfiguration
in interface AmazonAutoScaling
putNotificationConfigurationRequest
- LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ServiceLinkedRoleFailureException
- The service-linked role is not yet ready for use.public PutScalingPolicyResult putScalingPolicy(PutScalingPolicyRequest request)
Creates or updates a scaling policy for an Auto Scaling group. Scaling policies are used to scale an Auto Scaling group based on configurable metrics. If no policies are defined, the dynamic scaling and predictive scaling features are not used.
For more information about using dynamic scaling, see Target tracking scaling policies and Step and simple scaling policies in the Amazon EC2 Auto Scaling User Guide.
For more information about using predictive scaling, see Predictive scaling for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
You can view the scaling policies for an Auto Scaling group using the DescribePolicies API call. If you are no longer using a scaling policy, you can delete it by calling the DeletePolicy API.
putScalingPolicy
in interface AmazonAutoScaling
putScalingPolicyRequest
- LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ServiceLinkedRoleFailureException
- The service-linked role is not yet ready for use.public PutScheduledUpdateGroupActionResult putScheduledUpdateGroupAction(PutScheduledUpdateGroupActionRequest request)
Creates or updates a scheduled scaling action for an Auto Scaling group.
For more information, see Scheduled scaling in the Amazon EC2 Auto Scaling User Guide.
You can view the scheduled actions for an Auto Scaling group using the DescribeScheduledActions API call. If you are no longer using a scheduled action, you can delete it by calling the DeleteScheduledAction API.
putScheduledUpdateGroupAction
in interface AmazonAutoScaling
putScheduledUpdateGroupActionRequest
- AlreadyExistsException
- You already have an Auto Scaling group or launch configuration with this name.LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public PutWarmPoolResult putWarmPool(PutWarmPoolRequest request)
Creates or updates a warm pool for the specified Auto Scaling group. A warm pool is a pool of pre-initialized EC2 instances that sits alongside the Auto Scaling group. Whenever your application needs to scale out, the Auto Scaling group can draw on the warm pool to meet its new desired capacity. For more information and example configurations, see Warm pools for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
This operation must be called from the Region in which the Auto Scaling group was created. This operation cannot be called on an Auto Scaling group that has a mixed instances policy or a launch template or launch configuration that requests Spot Instances.
You can view the instances in the warm pool using the DescribeWarmPool API call. If you are no longer using a warm pool, you can delete it by calling the DeleteWarmPool API.
putWarmPool
in interface AmazonAutoScaling
putWarmPoolRequest
- LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public RecordLifecycleActionHeartbeatResult recordLifecycleActionHeartbeat(RecordLifecycleActionHeartbeatRequest request)
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 the PutLifecycleHook API call.
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 Amazon EventBridge to invoke your Lambda function when Amazon EC2 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 Amazon EC2 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, send a callback by using the CompleteLifecycleAction API call.
For more information, see Amazon EC2 Auto Scaling lifecycle hooks in the Amazon EC2 Auto Scaling User Guide.
recordLifecycleActionHeartbeat
in interface AmazonAutoScaling
recordLifecycleActionHeartbeatRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public ResumeProcessesResult resumeProcesses(ResumeProcessesRequest request)
Resumes the specified suspended auto scaling processes, or all suspended process, for the specified Auto Scaling group.
For more information, see Suspending and resuming scaling processes in the Amazon EC2 Auto Scaling User Guide.
resumeProcesses
in interface AmazonAutoScaling
resumeProcessesRequest
- ResourceInUseException
- The operation can't be performed because the resource is in use.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public SetDesiredCapacityResult setDesiredCapacity(SetDesiredCapacityRequest request)
Sets the size of the specified Auto Scaling group.
If a scale-in activity occurs as a result of a new DesiredCapacity
value that is lower than the
current size of the group, the Auto Scaling group uses its termination policy to determine which instances to
terminate.
For more information, see Manual scaling in the Amazon EC2 Auto Scaling User Guide.
setDesiredCapacity
in interface AmazonAutoScaling
setDesiredCapacityRequest
- ScalingActivityInProgressException
- The operation can't be performed because there are scaling activities in progress.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public SetInstanceHealthResult setInstanceHealth(SetInstanceHealthRequest request)
Sets the health status of the specified instance.
For more information, see Health checks for Auto Scaling instances in the Amazon EC2 Auto Scaling User Guide.
setInstanceHealth
in interface AmazonAutoScaling
setInstanceHealthRequest
- ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public SetInstanceProtectionResult setInstanceProtection(SetInstanceProtectionRequest request)
Updates the instance protection settings of the specified instances. This operation cannot be called on instances in a warm pool.
For more information about preventing instances that are part of an Auto Scaling group from terminating on scale in, see Using instance scale-in protection in the Amazon EC2 Auto Scaling User Guide.
If you exceed your maximum limit of instance IDs, which is 50 per Auto Scaling group, the call fails.
setInstanceProtection
in interface AmazonAutoScaling
setInstanceProtectionRequest
- LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public StartInstanceRefreshResult startInstanceRefresh(StartInstanceRefreshRequest request)
Starts a new instance refresh operation. An instance refresh performs a rolling replacement of all or some instances in an Auto Scaling group. Each instance is terminated first and then replaced, which temporarily reduces the capacity available within your Auto Scaling group.
This operation is part of the instance refresh feature in Amazon EC2 Auto Scaling, which helps you update instances in your Auto Scaling group. This feature is helpful, for example, when you have a new AMI or a new user data script. You just need to create a new launch template that specifies the new AMI or user data script. Then start an instance refresh to immediately begin the process of updating instances in the group.
If the call succeeds, it creates a new instance refresh request with a unique ID that you can use to track its progress. To query its status, call the DescribeInstanceRefreshes API. To describe the instance refreshes that have already run, call the DescribeInstanceRefreshes API. To cancel an instance refresh operation in progress, use the CancelInstanceRefresh API.
startInstanceRefresh
in interface AmazonAutoScaling
startInstanceRefreshRequest
- LimitExceededException
- You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling
groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).InstanceRefreshInProgressException
- The request failed because an active instance refresh operation already exists for the specified Auto
Scaling group.public SuspendProcessesResult suspendProcesses(SuspendProcessesRequest request)
Suspends the specified auto scaling processes, or all processes, for the specified Auto Scaling group.
If you suspend either the Launch
or Terminate
process types, it can prevent other
process types from functioning properly. For more information, see Suspending and
resuming scaling processes in the Amazon EC2 Auto Scaling User Guide.
To resume processes that have been suspended, call the ResumeProcesses API.
suspendProcesses
in interface AmazonAutoScaling
suspendProcessesRequest
- ResourceInUseException
- The operation can't be performed because the resource is in use.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public TerminateInstanceInAutoScalingGroupResult terminateInstanceInAutoScalingGroup(TerminateInstanceInAutoScalingGroupRequest request)
Terminates the specified instance and optionally adjusts the desired group size. This operation cannot be called on instances in a warm pool.
This call simply makes a termination request. The instance is not terminated immediately. When an instance is
terminated, the instance status changes to terminated
. You can't connect to or start an instance
after you've terminated it.
If you do not specify the option to decrement the desired capacity, Amazon EC2 Auto Scaling launches instances to replace the ones that are terminated.
By default, Amazon EC2 Auto Scaling balances instances across all Availability Zones. If you decrement the desired capacity, your Auto Scaling group can become unbalanced between Availability Zones. Amazon EC2 Auto Scaling tries to rebalance the group, and rebalancing might terminate instances in other zones. For more information, see Rebalancing activities in the Amazon EC2 Auto Scaling User Guide.
terminateInstanceInAutoScalingGroup
in interface AmazonAutoScaling
terminateInstanceInAutoScalingGroupRequest
- ScalingActivityInProgressException
- The operation can't be performed because there are scaling activities in progress.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).public UpdateAutoScalingGroupResult updateAutoScalingGroup(UpdateAutoScalingGroupRequest request)
We strongly recommend that all Auto Scaling groups use launch templates to ensure full functionality for Amazon EC2 Auto Scaling and Amazon EC2.
Updates the configuration for the specified Auto Scaling group.
To update an Auto Scaling group, specify the name of the group and the parameter that you want to change. Any parameters that you don't specify are not changed by this update request. The new settings take effect on any scaling activities after this call returns.
If you associate a new launch configuration or template with an Auto Scaling group, all new instances will get the updated configuration. Existing instances continue to run with the configuration that they were originally launched with. When you update a group to specify a mixed instances policy instead of a launch configuration or template, existing instances may be replaced to match the new purchasing options that you specified in the policy. For example, if the group currently has 100% On-Demand capacity and the policy specifies 50% Spot capacity, this means that half of your instances will be gradually terminated and relaunched as Spot Instances. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the old ones, so that updating your group does not compromise the performance or availability of your application.
Note the following about changing DesiredCapacity
, MaxSize
, or MinSize
:
If a scale-in activity occurs as a result of a new DesiredCapacity
value that is lower than the
current size of the group, the Auto Scaling group uses its termination policy to determine which instances to
terminate.
If you specify a new value for MinSize
without specifying a value for DesiredCapacity
,
and the new MinSize
is larger than the current size of the group, this sets the group's
DesiredCapacity
to the new MinSize
value.
If you specify a new value for MaxSize
without specifying a value for DesiredCapacity
,
and the new MaxSize
is smaller than the current size of the group, this sets the group's
DesiredCapacity
to the new MaxSize
value.
To see which parameters have been set, call the DescribeAutoScalingGroups API. To view the scaling policies for an Auto Scaling group, call the DescribePolicies API. If the group has scaling policies, you can update them by calling the PutScalingPolicy API.
updateAutoScalingGroup
in interface AmazonAutoScaling
updateAutoScalingGroupRequest
- ScalingActivityInProgressException
- The operation can't be performed because there are scaling activities in progress.ResourceContentionException
- You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling
group, instance, or load balancer).ServiceLinkedRoleFailureException
- The service-linked role is not yet ready for use.public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
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 the request.
getCachedResponseMetadata
in interface AmazonAutoScaling
request
- The originally executed requestpublic AmazonAutoScalingWaiters waiters()
waiters
in interface AmazonAutoScaling
public void shutdown()
AmazonAutoScaling
shutdown
in interface AmazonAutoScaling
shutdown
in class AmazonWebServiceClient
Copyright © 2021. All rights reserved.