All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.autoscaling.AmazonAutoScaling Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Auto Scaling module holds the client classes that are used for communicating with Auto Scaling Service

There is a newer version: 1.11.7
Show newest version
/*
 * Copyright 2011-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not
 * use this file except in compliance with the License. A copy of the License is
 * located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on
 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.amazonaws.services.autoscaling;

import com.amazonaws.*;
import com.amazonaws.regions.*;

import com.amazonaws.services.autoscaling.model.*;

/**
 * Interface for accessing Auto Scaling.
 * 

* Auto Scaling *

* Auto Scaling is designed to automatically launch or terminate EC2 instances * based on user-defined policies, schedules, and health checks. Use this * service in conjunction with the Amazon CloudWatch and Elastic Load Balancing * services. *

*/ public interface AmazonAutoScaling { /** * The region metadata service name for computing region endpoints. You can * use this value to retrieve metadata (such as supported regions) of the * service. * * @see RegionUtils#getRegionsForService(String) */ String ENDPOINT_PREFIX = "autoscaling"; /** * 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 {@link 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. * * @param 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. */ void setEndpoint(String endpoint); /** * An alternative to {@link AmazonAutoScaling#setEndpoint(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 {@link 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. * * @param region * The region this client will communicate with. See * {@link Region#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 Region#getRegion(com.amazonaws.regions.Regions) * @see Region#createClient(Class, * com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration) * @see Region#isServiceSupported(String) */ void setRegion(Region region); /** *

* 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. *

* * @param attachInstancesRequest * @return 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). * @sample AmazonAutoScaling.AttachInstances */ AttachInstancesResult attachInstances( AttachInstancesRequest attachInstancesRequest); /** *

* 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. *

* * @param attachLoadBalancersRequest * @return 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). * @sample AmazonAutoScaling.AttachLoadBalancers */ AttachLoadBalancersResult attachLoadBalancers( AttachLoadBalancersRequest attachLoadBalancersRequest); /** * Simplified method form for invoking the AttachLoadBalancers operation. * * @see #attachLoadBalancers(AttachLoadBalancersRequest) */ AttachLoadBalancersResult attachLoadBalancers(); /** *

* 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: *

*
    *
  1. (Optional) Create a Lambda function and a rule that allows CloudWatch * Events to invoke your Lambda function when Auto Scaling launches or * terminates instances.
  2. *
  3. (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.
  4. *
  5. Create the lifecycle hook. Specify whether the hook is used when the * instances launch or terminate.
  6. *
  7. If you need more time, record the lifecycle action heartbeat to keep * the instance in a pending state.
  8. *
  9. If you finish before the timeout period ends, complete the * lifecycle action.
  10. *
*

* For more information, see Auto Scaling Lifecycle in the Auto Scaling Developer Guide. *

* * @param completeLifecycleActionRequest * @return 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). * @sample AmazonAutoScaling.CompleteLifecycleAction */ CompleteLifecycleActionResult completeLifecycleAction( CompleteLifecycleActionRequest completeLifecycleActionRequest); /** *

* 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. *

* * @param createAutoScalingGroupRequest * @return Result of the CreateAutoScalingGroup operation returned by the * service. * @throws AlreadyExistsException * You already have an Auto Scaling group or launch configuration * with this name. * @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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.CreateAutoScalingGroup */ CreateAutoScalingGroupResult createAutoScalingGroup( CreateAutoScalingGroupRequest createAutoScalingGroupRequest); /** *

* 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. *

* * @param createLaunchConfigurationRequest * @return Result of the CreateLaunchConfiguration operation returned by the * service. * @throws AlreadyExistsException * You already have an Auto Scaling group or launch configuration * with this name. * @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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.CreateLaunchConfiguration */ CreateLaunchConfigurationResult createLaunchConfiguration( CreateLaunchConfigurationRequest createLaunchConfigurationRequest); /** *

* 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. *

* * @param createOrUpdateTagsRequest * @return 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. * @throws AlreadyExistsException * You already have an Auto Scaling group or launch configuration * with this name. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.CreateOrUpdateTags */ CreateOrUpdateTagsResult createOrUpdateTags( CreateOrUpdateTagsRequest createOrUpdateTagsRequest); /** *

* 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. *

* * @param deleteAutoScalingGroupRequest * @return 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. * @throws ResourceInUseException * The Auto Scaling group or launch configuration can't be deleted * because it is in use. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.DeleteAutoScalingGroup */ DeleteAutoScalingGroupResult deleteAutoScalingGroup( DeleteAutoScalingGroupRequest deleteAutoScalingGroupRequest); /** *

* 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. *

* * @param deleteLaunchConfigurationRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.DeleteLaunchConfiguration */ DeleteLaunchConfigurationResult deleteLaunchConfiguration( DeleteLaunchConfigurationRequest deleteLaunchConfigurationRequest); /** *

* Deletes the specified lifecycle hook. *

*

* If there are any outstanding lifecycle actions, they are completed first * (ABANDON for launching instances, CONTINUE for * terminating instances). *

* * @param deleteLifecycleHookRequest * @return 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). * @sample AmazonAutoScaling.DeleteLifecycleHook */ DeleteLifecycleHookResult deleteLifecycleHook( DeleteLifecycleHookRequest deleteLifecycleHookRequest); /** *

* Deletes the specified notification. *

* * @param deleteNotificationConfigurationRequest * @return 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). * @sample AmazonAutoScaling.DeleteNotificationConfiguration */ DeleteNotificationConfigurationResult deleteNotificationConfiguration( DeleteNotificationConfigurationRequest deleteNotificationConfigurationRequest); /** *

* 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. *

* * @param deletePolicyRequest * @return 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). * @sample AmazonAutoScaling.DeletePolicy */ DeletePolicyResult deletePolicy(DeletePolicyRequest deletePolicyRequest); /** *

* Deletes the specified scheduled action. *

* * @param deleteScheduledActionRequest * @return 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). * @sample AmazonAutoScaling.DeleteScheduledAction */ DeleteScheduledActionResult deleteScheduledAction( DeleteScheduledActionRequest deleteScheduledActionRequest); /** *

* Deletes the specified tags. *

* * @param deleteTagsRequest * @return 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). * @sample AmazonAutoScaling.DeleteTags */ DeleteTagsResult deleteTags(DeleteTagsRequest deleteTagsRequest); /** *

* 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. *

* * @param describeAccountLimitsRequest * @return 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). * @sample AmazonAutoScaling.DescribeAccountLimits */ DescribeAccountLimitsResult describeAccountLimits( DescribeAccountLimitsRequest describeAccountLimitsRequest); /** * Simplified method form for invoking the DescribeAccountLimits operation. * * @see #describeAccountLimits(DescribeAccountLimitsRequest) */ DescribeAccountLimitsResult describeAccountLimits(); /** *

* Describes the policy adjustment types for use with * PutScalingPolicy. *

* * @param describeAdjustmentTypesRequest * @return 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). * @sample AmazonAutoScaling.DescribeAdjustmentTypes */ DescribeAdjustmentTypesResult describeAdjustmentTypes( DescribeAdjustmentTypesRequest describeAdjustmentTypesRequest); /** * Simplified method form for invoking the DescribeAdjustmentTypes * operation. * * @see #describeAdjustmentTypes(DescribeAdjustmentTypesRequest) */ DescribeAdjustmentTypesResult describeAdjustmentTypes(); /** *

* Describes one or more Auto Scaling groups. If a list of names is not * provided, the call describes all Auto Scaling groups. *

* * @param describeAutoScalingGroupsRequest * @return Result of the DescribeAutoScalingGroups operation returned by the * service. * @throws InvalidNextTokenException * The NextToken value is not valid. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.DescribeAutoScalingGroups */ DescribeAutoScalingGroupsResult describeAutoScalingGroups( DescribeAutoScalingGroupsRequest describeAutoScalingGroupsRequest); /** * Simplified method form for invoking the DescribeAutoScalingGroups * operation. * * @see #describeAutoScalingGroups(DescribeAutoScalingGroupsRequest) */ DescribeAutoScalingGroupsResult describeAutoScalingGroups(); /** *

* Describes one or more Auto Scaling instances. If a list is not provided, * the call describes all instances. *

* * @param describeAutoScalingInstancesRequest * @return Result of the DescribeAutoScalingInstances operation returned by * the service. * @throws InvalidNextTokenException * The NextToken value is not valid. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.DescribeAutoScalingInstances */ DescribeAutoScalingInstancesResult describeAutoScalingInstances( DescribeAutoScalingInstancesRequest describeAutoScalingInstancesRequest); /** * Simplified method form for invoking the DescribeAutoScalingInstances * operation. * * @see #describeAutoScalingInstances(DescribeAutoScalingInstancesRequest) */ DescribeAutoScalingInstancesResult describeAutoScalingInstances(); /** *

* Describes the notification types that are supported by Auto Scaling. *

* * @param describeAutoScalingNotificationTypesRequest * @return 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). * @sample AmazonAutoScaling.DescribeAutoScalingNotificationTypes */ DescribeAutoScalingNotificationTypesResult describeAutoScalingNotificationTypes( DescribeAutoScalingNotificationTypesRequest describeAutoScalingNotificationTypesRequest); /** * Simplified method form for invoking the * DescribeAutoScalingNotificationTypes operation. * * @see #describeAutoScalingNotificationTypes(DescribeAutoScalingNotificationTypesRequest) */ DescribeAutoScalingNotificationTypesResult describeAutoScalingNotificationTypes(); /** *

* Describes one or more launch configurations. If you omit the list of * names, then the call describes all launch configurations. *

* * @param describeLaunchConfigurationsRequest * @return Result of the DescribeLaunchConfigurations operation returned by * the service. * @throws InvalidNextTokenException * The NextToken value is not valid. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.DescribeLaunchConfigurations */ DescribeLaunchConfigurationsResult describeLaunchConfigurations( DescribeLaunchConfigurationsRequest describeLaunchConfigurationsRequest); /** * Simplified method form for invoking the DescribeLaunchConfigurations * operation. * * @see #describeLaunchConfigurations(DescribeLaunchConfigurationsRequest) */ DescribeLaunchConfigurationsResult describeLaunchConfigurations(); /** *

* Describes the available types of lifecycle hooks. *

* * @param describeLifecycleHookTypesRequest * @return 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). * @sample AmazonAutoScaling.DescribeLifecycleHookTypes */ DescribeLifecycleHookTypesResult describeLifecycleHookTypes( DescribeLifecycleHookTypesRequest describeLifecycleHookTypesRequest); /** * Simplified method form for invoking the DescribeLifecycleHookTypes * operation. * * @see #describeLifecycleHookTypes(DescribeLifecycleHookTypesRequest) */ DescribeLifecycleHookTypesResult describeLifecycleHookTypes(); /** *

* Describes the lifecycle hooks for the specified Auto Scaling group. *

* * @param describeLifecycleHooksRequest * @return 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). * @sample AmazonAutoScaling.DescribeLifecycleHooks */ DescribeLifecycleHooksResult describeLifecycleHooks( DescribeLifecycleHooksRequest describeLifecycleHooksRequest); /** *

* Describes the load balancers for the specified Auto Scaling group. *

* * @param describeLoadBalancersRequest * @return 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). * @sample AmazonAutoScaling.DescribeLoadBalancers */ DescribeLoadBalancersResult describeLoadBalancers( DescribeLoadBalancersRequest describeLoadBalancersRequest); /** *

* 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. *

* * @param describeMetricCollectionTypesRequest * @return 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). * @sample AmazonAutoScaling.DescribeMetricCollectionTypes */ DescribeMetricCollectionTypesResult describeMetricCollectionTypes( DescribeMetricCollectionTypesRequest describeMetricCollectionTypesRequest); /** * Simplified method form for invoking the DescribeMetricCollectionTypes * operation. * * @see #describeMetricCollectionTypes(DescribeMetricCollectionTypesRequest) */ DescribeMetricCollectionTypesResult describeMetricCollectionTypes(); /** *

* Describes the notification actions associated with the specified Auto * Scaling group. *

* * @param describeNotificationConfigurationsRequest * @return Result of the DescribeNotificationConfigurations operation * returned by the service. * @throws InvalidNextTokenException * The NextToken value is not valid. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.DescribeNotificationConfigurations */ DescribeNotificationConfigurationsResult describeNotificationConfigurations( DescribeNotificationConfigurationsRequest describeNotificationConfigurationsRequest); /** * Simplified method form for invoking the * DescribeNotificationConfigurations operation. * * @see #describeNotificationConfigurations(DescribeNotificationConfigurationsRequest) */ DescribeNotificationConfigurationsResult describeNotificationConfigurations(); /** *

* Describes the policies for the specified Auto Scaling group. *

* * @param describePoliciesRequest * @return Result of the DescribePolicies operation returned by the service. * @throws InvalidNextTokenException * The NextToken value is not valid. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.DescribePolicies */ DescribePoliciesResult describePolicies( DescribePoliciesRequest describePoliciesRequest); /** * Simplified method form for invoking the DescribePolicies operation. * * @see #describePolicies(DescribePoliciesRequest) */ DescribePoliciesResult describePolicies(); /** *

* 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. *

* * @param describeScalingActivitiesRequest * @return Result of the DescribeScalingActivities operation returned by the * service. * @throws InvalidNextTokenException * The NextToken value is not valid. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.DescribeScalingActivities */ DescribeScalingActivitiesResult describeScalingActivities( DescribeScalingActivitiesRequest describeScalingActivitiesRequest); /** * Simplified method form for invoking the DescribeScalingActivities * operation. * * @see #describeScalingActivities(DescribeScalingActivitiesRequest) */ DescribeScalingActivitiesResult describeScalingActivities(); /** *

* Describes the scaling process types for use with ResumeProcesses * and SuspendProcesses. *

* * @param describeScalingProcessTypesRequest * @return 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). * @sample AmazonAutoScaling.DescribeScalingProcessTypes */ DescribeScalingProcessTypesResult describeScalingProcessTypes( DescribeScalingProcessTypesRequest describeScalingProcessTypesRequest); /** * Simplified method form for invoking the DescribeScalingProcessTypes * operation. * * @see #describeScalingProcessTypes(DescribeScalingProcessTypesRequest) */ DescribeScalingProcessTypesResult describeScalingProcessTypes(); /** *

* Describes the actions scheduled for your Auto Scaling group that haven't * run. To describe the actions that have already run, use * DescribeScalingActivities. *

* * @param describeScheduledActionsRequest * @return Result of the DescribeScheduledActions operation returned by the * service. * @throws InvalidNextTokenException * The NextToken value is not valid. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.DescribeScheduledActions */ DescribeScheduledActionsResult describeScheduledActions( DescribeScheduledActionsRequest describeScheduledActionsRequest); /** * Simplified method form for invoking the DescribeScheduledActions * operation. * * @see #describeScheduledActions(DescribeScheduledActionsRequest) */ DescribeScheduledActionsResult describeScheduledActions(); /** *

* 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. *

* * @param describeTagsRequest * @return Result of the DescribeTags operation returned by the service. * @throws InvalidNextTokenException * The NextToken value is not valid. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.DescribeTags */ DescribeTagsResult describeTags(DescribeTagsRequest describeTagsRequest); /** * Simplified method form for invoking the DescribeTags operation. * * @see #describeTags(DescribeTagsRequest) */ DescribeTagsResult describeTags(); /** *

* Describes the termination policies supported by Auto Scaling. *

* * @param describeTerminationPolicyTypesRequest * @return 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). * @sample AmazonAutoScaling.DescribeTerminationPolicyTypes */ DescribeTerminationPolicyTypesResult describeTerminationPolicyTypes( DescribeTerminationPolicyTypesRequest describeTerminationPolicyTypesRequest); /** * Simplified method form for invoking the DescribeTerminationPolicyTypes * operation. * * @see #describeTerminationPolicyTypes(DescribeTerminationPolicyTypesRequest) */ DescribeTerminationPolicyTypesResult describeTerminationPolicyTypes(); /** *

* 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. *

* * @param detachInstancesRequest * @return 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). * @sample AmazonAutoScaling.DetachInstances */ DetachInstancesResult detachInstances( DetachInstancesRequest detachInstancesRequest); /** *

* 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. *

* * @param detachLoadBalancersRequest * @return 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). * @sample AmazonAutoScaling.DetachLoadBalancers */ DetachLoadBalancersResult detachLoadBalancers( DetachLoadBalancersRequest detachLoadBalancersRequest); /** * Simplified method form for invoking the DetachLoadBalancers operation. * * @see #detachLoadBalancers(DetachLoadBalancersRequest) */ DetachLoadBalancersResult detachLoadBalancers(); /** *

* Disables monitoring of the specified metrics for the specified Auto * Scaling group. *

* * @param disableMetricsCollectionRequest * @return 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). * @sample AmazonAutoScaling.DisableMetricsCollection */ DisableMetricsCollectionResult disableMetricsCollection( DisableMetricsCollectionRequest disableMetricsCollectionRequest); /** *

* Enables monitoring of the specified metrics for the specified Auto * Scaling group. *

*

* You can only enable metrics collection if InstanceMonitoring * in the launch configuration for the group is set to True. *

* * @param enableMetricsCollectionRequest * @return 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). * @sample AmazonAutoScaling.EnableMetricsCollection */ EnableMetricsCollectionResult enableMetricsCollection( EnableMetricsCollectionRequest enableMetricsCollectionRequest); /** *

* Moves the specified instances into Standby mode. *

*

* For more information, see Auto Scaling Lifecycle in the Auto Scaling Developer Guide. *

* * @param enterStandbyRequest * @return 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). * @sample AmazonAutoScaling.EnterStandby */ EnterStandbyResult enterStandby(EnterStandbyRequest enterStandbyRequest); /** *

* Executes the specified policy. *

* * @param executePolicyRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.ExecutePolicy */ ExecutePolicyResult executePolicy(ExecutePolicyRequest executePolicyRequest); /** *

* Moves the specified instances out of Standby mode. *

*

* For more information, see Auto Scaling Lifecycle in the Auto Scaling Developer Guide. *

* * @param exitStandbyRequest * @return 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). * @sample AmazonAutoScaling.ExitStandby */ ExitStandbyResult exitStandby(ExitStandbyRequest exitStandbyRequest); /** *

* 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: *

*
    *
  1. (Optional) Create a Lambda function and a rule that allows CloudWatch * Events to invoke your Lambda function when Auto Scaling launches or * terminates instances.
  2. *
  3. (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.
  4. *
  5. Create the lifecycle hook. Specify whether the hook is used when * the instances launch or terminate.
  6. *
  7. If you need more time, record the lifecycle action heartbeat to keep * the instance in a pending state.
  8. *
  9. If you finish before the timeout period ends, complete the lifecycle * action.
  10. *
*

* 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. *

* * @param putLifecycleHookRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.PutLifecycleHook */ PutLifecycleHookResult putLifecycleHook( PutLifecycleHookRequest putLifecycleHookRequest); /** *

* 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. *

* * @param putNotificationConfigurationRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.PutNotificationConfiguration */ PutNotificationConfigurationResult putNotificationConfiguration( PutNotificationConfigurationRequest putNotificationConfigurationRequest); /** *

* 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. *

* * @param putScalingPolicyRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.PutScalingPolicy */ PutScalingPolicyResult putScalingPolicy( PutScalingPolicyRequest putScalingPolicyRequest); /** *

* 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. *

* * @param putScheduledUpdateGroupActionRequest * @return Result of the PutScheduledUpdateGroupAction operation returned by * the service. * @throws AlreadyExistsException * You already have an Auto Scaling group or launch configuration * with this name. * @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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.PutScheduledUpdateGroupAction */ PutScheduledUpdateGroupActionResult putScheduledUpdateGroupAction( PutScheduledUpdateGroupActionRequest putScheduledUpdateGroupActionRequest); /** *

* 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: *

*
    *
  1. (Optional) Create a Lambda function and a rule that allows CloudWatch * Events to invoke your Lambda function when Auto Scaling launches or * terminates instances.
  2. *
  3. (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.
  4. *
  5. Create the lifecycle hook. Specify whether the hook is used when the * instances launch or terminate.
  6. *
  7. If you need more time, record the lifecycle action heartbeat to * keep the instance in a pending state.
  8. *
  9. If you finish before the timeout period ends, complete the lifecycle * action.
  10. *
*

* For more information, see Auto Scaling Lifecycle in the Auto Scaling Developer Guide. *

* * @param recordLifecycleActionHeartbeatRequest * @return 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). * @sample AmazonAutoScaling.RecordLifecycleActionHeartbeat */ RecordLifecycleActionHeartbeatResult recordLifecycleActionHeartbeat( RecordLifecycleActionHeartbeatRequest recordLifecycleActionHeartbeatRequest); /** *

* 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. *

* * @param resumeProcessesRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.ResumeProcesses */ ResumeProcessesResult resumeProcesses( ResumeProcessesRequest resumeProcessesRequest); /** *

* 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. *

* * @param setDesiredCapacityRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.SetDesiredCapacity */ SetDesiredCapacityResult setDesiredCapacity( SetDesiredCapacityRequest setDesiredCapacityRequest); /** *

* Sets the health status of the specified instance. *

*

* For more information, see Health Checks in the Auto Scaling Developer Guide. *

* * @param setInstanceHealthRequest * @return 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). * @sample AmazonAutoScaling.SetInstanceHealth */ SetInstanceHealthResult setInstanceHealth( SetInstanceHealthRequest setInstanceHealthRequest); /** *

* Updates the instance protection settings of the specified instances. *

*

* For more information, see Instance Protection in the Auto Scaling Developer Guide. *

* * @param setInstanceProtectionRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.SetInstanceProtection */ SetInstanceProtectionResult setInstanceProtection( SetInstanceProtectionRequest setInstanceProtectionRequest); /** *

* Suspends the specified Auto Scaling processes, or all processes, for the * specified Auto Scaling group. *

*

* Note that if you suspend either the Launch or * Terminate process types, it can prevent other process types * from functioning properly. *

*

* To resume processes that have been suspended, use ResumeProcesses. *

*

* For more information, see Suspending and Resuming Auto Scaling Processes in the Auto * Scaling Developer Guide. *

* * @param suspendProcessesRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.SuspendProcesses */ SuspendProcessesResult suspendProcesses( SuspendProcessesRequest suspendProcessesRequest); /** *

* Terminates the specified instance and optionally adjusts the desired * group size. *

*

* This call simply makes a termination request. The instance is not * terminated immediately. *

* * @param terminateInstanceInAutoScalingGroupRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.TerminateInstanceInAutoScalingGroup */ TerminateInstanceInAutoScalingGroupResult terminateInstanceInAutoScalingGroup( TerminateInstanceInAutoScalingGroupRequest terminateInstanceInAutoScalingGroupRequest); /** *

* Updates the configuration for the specified Auto Scaling group. *

*

* To update an Auto Scaling group with a launch configuration with * InstanceMonitoring set to False, you must first * disable the collection of group metrics. Otherwise, you will get an * error. If you have previously enabled the collection of group metrics, * you can disable it using DisableMetricsCollection. *

*

* The new settings are registered upon the completion of this call. Any * launch configuration settings take effect on any triggers after this call * returns. Scaling activities that are currently in progress aren't * affected. *

*

* Note the following: *

*
    *
  • *

    * If you specify a new value for MinSize without specifying a * value for DesiredCapacity, and the new MinSize * is larger than the current size of the group, we implicitly call * SetDesiredCapacity to set the size of the group to the new value * of MinSize. *

    *
  • *
  • *

    * 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, we implicitly call * SetDesiredCapacity to set the size of the group to the new value * of MaxSize. *

    *
  • *
  • *

    * All other optional parameters are left unchanged if not specified. *

    *
  • *
* * @param updateAutoScalingGroupRequest * @return 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. * @throws ResourceContentionException * You already have a pending update to an Auto Scaling resource * (for example, a group, instance, or load balancer). * @sample AmazonAutoScaling.UpdateAutoScalingGroup */ UpdateAutoScalingGroupResult updateAutoScalingGroup( UpdateAutoScalingGroupRequest updateAutoScalingGroupRequest); /** * 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. */ void shutdown(); /** * 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. * * @param request * The originally executed request. * * @return The response metadata for the specified request, or null if none * is available. */ ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy