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 SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
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