我的 Amazon Elastic Compute Cloud(Amazon EC2)自动扩缩组在没有我的干预的情况下横向缩减。我想了解这是怎么发生的。
解决方法
策略、用户和计划可扩展 EC2 自动扩缩组。终止策略控制横向缩减事件发生时的实例终止。
要查看自动扩缩组的扩展活动历史记录,请使用 Amazon EC2 控制台、AWS 命令行界面(AWS CLI)或 AWS API。
**注意:**如果在运行 AWS 命令行界面(AWS CLI)命令时收到错误,请参阅 Troubleshoot AWS CLI errors。此外,确保您使用的是最新版本的 AWS CLI。
基于策略的扩展
如果自动扩缩组遵循扩展策略进行横向缩减,则活动历史记录中会显示相关事件消息。
横向缩减事件消息示例:
At 2023-05-08T13:55:14Z a monitor alarm My-Scale-In-Alarm in state ALARM triggered policy Decrease Group Size changing the desired capacity from 4 to 3.
使用 Amazon EC2 控制台或 AWS CLI put-scaling-policy 命令来调整扩展策略。接下来,配置 Amazon CloudWatch 警报以设置横向缩减事件的条件。然后,将 CloudWatch 警报与策略相关联。
用户启动的扩展
如果用户启动了一个自动扩缩组横向缩减事件,则活动历史记录中会显示相关事件消息。
横向缩减事件消息示例:
At 2023-05-13T15:03:47Z a user request update of AutoScalingGroup constraints to min: 12, max: 20, desired: 13 changing the desired capacity from 14 to 13.
查看关联的 AWS CloudTrail 日志,查找进行横向缩减事件 API 调用的用户。
**注意:**必须先设置 CloudTrail,然后才能记录 API 调用。
计划扩展
如果自动扩缩组遵循计划扩展策略进行横向缩减,则活动历史记录中会显示相关事件消息。
横向缩减事件消息示例:
At 2023-02-12T16:01:25Z a scheduled action update of AutoScalingGroup constraints to min: 1, max: 5, desired: 2 changing the desired capacity from 3 to 2.
At 2023-02-12T16:01:25Z the scheduled action ScaleIn executed. Setting max size from 1 to 5. Setting desired capacity from 3 to 2.
运行以下 AWS CLI 命令来查看计划的横向缩减活动:
aws autoscaling describe-scheduled-actions --auto-scaling-group-name my_scaling_group_name
**注意:**在您的命令中,请将 my_scaling_group_name 替换为您的自动扩缩组的名称。
相关信息
Tutorial: Set up a scaled and load-balanced application
Monitor CloudWatch metrics for your Auto Scaling groups and instances
Log Amazon EC2 Auto Scaling API calls with AWS CloudTrail