Implementation for accessing AmazonAutoScaling. Auto Scaling

This is the Auto Scaling API Reference . This guide provides detailed information about Auto Scaling actions, data types, parameters, and errors. For detailed information about Auto Scaling features and their associated API calls, go to the Auto Scaling Developer Guide.

Auto Scaling is a web service designed to automatically launch or terminate Amazon Elastic Compute Cloud (Amazon EC2) instances based on user-defined policies, schedules, and health checks. This service is used in conjunction with Amazon CloudWatch and Elastic Load Balancing services.

This reference is based on the current WSDL, which is available at:

http://autoscaling.amazonaws.com/doc/2011-01-01/AutoScaling.wsdl

Endpoints

For information about this product's regions and endpoints, go to Regions and Endpoints in the Amazon Web Services General Reference.

Namespace: Amazon.AutoScaling
Assembly: AWSSDK (in AWSSDK.dll) Version: 1.4.2.0 (1.4.2.0)

Syntax

         
 C#  Visual Basic  Visual C++ 
public class AmazonAutoScalingClient : AmazonWebServiceClient, 
	AmazonAutoScaling, IDisposable
Public Class AmazonAutoScalingClient _
	Inherits AmazonWebServiceClient _
	Implements AmazonAutoScaling, IDisposable
public ref class AmazonAutoScalingClient : public AmazonWebServiceClient, 
	AmazonAutoScaling, IDisposable

Members

         
 All Members  Constructors   Methods  
 Public

 Protected
 Instance

 Static 
 Declared

 Inherited
 XNA Framework Only 

 .NET Compact Framework Only 

 MemberDescription
AmazonAutoScalingClient()()()()
Constructs AmazonAutoScalingClient with the credentials defined in the App.config. Example App.config with credentials set.
CopyC#
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add key="AWSAccessKey" value="********************"/>
        <add key="AWSSecretKey" value="****************************************"/>
    </appSettings>
</configuration>
AmazonAutoScalingClient(AmazonAutoScalingConfig)
Constructs AmazonAutoScalingClient with the credentials defined in the App.config. Example App.config with credentials set.
CopyC#
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add key="AWSAccessKey" value="********************"/>
        <add key="AWSSecretKey" value="****************************************"/>
    </appSettings>
</configuration>
AmazonAutoScalingClient(AWSCredentials)
Constructs AmazonAutoScalingClient with AWS Credentials
AmazonAutoScalingClient(String, String)
Constructs AmazonAutoScalingClient with AWS Access Key ID and AWS Secret Key
AmazonAutoScalingClient(AWSCredentials, AmazonAutoScalingConfig)
Constructs AmazonAutoScalingClient with AWS Credentials and an AmazonAutoScalingClient Configuration object.
AmazonAutoScalingClient(String, String, AmazonAutoScalingConfig)
Constructs AmazonAutoScalingClient with AWS Access Key ID, AWS Secret Key and an AmazonAutoScalingClient Configuration object. If the config object's UseSecureStringForAwsSecretKey is false, the AWS Secret Key is stored as a clear-text string. Please use this option only if the application environment doesn't allow the use of SecureStrings.
CreateAutoScalingGroup(CreateAutoScalingGroupRequest)

Creates a new Auto Scaling group with the specified name and other attributes. When the creation request is completed, the Auto Scaling group is ready to be used in other calls.

NOTE: The Auto Scaling group name must be unique within the scope of your AWS account, and under the quota of Auto Scaling groups allowed for your account.

CreateLaunchConfiguration(CreateLaunchConfigurationRequest)

Creates a new launch configuration. The launch configuration name must be unique within the scope of the client's AWS account. The maximum limit of launch configurations, which by default is 100, must not yet have been met; otherwise, the call will fail. When created, the new launch configuration is available for immediate use.

You can create a launch configuration with Amazon EC2 security groups or with Amazon VPC security groups. However, you can't use Amazon EC2 security groups together with Amazon VPC security groups, or vice versa.

