View a markdown version of this page

使用 AWS 管理控制台 或启用检查点 AWS CLI - Amazon EC2 Auto Scaling

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 AWS 管理控制台 或启用检查点 AWS CLI

您可以使用 AWS 管理控制台 或 AWS CLI 来启用检查点。

启用检查点(控制台)

您可以在开启实例刷新之前启用检查点,以使用增量或分阶段方法替换实例。这将为验证提供额外时间。

启动使用检查点的实例刷新
  1. 在上打开 Amazon EC2 控制台 https://console.aws.amazon.com/ec2/,然后从导航窗格中选择 A uto Scaling Gro ups。

  2. 选中您的自动扩缩组旁边的复选框。

    将在 Auto Scaling group(Auto Scaling 组)页面底部打开一个拆分窗格。

  3. 在 Instance refresh(实例刷新)选项卡上的 Active instance refresh(活跃实例刷新)中,选择 Start instance refresh(开启实例刷新)。

  4. 在 Start instance refresh(开启实例刷新)页面上,输入 Minimum healthy percentage(最低运行正常百分比)和 Instance warmup(实例预热)的值。

  5. 选择 Enable checkpoints(启用检查点)复选框。

    此时将显示一个框,您可以在其中定义第一个检查点的百分比阈值。

  6. 对于 Proceed until ____ % of the group is refreshed(继续直到刷新该组的 ____ %)中,输入一个数字 (1–100)。这将设置第一个检查点的百分比。

  7. 要添加另一个检查点,请选择添加检查点,然后定义下一个检查点的百分比。

  8. 要指定 Amazon EC2 Auto Scaling 在达到检查点后等待多长时间,请更新在检查点之间等待 1 hour 中的字段。时间单位可以是小时、分钟或秒。

  9. 如果您已完成实例刷新选择,请选择启动实例刷新。

启用检查点 (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 } }