我想變更 Amazon Elastic Container Service (Amazon ECS) 叢集中的容器執行個體類型。
簡短描述
若要變更容器執行個體類型,請執行下列其中一個動作:
- 使用 Amazon ECS 主控台更新容器執行個體。
- 使用 AWS CloudFormation 更新容器執行個體。
- 更新 Amazon ECS 叢集容器執行個體。
變更容器執行個體類型後,您必須取代 Amazon ECS 叢集中先前的容器執行個體。
解決方法
使用 Amazon ECS 主控台更新容器執行個體
請完成下列步驟:
- 開啟 Amazon ECS 主控台。
- 在導覽窗格中,選取 Clusters(叢集)。
- 選取您的叢集。
- 選擇 Infrastructure (基礎架構) 索引標籤,然後選擇與您的容量供應商關聯的 Amazon EC2 Auto Scaling 群組。
- 選擇 EC2 Auto Scaling 群組的啟動範本。
- 建立啟動範本版本。
- 在 Instance type (執行個體類型) 中,選擇新的啟動範本版本。
- 使用新的啟動範本版本更新 Auto Scaling 群組。
使用 CloudFormation 更新容器執行個體
請完成下列步驟:
- 開啟 CloudFormation 主控台。
- 選擇包含 Amazon ECS 資源的堆疊。
- 更新包含資源堆疊的堆疊範本,以變更 InstanceType 值。
注意: 變更 InstanceType 值後,AutoScalingReplacingUpdate 政策預設產生新的啟動範本。CloudFormation 也將 Auto Scaling 群組更新為啟動範本的最新版本。但是,CloudFormation 不會自動取代現有執行個體。
- 使用變更集來更新堆疊,或直接更新堆疊。
更新 Amazon ECS 叢集容器執行個體
請完成下列步驟:
- 開啟 Amazon ECS 主控台。
- 在導覽窗格中,選取 Clusters(叢集)。
- 選取您的叢集。
- 選擇 Infrastructure (基礎架構) 索引標籤,然後選擇與您容量供應商關聯的 Auto Scaling 群組。
- 在 Instance type requirements (執行個體類型需求) 下,選取 Instance type (執行個體類型)。
如果您的 Auto Scaling 群組從啟動範本取得執行個體類型,請使用 Amazon ECS 主控台更新容器執行個體。
- 選擇 Update (更新)。
取代先前的容器執行個體
為了減少應用程式的停機時間,請在排空先前的容器執行個體之前,擴展其他執行個體。
為 Auto Scaling 群組的所需容量進行以下設定:
- 在 Desired capacity (所需容量) 中,輸入現有值的兩倍。
- 在 Max desired capacity (最大所需容量) 中,將其值更新為大於 Desired capacity (所需容量) 值。
若要以新執行個體取代先前的執行個體,請完成以下步驟:
- 開啟 Amazon ECS 主控台。
- 在導覽窗格中,選取 Clusters(叢集)。
- 選取您的叢集。
- 選擇 Infrastructure (基礎架構) 索引標籤。
- 在 Container instances (容器執行個體) 下,選取先前容器執行個體的 ID。
- 展開 Actions (動作) 功能表,然後選擇 Drain (排空)。
- 確認先前容器執行個體的正在執行任務數量是否為 0。
- 選取先前容器執行個體的 ID,然後選擇 Deregister (取消註冊)。
- 將所需容量和最大所需容量設定為其原始值,然後選擇 Save (儲存)。
注意: 如果您的 Auto Scaling 群組具有預設終止政策,則此動作將關閉 Amazon ECS 叢集中先前的容器執行個體
或者,使用執行個體重新整理來更新 Auto Scaling 群組中的執行個體。
相關資訊
控制哪些 Auto Scaling 執行個體在縮減期間終止