NOTE: At this time, Auto Scaling launch configurations don't support compressed (e.g. zipped) user data files.

CreateOrUpdateTags(CreateOrUpdateTagsRequest)

Creates new tags or updates existing tags for an Auto Scaling group.

NOTE: A tag's definition is composed of a resource ID, resource type, key and value, and the propagate flag. Value and the propagate flag are optional parameters. See the Request Parameters for more information.

DeleteAutoScalingGroup(DeleteAutoScalingGroupRequest)

Deletes the specified Auto Scaling group if the group has no instances and no scaling activities in progress.

NOTE: To remove all instances before calling DeleteAutoScalingGroup, you can call UpdateAutoScalingGroup to set the minimum and maximum size of the AutoScalingGroup to zero.

DeleteLaunchConfiguration(DeleteLaunchConfigurationRequest)

Deletes the specified LaunchConfiguration.

The specified launch configuration must not be attached to an Auto Scaling group. When this call completes, the launch configuration is no longer available for use.

DeleteNotificationConfiguration(DeleteNotificationConfigurationRequest)

Deletes notifications created by PutNotificationConfiguration.

DeletePolicy(DeletePolicyRequest)

Deletes a policy created by PutScalingPolicy.

DeleteScheduledAction(DeleteScheduledActionRequest)

Deletes a scheduled action previously created using the PutScheduledUpdateGroupAction.

DeleteTags(DeleteTagsRequest)

Removes the specified tags or a set of tags from a set of resources.

DescribeAdjustmentTypes()()()()

Returns policy adjustment types for use in the PutScalingPolicy action.

DescribeAdjustmentTypes(DescribeAdjustmentTypesRequest)

Returns policy adjustment types for use in the PutScalingPolicy action.

DescribeAutoScalingGroups()()()()

Returns a full description of each Auto Scaling group in the given list. This includes all Amazon EC2 instances that are members of the group. If a list of names is not provided, the service returns the full details of all Auto Scaling groups.

This action supports pagination by returning a token if there are more pages to retrieve. To get the next page, call this action again with the returned token as the NextToken parameter.

DescribeAutoScalingGroups(DescribeAutoScalingGroupsRequest)

Returns a full description of each Auto Scaling group in the given list. This includes all Amazon EC2 instances that are members of the group. If a list of names is not provided, the service returns the full details of all Auto Scaling groups.

This action supports pagination by returning a token if there are more pages to retrieve. To get the next page, call this action again with the returned token as the NextToken parameter.

DescribeAutoScalingInstances()()()()

Returns a description of each Auto Scaling instance in the InstanceIds list. If a list is not provided, the service returns the full details of all instances up to a maximum of 50. By default, the service returns a list of 20 items.

This action supports pagination by returning a token if there are more pages to retrieve. To get the next page, call this action again with the returned token as the NextToken parameter.

DescribeAutoScalingInstances(DescribeAutoScalingInstancesRequest)

Returns a description of each Auto Scaling instance in the InstanceIds list. If a list is not provided, the service returns the full details of all instances up to a maximum of 50. By default, the service returns a list of 20 items.

This action supports pagination by returning a token if there are more pages to retrieve. To get the next page, call this action again with the returned token as the NextToken parameter.

DescribeAutoScalingNotificationTypes()()()()

Returns a list of all notification types that are supported by Auto Scaling.

DescribeAutoScalingNotificationTypes(DescribeAutoScalingNotificationTypesRequest)

Returns a list of all notification types that are supported by Auto Scaling.

DescribeLaunchConfigurations()()()()

Returns a full description of the launch configurations, or the specified launch configurations, if they exist.

If no name is specified, then the full details of all launch configurations are returned.

DescribeLaunchConfigurations(DescribeLaunchConfigurationsRequest)

Returns a full description of the launch configurations, or the specified launch configurations, if they exist.

