The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Paws::AutoScaling - Perl Interface to AWS Auto Scaling

SYNOPSIS

  use Paws;

  my $obj = Paws->service('...')->new;
  my $res = $obj->Method(Arg1 => $val1, Arg2 => $val2);

DESCRIPTION

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.

METHODS

AttachInstances()

  Arguments described in: L<Paws::AutoScaling::AttachInstances>

  Returns: nothing

  

Attaches one or more EC2 instances to the specified Auto Scaling group.

For more information, see Attach Amazon EC2 Instances to Your Existing Auto Scaling Group in the Auto Scaling Developer Guide.

CompleteLifecycleAction()

  Arguments described in: L<Paws::AutoScaling::CompleteLifecycleAction>

  Returns: L<Paws::AutoScaling::CompleteLifecycleActionAnswer>

  

Completes the lifecycle action for the associated token initiated under the given lifecycle hook with the specified result.

This operation is a part of the basic sequence for adding a lifecycle hook to an Auto Scaling group:

1. Create a notification target. A target can be either an Amazon SQS queue or an Amazon SNS topic.
2. Create an IAM role. This role allows Auto Scaling to publish lifecycle notifications to the designated SQS queue or SNS topic.
3. Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate.
4. If necessary, record the lifecycle action heartbeat to keep the instance in a pending state.
5. Complete the lifecycle action.

For more information, see Auto Scaling Pending State and Auto Scaling Terminating State in the Auto Scaling Developer Guide.

CreateAutoScalingGroup()

  Arguments described in: L<Paws::AutoScaling::CreateAutoScalingGroup>

  Returns: nothing

  

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 these limits, see DescribeAccountLimits.

CreateLaunchConfiguration()

  Arguments described in: L<Paws::AutoScaling::CreateLaunchConfiguration>

  Returns: nothing

  

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 these limits, see DescribeAccountLimits.

CreateOrUpdateTags()

  Arguments described in: L<Paws::AutoScaling::CreateOrUpdateTags>

  Returns: nothing

  

Creates or updates tags for the specified Auto Scaling group.

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.

For more information, see Add, Modify, or Remove Auto Scaling Group Tags in the Auto Scaling Developer Guide.

DeleteAutoScalingGroup()

  Arguments described in: L<Paws::AutoScaling::DeleteAutoScalingGroup>

  Returns: nothing

  

Deletes the specified Auto Scaling group.

The group must have no instances and no scaling activities in progress.

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

DeleteLaunchConfiguration()

  Arguments described in: L<Paws::AutoScaling::DeleteLaunchConfiguration>

  Returns: nothing

  

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.

DeleteLifecycleHook()

  Arguments described in: L<Paws::AutoScaling::DeleteLifecycleHook>

  Returns: L<Paws::AutoScaling::DeleteLifecycleHookAnswer>

  

Deletes the specified lifecycle hook.

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

DeleteNotificationConfiguration()

  Arguments described in: L<Paws::AutoScaling::DeleteNotificationConfiguration>

  Returns: nothing

  

Deletes the specified notification.

DeletePolicy()

  Arguments described in: L<Paws::AutoScaling::DeletePolicy>

  Returns: nothing

  

Deletes the specified Auto Scaling policy.

DeleteScheduledAction()

  Arguments described in: L<Paws::AutoScaling::DeleteScheduledAction>

  Returns: nothing

  

Deletes the specified scheduled action.

DeleteTags()

  Arguments described in: L<Paws::AutoScaling::DeleteTags>

  Returns: nothing

  

Deletes the specified tags.

DescribeAccountLimits()

  Arguments described in: L<Paws::AutoScaling::DescribeAccountLimits>

  Returns: L<Paws::AutoScaling::DescribeAccountLimitsAnswer>

  

Describes the current Auto Scaling resource limits for your AWS account.

For information about requesting an increase in these limits, see AWS Service Limits.

DescribeAdjustmentTypes()

  Arguments described in: L<Paws::AutoScaling::DescribeAdjustmentTypes>

  Returns: L<Paws::AutoScaling::DescribeAdjustmentTypesAnswer>

  

Lists the policy adjustment types for use with PutScalingPolicy.

DescribeAutoScalingGroups()

  Arguments described in: L<Paws::AutoScaling::DescribeAutoScalingGroups>

  Returns: L<Paws::AutoScaling::AutoScalingGroupsType>

  

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

You can specify a maximum number of items to be returned with a single call. If there are more items to return, the call returns a token. To get the next set of items, repeat the call with the returned token in the NextToken parameter.

DescribeAutoScalingInstances()

  Arguments described in: L<Paws::AutoScaling::DescribeAutoScalingInstances>

  Returns: L<Paws::AutoScaling::AutoScalingInstancesType>

  

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

