NAME

Paws::ApplicationAutoScaling - Perl Interface to AWS Application Auto Scaling

SYNOPSIS

use Paws;

my $obj = Paws->service('ApplicationAutoScaling');
my $res = $obj->Method(
  Arg1 => $val1,
  Arg2 => [ 'V1', 'V2' ],
  # if Arg3 is an object, the HashRef will be used as arguments to the constructor
  # of the arguments type
  Arg3 => { Att1 => 'Val1' },
  # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
  # the constructor of the arguments type
  Arg4 => [ { Att1 => 'Val1'  }, { Att1 => 'Val2' } ],
);

DESCRIPTION

Application Auto Scaling is a general purpose Auto Scaling service for supported elastic AWS resources. With Application Auto Scaling, you can automatically scale your AWS resources, with an experience similar to that of Auto Scaling.

At this time, Application Auto Scaling only supports scaling Amazon ECS services.

For example, you can use Application Auto Scaling to accomplish the following tasks:

  • Define scaling policies for automatically adjusting your application’s resources

  • Scale your resources in response to CloudWatch alarms

  • View history of your scaling events

Application Auto Scaling is available in the following regions:

  • us-east-1

  • us-west-1

  • us-west-2

  • ap-southeast-1

  • ap-southeast-2

  • ap-northeast-1

  • eu-central-1

  • eu-west-1

METHODS

DeleteScalingPolicy(PolicyName => Str, ResourceId => Str, ScalableDimension => Str, ServiceNamespace => Str)

Each argument is described in detail in: Paws::ApplicationAutoScaling::DeleteScalingPolicy

Returns: a Paws::ApplicationAutoScaling::DeleteScalingPolicyResponse instance

Deletes an Application Auto Scaling scaling policy that was previously
created. If you are no longer using a scaling policy, you can delete it
with this operation.

Deleting a policy deletes the underlying alarm action, but does not delete the CloudWatch alarm, even if it no longer has an associated action.

To create a new scaling policy or update an existing one, see PutScalingPolicy.

DeregisterScalableTarget(ResourceId => Str, ScalableDimension => Str, ServiceNamespace => Str)

Each argument is described in detail in: Paws::ApplicationAutoScaling::DeregisterScalableTarget

Returns: a Paws::ApplicationAutoScaling::DeregisterScalableTargetResponse instance

Deregisters a scalable target that was previously registered. If you
are no longer using a scalable target, you can delete it with this
operation. When you deregister a scalable target, all of the scaling
policies that are associated with that scalable target are deleted.

To create a new scalable target or update an existing one, see RegisterScalableTarget.

DescribeScalableTargets(ServiceNamespace => Str, [MaxResults => Int, NextToken => Str, ResourceIds => ArrayRef[Str], ScalableDimension => Str])

Each argument is described in detail in: Paws::ApplicationAutoScaling::DescribeScalableTargets

Returns: a Paws::ApplicationAutoScaling::DescribeScalableTargetsResponse instance

Provides descriptive information for scalable targets with a specified
service namespace.

You can filter the results in a service namespace with the ResourceIds and ScalableDimension parameters.

To create a new scalable target or update an existing one, see RegisterScalableTarget. If you are no longer using a scalable target, you can deregister it with DeregisterScalableTarget.

DescribeScalingActivities(ServiceNamespace => Str, [MaxResults => Int, NextToken => Str, ResourceId => Str, ScalableDimension => Str])

Each argument is described in detail in: Paws::ApplicationAutoScaling::DescribeScalingActivities

Returns: a Paws::ApplicationAutoScaling::DescribeScalingActivitiesResponse instance

Provides descriptive information for scaling activities with a
specified service namespace for the previous six weeks.

You can filter the results in a service namespace with the ResourceId and ScalableDimension parameters.

Scaling activities are triggered by CloudWatch alarms that are associated with scaling policies. To view the existing scaling policies for a service namespace, see DescribeScalingPolicies. To create a new scaling policy or update an existing one, see PutScalingPolicy.

DescribeScalingPolicies(ServiceNamespace => Str, [MaxResults => Int, NextToken => Str, PolicyNames => ArrayRef[Str], ResourceId => Str, ScalableDimension => Str])

Each argument is described in detail in: Paws::ApplicationAutoScaling::DescribeScalingPolicies

Returns: a Paws::ApplicationAutoScaling::DescribeScalingPoliciesResponse instance

Provides descriptive information for scaling policies with a specified
service namespace.

You can filter the results in a service namespace with the ResourceId, ScalableDimension, and PolicyNames parameters.

To create a new scaling policy or update an existing one, see PutScalingPolicy. If you are no longer using a scaling policy, you can delete it with DeleteScalingPolicy.

PutScalingPolicy(PolicyName => Str, ResourceId => Str, ScalableDimension => Str, ServiceNamespace => Str, [PolicyType => Str, StepScalingPolicyConfiguration => Paws::ApplicationAutoScaling::StepScalingPolicyConfiguration])

Each argument is described in detail in: Paws::ApplicationAutoScaling::PutScalingPolicy

Returns: a Paws::ApplicationAutoScaling::PutScalingPolicyResponse instance

Creates or updates a policy for an existing Application Auto Scaling
scalable target. Each scalable target is identified by service
namespace, a resource ID, and a scalable dimension, and a scaling
policy applies to a scalable target that is identified by those three
attributes. You cannot create a scaling policy without first
registering a scalable target with RegisterScalableTarget.

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.

You can view the existing scaling policies for a service namespace with DescribeScalingPolicies. If you are no longer using a scaling policy, you can delete it with DeleteScalingPolicy.

RegisterScalableTarget(ResourceId => Str, ScalableDimension => Str, ServiceNamespace => Str, [MaxCapacity => Int, MinCapacity => Int, RoleARN => Str])

Each argument is described in detail in: Paws::ApplicationAutoScaling::RegisterScalableTarget

Returns: a Paws::ApplicationAutoScaling::RegisterScalableTargetResponse instance

Registers or updates a scalable target. A scalable target is a resource
that can be scaled up or down with Application Auto Scaling. After you
have registered a scalable target, you can use this command to update
the minimum and maximum values for your scalable dimension.

At this time, Application Auto Scaling only supports scaling Amazon ECS services.

After you register a scalable target with Application Auto Scaling, you can create and apply scaling policies to it with PutScalingPolicy. You can view the existing scaling policies for a service namespace with DescribeScalableTargets. If you are no longer using a scalable target, you can deregister it with DeregisterScalableTarget.

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