If no name is specified, then the full details of all launch configurations are returned.

DescribeMetricCollectionTypes()()()()

Returns a list of metrics and a corresponding list of granularities for each metric.

DescribeMetricCollectionTypes(DescribeMetricCollectionTypesRequest)

Returns a list of metrics and a corresponding list of granularities for each metric.

DescribeNotificationConfigurations()()()()

Returns a list of notification actions associated with Auto Scaling groups for specified events.

DescribeNotificationConfigurations(DescribeNotificationConfigurationsRequest)

Returns a list of notification actions associated with Auto Scaling groups for specified events.

DescribePolicies()()()()

Returns descriptions of what each policy does. This action supports pagination. If the response includes a token, there are more records available. To get the additional records, repeat the request with the response token as the NextToken parameter.

DescribePolicies(DescribePoliciesRequest)

Returns descriptions of what each policy does. This action supports pagination. If the response includes a token, there are more records available. To get the additional records, repeat the request with the response token as the NextToken parameter.

DescribeScalingActivities()()()()

Returns the scaling activities for the specified Auto Scaling group.

If the specified ActivityIds list is empty, all the activities from the past six weeks are returned. Activities are sorted by completion time. Activities still in progress appear first on the list.

This action supports pagination. If the response includes a token, there are more records available. To get the additional records, repeat the request with the response token as the NextToken parameter.

DescribeScalingActivities(DescribeScalingActivitiesRequest)

Returns the scaling activities for the specified Auto Scaling group.

If the specified ActivityIds list is empty, all the activities from the past six weeks are returned. Activities are sorted by completion time. Activities still in progress appear first on the list.

This action supports pagination. If the response includes a token, there are more records available. To get the additional records, repeat the request with the response token as the NextToken parameter.

DescribeScalingProcessTypes()()()()

Returns scaling process types for use in the ResumeProcesses and SuspendProcesses actions.

DescribeScalingProcessTypes(DescribeScalingProcessTypesRequest)

Returns scaling process types for use in the ResumeProcesses and SuspendProcesses actions.

DescribeScheduledActions()()()()

Lists all the actions scheduled for your Auto Scaling group that haven't been executed. To see a list of actions already executed, see the activity record returned in DescribeScalingActivities.

DescribeScheduledActions(DescribeScheduledActionsRequest)

Lists all the actions scheduled for your Auto Scaling group that haven't been executed. To see a list of actions already executed, see the activity record returned in DescribeScalingActivities.

DescribeTags()()()()

Lists the Auto Scaling group tags.

You can use filters to limit results when describing tags. For example, you can query for tags of a particular 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 your filters. If there's no match, no special message is returned.

DescribeTags(DescribeTagsRequest)

Lists the Auto Scaling group tags.

You can use filters to limit results when describing tags. For example, you can query for tags of a particular 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 your filters. If there's no match, no special message is returned.

DisableMetricsCollection(DisableMetricsCollectionRequest)

Disables monitoring of group metrics for the Auto Scaling group specified in AutoScalingGroupName . You can specify the list of affected metrics with the Metrics parameter.

Dispose()()()()
Disposes of all managed and unmanaged resources.
(Inherited from AmazonWebServiceClient.)
EnableMetricsCollection(EnableMetricsCollectionRequest)

Enables monitoring of group metrics for the Auto Scaling group specified in AutoScalingGroupName . You can specify the list of enabled metrics with the Metrics parameter.

Auto scaling metrics collection can be turned on only if the InstanceMonitoring flag, in the Auto Scaling group's launch configuration, is set to True .

Equals(Object)
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
ExecutePolicy(ExecutePolicyRequest)

Runs the policy you create for your Auto Scaling group in PutScalingPolicy.

GetHashCode()()()()
Serves as a hash function for a particular type.
(Inherited from Object.)
GetType()()()()
Gets the Type of the current instance.
(Inherited from Object.)
PutNotificationConfiguration(PutNotificationConfigurationRequest)