You can describe up to a maximum of 50 instances with a single call. By default, a call returns up to 20 instances. If there are more items to return, the call returns a token. To get the next set of items, repeat the call with the returned token in the NextToken parameter.

DescribeAutoScalingNotificationTypes()

  Arguments described in: L<Paws::AutoScaling::DescribeAutoScalingNotificationTypes>

  Returns: L<Paws::AutoScaling::DescribeAutoScalingNotificationTypesAnswer>

  

Lists the notification types that are supported by Auto Scaling.

DescribeLaunchConfigurations()

  Arguments described in: L<Paws::AutoScaling::DescribeLaunchConfigurations>

  Returns: L<Paws::AutoScaling::LaunchConfigurationsType>

  

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

You can specify a maximum number of items to be returned with a single call. If there are more items to return, the call returns a token. To get the next set of items, repeat the call with the returned token in the NextToken parameter.

DescribeLifecycleHooks()

  Arguments described in: L<Paws::AutoScaling::DescribeLifecycleHooks>

  Returns: L<Paws::AutoScaling::DescribeLifecycleHooksAnswer>

  

Describes the lifecycle hooks for the specified Auto Scaling group.

DescribeLifecycleHookTypes()

  Arguments described in: L<Paws::AutoScaling::DescribeLifecycleHookTypes>

  Returns: L<Paws::AutoScaling::DescribeLifecycleHookTypesAnswer>

  

Describes the available types of lifecycle hooks.

DescribeMetricCollectionTypes()

  Arguments described in: L<Paws::AutoScaling::DescribeMetricCollectionTypes>

  Returns: L<Paws::AutoScaling::DescribeMetricCollectionTypesAnswer>

  

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

The GroupStandbyInstances metric is not returned by default. You must explicitly request it when calling EnableMetricsCollection.

DescribeNotificationConfigurations()

  Arguments described in: L<Paws::AutoScaling::DescribeNotificationConfigurations>

  Returns: L<Paws::AutoScaling::DescribeNotificationConfigurationsAnswer>

  

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

DescribePolicies()

  Arguments described in: L<Paws::AutoScaling::DescribePolicies>

  Returns: L<Paws::AutoScaling::PoliciesType>

  

Describes the policies for the specified Auto Scaling group.

You can specify a maximum number of items to be returned with a single call. If there are more items to return, the call returns a token. To get the next set of items, repeat the call with the returned token in the NextToken parameter.

DescribeScalingActivities()

  Arguments described in: L<Paws::AutoScaling::DescribeScalingActivities>

  Returns: L<Paws::AutoScaling::ActivitiesType>

  

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.

You can specify a maximum number of items to be returned with a single call. If there are more items to return, the call returns a token. To get the next set of items, repeat the call with the returned token in the NextToken parameter.

DescribeScalingProcessTypes()

  Arguments described in: L<Paws::AutoScaling::DescribeScalingProcessTypes>

  Returns: L<Paws::AutoScaling::ProcessesType>

  

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

DescribeScheduledActions()

  Arguments described in: L<Paws::AutoScaling::DescribeScheduledActions>

  Returns: L<Paws::AutoScaling::ScheduledActionsType>

  

Lists the actions scheduled for your Auto Scaling group that haven't been executed. To list the actions that were already executed, use DescribeScalingActivities.

DescribeTags()

  Arguments described in: L<Paws::AutoScaling::DescribeTags>

  Returns: L<Paws::AutoScaling::TagsType>

  

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.

DescribeTerminationPolicyTypes()

  Arguments described in: L<Paws::AutoScaling::DescribeTerminationPolicyTypes>

  Returns: L<Paws::AutoScaling::DescribeTerminationPolicyTypesAnswer>

  

Lists the termination policies supported by Auto Scaling.

DetachInstances()

  Arguments described in: L<Paws::AutoScaling::DetachInstances>

  Returns: L<Paws::AutoScaling::DetachInstancesAnswer>

  

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.

For more information, see Detach EC2 Instances from Your Auto Scaling Group in the Auto Scaling Developer Guide.

DisableMetricsCollection()

  Arguments described in: L<Paws::AutoScaling::DisableMetricsCollection>

  Returns: nothing

  

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

EnableMetricsCollection()

  Arguments described in: L<Paws::AutoScaling::EnableMetricsCollection>

  Returns: nothing

  

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.

EnterStandby()

  Arguments described in: L<Paws::AutoScaling::EnterStandby>

  Returns: L<Paws::AutoScaling::EnterStandbyAnswer>

  

Moves the specified instances into Standby mode.

For more information, see Auto Scaling InService State in the Auto Scaling Developer Guide.

ExecutePolicy()

  Arguments described in: L<Paws::AutoScaling::ExecutePolicy>

  Returns: nothing

  

Executes the specified policy.

ExitStandby()

  Arguments described in: L<Paws::AutoScaling::ExitStandby>

  Returns: L<Paws::AutoScaling::ExitStandbyAnswer>

  

