

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 AWS 管理主控台 或 啟用檢查點 AWS CLI
<a name="enable-checkpoints-console-cli"></a>

您可以使用 AWS 管理主控台 或 AWS CLI 來啟用檢查點。

## 啟用檢查點 (主控台)
<a name="enable-checkpoints-console"></a>

您可以在啟動執行個體重新整理之前啟用檢查點，以使用增量或分階段方法取代執行個體。這會為驗證提供額外的時間。

**啟動使用檢查點的執行個體重新整理**

1. 前往網址 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台，然後從導覽窗格中選擇 **Auto Scaling 群組**。

1. 選取 Auto Scaling 群組旁的核取方塊。

   **Auto Scaling groups** (Auto Scaling 群組) 頁面底部會開啟一個分割窗格。

1. 在 **Instance refresh** (執行個體重新整理) 索引標籤的 **Instance refreshes** (執行個體重新整理) 中，選擇 **Start instance refresh** (啟動執行個體重新整理)。

1. 在 **Start instance refresh** (啟動執行個體重新整理) 頁面中，輸入 **Minimum healthy percentage** (運作狀態良好最低百分比) 和 **Instance warmup** (執行個體暖機期) 的值。

1. 勾選 **Enable checkpoints** (啟用檢查點) 核取方塊。

   這會顯示一個方塊，讓您在其中定義第一個檢查點的百分比閾值。

1. 針對 **Proceed until \$1\$1\$1\$1 % of the group is refreshed** (繼續操作，直到 \$1\$1\$1\$1% 的群組經重新整理)，輸入一個數字 (1—100)。這會設定第一個檢查點的百分比。

1. 若要新增其他檢查點，請選擇 **Add checkpoint** (新增檢查點)，然後定義下一個檢查點的百分比。

1. 若要指定到達檢查點後 Amazon EC2 Auto Scaling 等待的時長，請更新 **Wait for `1` `hour` between checkpoints** (在檢查點之間等待 1 小時) 中的欄位。時間單位可以是小時、分鐘或秒。

1. 如果您已完成處理執行個體重新整理的選取項目，請選擇**啟動執行個體重新整理**。

## 啟用檢查點 (AWS CLI)
<a name="enable-checkpoints-cli"></a>

若要使用 啟動啟用檢查點的執行個體重新整理 AWS CLI，您需要定義下列參數的組態檔案：
+ `CheckpointPercentages`：指定要取代的執行個體百分比閾值。這些閾值提供檢查點。當被取代並暖機的執行個體百分比達到其中一個指定的閾值時，此操作會等待一段指定的時間。您在 `CheckpointDelay` 中指定要等待的秒數。在指定的時間段過後，執行個體重新整理會繼續執行，直到到達下一個檢查點 (如果適用) 為止。
+ `CheckpointDelay`：指定到達檢查點後再繼續前的等待時間 (以秒為單位)。選擇提供足夠時間來執行驗證的時段。

需要成功取代的 Auto Scaling 群組百分比會以 `CheckpointPercentages` 陣列中所示的最後一個數值表示。成功取代此百分比之後，且每個執行個體被視為已完成初始化後，該操作會轉換為 `Successful`。

**建立多個檢查點**  
若要建立多個檢查點，請使用下列範例 [start-instance-refresh](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/start-instance-refresh.html) 命令。此範例設定了一次執行個體重新整理，這會開始重新整理 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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/start-instance-refresh.html) 命令。此範例設定了一次執行個體重新整理，這會開始重新整理 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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/start-instance-refresh.html) 命令。此範例設定了一次執行個體重新整理，這會開始重新整理 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
    }
}
```