Configures an Auto Scaling group to send notifications when specified events take place. Subscribers to this topic can have messages for events delivered to an endpoint such as a web server or email address.

A new PutNotificationConfiguration overwrites an existing configuration.

PutScalingPolicy(PutScalingPolicyRequest)

Creates or updates a policy for an Auto Scaling group. To update an existing policy, use the existing policy name and set the parameter(s) you want to change. Any existing parameter not changed in an update to an existing policy is not changed in this update request.

PutScheduledUpdateGroupAction(PutScheduledUpdateGroupActionRequest)

Creates a scheduled scaling action for an Auto Scaling group. If you leave a parameter unspecified, the corresponding value remains unchanged in the affected Auto Scaling group.

ResumeProcesses(ResumeProcessesRequest)

Resumes Auto Scaling processes for an Auto Scaling group. For more information, see SuspendProcesses and ProcessType.

SetDesiredCapacity(SetDesiredCapacityRequest)

Adjusts the desired size of the AutoScalingGroup by initiating scaling activities. When reducing the size of the group, it is not possible to define which Amazon EC2 instances will be terminated. This applies to any Auto Scaling decisions that might result in terminating instances.

There are two common use cases for SetDesiredCapacity : one for users of the Auto Scaling triggering system, and another for developers who write their own triggering systems. Both use cases relate to the concept of cooldown.

In the first case, if you use the Auto Scaling triggering system, SetDesiredCapacity changes the size of your Auto Scaling group without regard to the cooldown period. This could be useful, for example, if Auto Scaling did something unexpected for some reason. If your cooldown period is 10 minutes, Auto Scaling would normally reject requests to change the size of the group for that entire 10-minute period. The SetDesiredCapacity command allows you to circumvent this restriction and change the size of the group before the end of the cooldown period.

In the second case, if you write your own triggering system, you can use SetDesiredCapacity to control the size of your Auto Scaling group. If you want the same cooldown functionality that Auto Scaling offers, you can configure SetDesiredCapacity to honor cooldown by setting the HonorCooldown parameter to true .

SetInstanceHealth(SetInstanceHealthRequest)

Sets the health status of an instance.

SuspendProcesses(SuspendProcessesRequest)

Suspends Auto Scaling processes for an Auto Scaling group. To suspend specific process types, specify them by name with the ScalingProcesses.member.N parameter. To suspend all process types, omit the ScalingProcesses.member.N parameter.

IMPORTANT: Suspending either of the two primary process types, Launch or Terminate, can prevent other process types from functioning properly. For more information about processes and their dependencies, see ProcessType.

To resume processes that have been suspended, use ResumeProcesses.

TerminateInstanceInAutoScalingGroup(TerminateInstanceInAutoScalingGroupRequest)

Terminates the specified instance. Optionally, the desired group size can be adjusted.

NOTE: This call simply registers a termination request. The termination of the instance cannot happen immediately.

ToString()()()()
Returns a String that represents the current Object.
(Inherited from Object.)
UpdateAutoScalingGroup(UpdateAutoScalingGroupRequest)

Updates the configuration for the specified AutoScalingGroup.

NOTE: To update an Auto Scaling group with a launch configuration that has the InstanceMonitoring flag set to False, you must first ensure that collection of group metrics is disabled. Otherwise, calls to UpdateAutoScalingGroup will fail. If you have previously enabled group metrics collection, you can disable collection of all group metrics by calling 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. Triggers that are currently in progress aren't affected.

NOTE: If the new values are specified for the MinSize or MaxSize parameters, then there will be an implicit call to SetDesiredCapacity to set the group to the new MaxSize. All optional parameters are left unchanged if not passed in the request.

Inheritance Hierarchy

System..::..Object
  Amazon.Runtime..::..AmazonWebServiceClient
    Amazon.AutoScaling..::..AmazonAutoScalingClient

See Also