NAME

Paws::AutoScaling - Perl Interface to AWS Auto Scaling

SYNOPSIS

use Paws;

my $obj = Paws->service('AutoScaling');
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

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(AutoScalingGroupName => Str, [InstanceIds => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::AttachInstances

Returns: nothing

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.

AttachLoadBalancers([AutoScalingGroupName => Str, LoadBalancerNames => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::AttachLoadBalancers

Returns: a Paws::AutoScaling::AttachLoadBalancersResultType instance

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.

CompleteLifecycleAction(AutoScalingGroupName => Str, LifecycleActionResult => Str, LifecycleHookName => Str, [InstanceId => Str, LifecycleActionToken => Str])

Each argument is described in detail in: Paws::AutoScaling::CompleteLifecycleAction

Returns: a Paws::AutoScaling::CompleteLifecycleActionAnswer instance

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. (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.
3. Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.
4. If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.
5. If you finish before the timeout period ends, complete the lifecycle action.

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

CreateAutoScalingGroup(AutoScalingGroupName => Str, MaxSize => Int, MinSize => Int, [AvailabilityZones => ArrayRef[Str], DefaultCooldown => Int, DesiredCapacity => Int, HealthCheckGracePeriod => Int, HealthCheckType => Str, InstanceId => Str, LaunchConfigurationName => Str, LoadBalancerNames => ArrayRef[Str], NewInstancesProtectedFromScaleIn => Bool, PlacementGroup => Str, Tags => ArrayRef[Paws::AutoScaling::Tag], TerminationPolicies => ArrayRef[Str], VPCZoneIdentifier => Str])

Each argument is described in detail in: 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 this limit, see DescribeAccountLimits.

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

CreateLaunchConfiguration(LaunchConfigurationName => Str, [AssociatePublicIpAddress => Bool, BlockDeviceMappings => ArrayRef[Paws::AutoScaling::BlockDeviceMapping], ClassicLinkVPCId => Str, ClassicLinkVPCSecurityGroups => ArrayRef[Str], EbsOptimized => Bool, IamInstanceProfile => Str, ImageId => Str, InstanceId => Str, InstanceMonitoring => Paws::AutoScaling::InstanceMonitoring, InstanceType => Str, KernelId => Str, KeyName => Str, PlacementTenancy => Str, RamdiskId => Str, SecurityGroups => ArrayRef[Str], SpotPrice => Str, UserData => Str])

Each argument is described in detail in: 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 this limit, see DescribeAccountLimits.

For more information, see Launch Configurations in the Auto Scaling Developer Guide.

CreateOrUpdateTags(Tags => ArrayRef[Paws::AutoScaling::Tag])

Each argument is described in detail in: Paws::AutoScaling::CreateOrUpdateTags

Returns: nothing

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.

DeleteAutoScalingGroup(AutoScalingGroupName => Str, [ForceDelete => Bool])

Each argument is described in detail in: Paws::AutoScaling::DeleteAutoScalingGroup

Returns: nothing

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.

DeleteLaunchConfiguration(LaunchConfigurationName => Str)

Each argument is described in detail in: 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(AutoScalingGroupName => Str, LifecycleHookName => Str)

Each argument is described in detail in: Paws::AutoScaling::DeleteLifecycleHook

Returns: a Paws::AutoScaling::DeleteLifecycleHookAnswer instance

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(AutoScalingGroupName => Str, TopicARN => Str)

Each argument is described in detail in: Paws::AutoScaling::DeleteNotificationConfiguration

Returns: nothing

Deletes the specified notification.

DeletePolicy(PolicyName => Str, [AutoScalingGroupName => Str])

Each argument is described in detail in: Paws::AutoScaling::DeletePolicy

Returns: nothing

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.

DeleteScheduledAction(ScheduledActionName => Str, [AutoScalingGroupName => Str])

Each argument is described in detail in: Paws::AutoScaling::DeleteScheduledAction

Returns: nothing

Deletes the specified scheduled action.

DeleteTags(Tags => ArrayRef[Paws::AutoScaling::Tag])

Each argument is described in detail in: Paws::AutoScaling::DeleteTags

Returns: nothing

Deletes the specified tags.

DescribeAccountLimits( => )

Each argument is described in detail in: Paws::AutoScaling::DescribeAccountLimits

Returns: a Paws::AutoScaling::DescribeAccountLimitsAnswer instance

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.

DescribeAdjustmentTypes( => )

Each argument is described in detail in: Paws::AutoScaling::DescribeAdjustmentTypes

Returns: a Paws::AutoScaling::DescribeAdjustmentTypesAnswer instance

Describes the policy adjustment types for use with PutScalingPolicy.

DescribeAutoScalingGroups([AutoScalingGroupNames => ArrayRef[Str], MaxRecords => Int, NextToken => Str])

Each argument is described in detail in: Paws::AutoScaling::DescribeAutoScalingGroups

Returns: a Paws::AutoScaling::AutoScalingGroupsType instance

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

DescribeAutoScalingInstances([InstanceIds => ArrayRef[Str], MaxRecords => Int, NextToken => Str])

Each argument is described in detail in: Paws::AutoScaling::DescribeAutoScalingInstances

Returns: a Paws::AutoScaling::AutoScalingInstancesType instance

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

DescribeAutoScalingNotificationTypes( => )

Each argument is described in detail in: Paws::AutoScaling::DescribeAutoScalingNotificationTypes

Returns: a Paws::AutoScaling::DescribeAutoScalingNotificationTypesAnswer instance

Describes the notification types that are supported by Auto Scaling.

DescribeLaunchConfigurations([LaunchConfigurationNames => ArrayRef[Str], MaxRecords => Int, NextToken => Str])

Each argument is described in detail in: Paws::AutoScaling::DescribeLaunchConfigurations

Returns: a Paws::AutoScaling::LaunchConfigurationsType instance

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

DescribeLifecycleHooks(AutoScalingGroupName => Str, [LifecycleHookNames => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::DescribeLifecycleHooks

Returns: a Paws::AutoScaling::DescribeLifecycleHooksAnswer instance

Describes the lifecycle hooks for the specified Auto Scaling group.

DescribeLifecycleHookTypes( => )

Each argument is described in detail in: Paws::AutoScaling::DescribeLifecycleHookTypes

Returns: a Paws::AutoScaling::DescribeLifecycleHookTypesAnswer instance

Describes the available types of lifecycle hooks.

DescribeLoadBalancers(AutoScalingGroupName => Str, [MaxRecords => Int, NextToken => Str])

Each argument is described in detail in: Paws::AutoScaling::DescribeLoadBalancers

Returns: a Paws::AutoScaling::DescribeLoadBalancersResponse instance

Describes the load balancers for the specified Auto Scaling group.

DescribeMetricCollectionTypes( => )

Each argument is described in detail in: Paws::AutoScaling::DescribeMetricCollectionTypes

Returns: a Paws::AutoScaling::DescribeMetricCollectionTypesAnswer instance

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.

DescribeNotificationConfigurations([AutoScalingGroupNames => ArrayRef[Str], MaxRecords => Int, NextToken => Str])

Each argument is described in detail in: Paws::AutoScaling::DescribeNotificationConfigurations

Returns: a Paws::AutoScaling::DescribeNotificationConfigurationsAnswer instance

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

DescribePolicies([AutoScalingGroupName => Str, MaxRecords => Int, NextToken => Str, PolicyNames => ArrayRef[Str], PolicyTypes => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::DescribePolicies

Returns: a Paws::AutoScaling::PoliciesType instance

Describes the policies for the specified Auto Scaling group.

DescribeScalingActivities([ActivityIds => ArrayRef[Str], AutoScalingGroupName => Str, MaxRecords => Int, NextToken => Str])

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

Returns: a Paws::AutoScaling::ActivitiesType instance

Describes one or more scaling activities for the specified Auto Scaling
group. If you omit the C<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.

DescribeScalingProcessTypes( => )

Each argument is described in detail in: Paws::AutoScaling::DescribeScalingProcessTypes

Returns: a Paws::AutoScaling::ProcessesType instance

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

DescribeScheduledActions([AutoScalingGroupName => Str, EndTime => Str, MaxRecords => Int, NextToken => Str, ScheduledActionNames => ArrayRef[Str], StartTime => Str])

Each argument is described in detail in: Paws::AutoScaling::DescribeScheduledActions

Returns: a Paws::AutoScaling::ScheduledActionsType instance

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

DescribeTags([Filters => ArrayRef[Paws::AutoScaling::Filter], MaxRecords => Int, NextToken => Str])

Each argument is described in detail in: Paws::AutoScaling::DescribeTags

Returns: a Paws::AutoScaling::TagsType instance

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( => )

Each argument is described in detail in: Paws::AutoScaling::DescribeTerminationPolicyTypes

Returns: a Paws::AutoScaling::DescribeTerminationPolicyTypesAnswer instance

Describes the termination policies supported by Auto Scaling.

DetachInstances(AutoScalingGroupName => Str, ShouldDecrementDesiredCapacity => Bool, [InstanceIds => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::DetachInstances

Returns: a Paws::AutoScaling::DetachInstancesAnswer instance

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.

DetachLoadBalancers([AutoScalingGroupName => Str, LoadBalancerNames => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::DetachLoadBalancers

Returns: a Paws::AutoScaling::DetachLoadBalancersResultType instance

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.

DisableMetricsCollection(AutoScalingGroupName => Str, [Metrics => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::DisableMetricsCollection

Returns: nothing

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

EnableMetricsCollection(AutoScalingGroupName => Str, Granularity => Str, [Metrics => ArrayRef[Str]])

Each argument is described in detail in: 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(AutoScalingGroupName => Str, ShouldDecrementDesiredCapacity => Bool, [InstanceIds => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::EnterStandby

Returns: a Paws::AutoScaling::EnterStandbyAnswer instance

Moves the specified instances into C<Standby> mode.

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

ExecutePolicy(PolicyName => Str, [AutoScalingGroupName => Str, BreachThreshold => Num, HonorCooldown => Bool, MetricValue => Num])

Each argument is described in detail in: Paws::AutoScaling::ExecutePolicy

Returns: nothing

Executes the specified policy.

ExitStandby(AutoScalingGroupName => Str, [InstanceIds => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::ExitStandby

Returns: a Paws::AutoScaling::ExitStandbyAnswer instance

Moves the specified instances out of C<Standby> mode.

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

PutLifecycleHook(AutoScalingGroupName => Str, LifecycleHookName => Str, [DefaultResult => Str, HeartbeatTimeout => Int, LifecycleTransition => Str, NotificationMetadata => Str, NotificationTargetARN => Str, RoleARN => Str])

Each argument is described in detail in: Paws::AutoScaling::PutLifecycleHook

Returns: a Paws::AutoScaling::PutLifecycleHookAnswer instance

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. (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.
3. Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.
4. If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.
5. If you finish before the timeout period ends, complete the lifecycle action.

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.

PutNotificationConfiguration(AutoScalingGroupName => Str, NotificationTypes => ArrayRef[Str], TopicARN => Str)

Each argument is described in detail in: 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(AdjustmentType => Str, AutoScalingGroupName => Str, PolicyName => Str, [Cooldown => Int, EstimatedInstanceWarmup => Int, MetricAggregationType => Str, MinAdjustmentMagnitude => Int, MinAdjustmentStep => Int, PolicyType => Str, ScalingAdjustment => Int, StepAdjustments => ArrayRef[Paws::AutoScaling::StepAdjustment]])

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

Returns: a Paws::AutoScaling::PolicyARNType instance

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.

PutScheduledUpdateGroupAction(AutoScalingGroupName => Str, ScheduledActionName => Str, [DesiredCapacity => Int, EndTime => Str, MaxSize => Int, MinSize => Int, Recurrence => Str, StartTime => Str, Time => Str])

Each argument is described in detail in: 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.

RecordLifecycleActionHeartbeat(AutoScalingGroupName => Str, LifecycleHookName => Str, [InstanceId => Str, LifecycleActionToken => Str])

Each argument is described in detail in: Paws::AutoScaling::RecordLifecycleActionHeartbeat

Returns: a Paws::AutoScaling::RecordLifecycleActionHeartbeatAnswer instance

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. (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.
3. Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.
4. If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.
5. If you finish before the timeout period ends, complete the lifecycle action.

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

ResumeProcesses(AutoScalingGroupName => Str, [ScalingProcesses => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::ResumeProcesses

Returns: nothing

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.

SetDesiredCapacity(AutoScalingGroupName => Str, DesiredCapacity => Int, [HonorCooldown => Bool])

Each argument is described in detail in: Paws::AutoScaling::SetDesiredCapacity

Returns: nothing

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.

SetInstanceHealth(HealthStatus => Str, InstanceId => Str, [ShouldRespectGracePeriod => Bool])

Each argument is described in detail in: 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.

SetInstanceProtection(AutoScalingGroupName => Str, InstanceIds => ArrayRef[Str], ProtectedFromScaleIn => Bool)

Each argument is described in detail in: Paws::AutoScaling::SetInstanceProtection

Returns: a Paws::AutoScaling::SetInstanceProtectionAnswer instance

Updates the instance protection settings of the specified instances.

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

SuspendProcesses(AutoScalingGroupName => Str, [ScalingProcesses => ArrayRef[Str]])

Each argument is described in detail in: Paws::AutoScaling::SuspendProcesses

Returns: nothing

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.

TerminateInstanceInAutoScalingGroup(InstanceId => Str, ShouldDecrementDesiredCapacity => Bool)

Each argument is described in detail in: Paws::AutoScaling::TerminateInstanceInAutoScalingGroup

Returns: a Paws::AutoScaling::ActivityType instance

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

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

UpdateAutoScalingGroup(AutoScalingGroupName => Str, [AvailabilityZones => ArrayRef[Str], DefaultCooldown => Int, DesiredCapacity => Int, HealthCheckGracePeriod => Int, HealthCheckType => Str, LaunchConfigurationName => Str, MaxSize => Int, MinSize => Int, NewInstancesProtectedFromScaleIn => Bool, PlacementGroup => Str, TerminationPolicies => ArrayRef[Str], VPCZoneIdentifier => Str])

Each argument is described in detail in: Paws::AutoScaling::UpdateAutoScalingGroup

Returns: nothing

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.

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