本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 AWS Management Console 或启用检查点 AWS CLI
您可以使用 AWS Management Console 或 AWS CLI 来启用检查点。
启用检查点(控制台)
您可以在开启实例刷新之前启用检查点,以使用增量或分阶段方法替换实例。这将为验证提供额外时间。
启动使用检查点的实例刷新
访问 https://console.aws.amazon.com/ec2/
,打开 Amazon EC2 控制台,然后从导航窗格中选择 Auto Scaling Groups(Auto Scaling 组)。 -
选中您的自动扩缩组旁边的复选框。
将在 Auto Scaling group(Auto Scaling 组)页面底部打开一个拆分窗格。
-
在 Instance refresh(实例刷新)选项卡上的 Active instance refresh(活跃实例刷新)中,选择 Start instance refresh(开启实例刷新)。
-
在 Start instance refresh(开启实例刷新)页面上,输入 Minimum healthy percentage(最低运行正常百分比)和 Instance warmup(实例预热)的值。
-
选择 Enable checkpoints(启用检查点)复选框。
此时将显示一个框,您可以在其中定义第一个检查点的百分比阈值。
-
对于 Proceed until ____ % of the group is refreshed(继续直到刷新该组的 ____ %)中,输入一个数字 (1–100)。这将设置第一个检查点的百分比。
-
要添加另一个检查点,请选择添加检查点,然后定义下一个检查点的百分比。
-
要指定 Amazon EC2 Auto Scaling 在达到检查点后等待多长时间,请更新在检查点之间等待
1
hour
中的字段。时间单位可以是小时、分钟或秒。 -
如果您已完成实例刷新选择,请选择启动实例刷新。
启用检查点 (AWS CLI)
要使用启用检查点启动实例刷新 AWS CLI,您需要一个定义以下参数的配置文件:
-
CheckpointPercentages
:指定要替换的实例百分比的阈值。这些阈值提供检查点。当替换和预热的实例百分比达到指定阈值之一时,操作将等待指定的时间段。您可指定在CheckpointDelay
中等待的秒数。当指定的时间段过后,实例刷新将继续进行直到达到下一个检查点(如果适用)。 -
CheckpointDelay
:指定在到达检查点之后与继续操作之前需要等待的时间量(以秒为单位)。选择提供足够时间以执行验证的时间段。
CheckpointPercentages
数组中显示的最后一个值描述需要成功替换的 Auto Scaling 组的百分比。在成功替换此百分比,并且每个实例都被视为已完成初始化后,该操作将转换到 Successful
。
创建多个检查点
要创建多个检查点,请使用以下示例start-instance-refresh命令。此示例配置了一个实例刷新,它最初刷新 Auto Scaling 组的 1%。在等待 10 分钟后,它会随后刷新接下来的 19%,然后再等待 10 分钟。最后,它会刷新该组的其余部分,然后结束操作。
aws autoscaling start-instance-refresh --cli-input-json file://config.json
config.json
的内容:
{ "AutoScalingGroupName": "
my-asg
", "Preferences": { "InstanceWarmup":60
, "MinHealthyPercentage":80
, "CheckpointPercentages": [1,20,100
], "CheckpointDelay":600
} }
创建单个检查点
要创建单个检查点,请使用以下示例start-instance-refresh命令。此示例配置了一个实例刷新,它最初刷新 Auto Scaling 组的 20%。在等待 10 分钟后,它会随后刷新该组的其余部分,然后结束操作。
aws autoscaling start-instance-refresh --cli-input-json file://config.json
config.json
的内容:
{ "AutoScalingGroupName": "
my-asg
", "Preferences": { "InstanceWarmup":60
, "MinHealthyPercentage":80
, "CheckpointPercentages": [20,100
], "CheckpointDelay":600
} }
部分刷新 Auto Scaling 组
要仅替换 Auto Scaling 组的一部分然后完全停止,请使用以下示例start-instance-refresh命令。此示例配置了一个实例刷新,它最初刷新 Auto Scaling 组的 1%。在等待 10 分钟后,它会随后刷新接下来的 19%,然后结束操作。
aws autoscaling start-instance-refresh --cli-input-json file://config.json
config.json
的内容:
{ "AutoScalingGroupName": "
my-asg
", "Preferences": { "InstanceWarmup":60
, "MinHealthyPercentage":80
, "CheckpointPercentages": [1,20
], "CheckpointDelay":600
} }