Moves the specified instances out of Standby mode.

For more information, see Auto Scaling InService State in the Auto Scaling Developer Guide.

PutLifecycleHook()

  Arguments described in: L<Paws::AutoScaling::PutLifecycleHook>

  Returns: L<Paws::AutoScaling::PutLifecycleHookAnswer>

  

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 operation is a part of the basic sequence for adding a lifecycle hook to an Auto Scaling group:

1. Create a notification target. A target can be either an Amazon SQS queue or an Amazon SNS topic.
2. Create an IAM role. This role allows Auto Scaling to publish lifecycle notifications to the designated SQS queue or SNS topic.
3. Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate.
4. If necessary, record the lifecycle action heartbeat to keep the instance in a pending state.
5. Complete the lifecycle action.

For more information, see Auto Scaling Pending State and Auto Scaling Terminating State in the Auto Scaling Developer Guide.

PutNotificationConfiguration()

  Arguments described in: L<Paws::AutoScaling::PutNotificationConfiguration>

  Returns: nothing

  

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.

PutScalingPolicy()

  Arguments described in: L<Paws::AutoScaling::PutScalingPolicy>

  Returns: L<Paws::AutoScaling::PolicyARNType>

  

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.

PutScheduledUpdateGroupAction()

  Arguments described in: L<Paws::AutoScaling::PutScheduledUpdateGroupAction>

  Returns: nothing

  

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.

Auto Scaling supports the date and time expressed in "YYYY-MM-DDThh:mm:ssZ" format in UTC/GMT only.

RecordLifecycleActionHeartbeat()

  Arguments described in: L<Paws::AutoScaling::RecordLifecycleActionHeartbeat>

  Returns: L<Paws::AutoScaling::RecordLifecycleActionHeartbeatAnswer>

  

Records a heartbeat for the lifecycle action associated with a specific token. This extends the timeout by the length of time defined by the HeartbeatTimeout parameter of PutLifecycleHook.

This operation is a part of the basic sequence for adding a lifecycle hook to an Auto Scaling group:

1. Create a notification target. A target can be either an Amazon SQS queue or an Amazon SNS topic.
2. Create an IAM role. This role allows Auto Scaling to publish lifecycle notifications to the designated SQS queue or SNS topic.
3. Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate.
4. If necessary, record the lifecycle action heartbeat to keep the instance in a pending state.
5. Complete the lifecycle action.

For more information, see Auto Scaling Pending State and Auto Scaling Terminating State in the Auto Scaling Developer Guide.

ResumeProcesses()

  Arguments described in: L<Paws::AutoScaling::ResumeProcesses>

  Returns: nothing

  

Resumes the specified suspended Auto Scaling processes for the specified Auto Scaling group. To resume specific processes, use the ScalingProcesses parameter. To resume all processes, omit the ScalingProcesses parameter. For more information, see Suspend and Resume Auto Scaling Processes in the Auto Scaling Developer Guide.

SetDesiredCapacity()

  Arguments described in: L<Paws::AutoScaling::SetDesiredCapacity>

  Returns: nothing

  

Sets the size of the specified AutoScalingGroup.

SetInstanceHealth()

  Arguments described in: L<Paws::AutoScaling::SetInstanceHealth>

  Returns: nothing

  

Sets the health status of the specified instance.

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

SuspendProcesses()

  Arguments described in: L<Paws::AutoScaling::SuspendProcesses>

  Returns: nothing

  

Suspends the specified Auto Scaling processes for the specified Auto Scaling group. To suspend specific processes, use the ScalingProcesses parameter. To suspend all processes, omit the ScalingProcesses parameter.

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 Suspend and Resume Auto Scaling Processes in the Auto Scaling Developer Guide.

TerminateInstanceInAutoScalingGroup()

  Arguments described in: L<Paws::AutoScaling::TerminateInstanceInAutoScalingGroup>

  Returns: L<Paws::AutoScaling::ActivityType>

  

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

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

UpdateAutoScalingGroup()

  Arguments described in: L<Paws::AutoScaling::UpdateAutoScalingGroup>

  Returns: nothing

  

Updates the configuration for the specified AutoScalingGroup.

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. Scaling activities that are currently in progress aren't affected.

  • If a new value is specified for MinSize without specifying the value for DesiredCapacity, and if the new MinSize is larger than the current size of the Auto Scaling group, there will be an implicit call to SetDesiredCapacity to set the group to the new MinSize.

  • If a new value is specified for MaxSize without specifying the value for DesiredCapacity, and the new MaxSize is smaller than the current size of the Auto Scaling group, there will be an implicit call to SetDesiredCapacity to set the group to the new MaxSize.

  • All other optional parameters are left unchanged if not passed in the request.

SEE ALSO

This service class forms part of Paws

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues