設定 Auto Scaling 群組的運作狀態檢查寬限期。 - Amazon EC2 Auto Scaling

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

設定 Auto Scaling 群組的運作狀態檢查寬限期。

當 Amazon EC2 Auto Scaling 運作狀態檢查判斷InService執行個體運作狀態不佳時,會以新的執行個體取代該執行個體。運作狀態檢查寬限期指定在發現新執行個體運作狀態不佳時終止服務之前保持服務的最短時間 (以秒為單位)。

範例使用案例可能是 Amazon EC2 Auto Scaling 的必要條件,以避免在 Elastic Load Balancing 運作狀態檢查失敗且原因是執行個體仍在初始化時採取行動。Elastic Load Balancing 運作狀態檢查會平行執行,並從執行個體向負載平衡器註冊時開始。寬限期可防止 Amazon EC2 Auto Scaling 標記您新啟動的執行個體,Unhealthy並在執行個體進入狀態後立即通過這些運作狀態檢查時不必要地終止這些執行個體InService

在主控台中,根據預設,當您建立 Auto Scaling 群組時,運作狀態檢查的寬限期為 300 秒。當您使用 AWS CLI 或建立「Auto Scaling」群組時,其預設值為 0 秒SDK。0 值表示關閉運作狀態檢查寬限期。

將此值設定得太高,可降低 Amazon EC2 Auto Scaling 運作狀態檢查的有效性。如果您針對執行個體啟動使用 lifecycle hook,則可將運作狀態檢查寬限期的值設為 0。使用生命週期掛鉤,Amazon EC2 Auto Scaling 提供了一種方法,可確保執行個體在進入InService狀態之前始終會初始化。如需詳細資訊,請參閱Amazon EC2 Auto Scaling lifecycle hook

寬限期適用於以下執行個體:

  • 新啟動的執行個體

  • 待命後重新投入服務的執行個體

  • 手動連接至群組的執行個體

重要

在運作狀態檢查寬限期內,如果 Amazon EC2 Auto Scaling 偵測到執行個體不再處於 Amazon EC2 running 狀態,則會立即標示執行個體Unhealthy並取代該執行個體。例如,如果您停止 Auto Scaling 群組中的執行個體,則會將該執行個體標示為 Unhealthy 並取代之。

設定群組的運作狀態檢查寬限期

您可以設定新的和現有 Auto Scaling 群組的運作狀態檢查寬限期。

Console
修改新群組的健全狀況檢查寬限期

建立 Auto Scaling 群組時,請在 [設定進階選項] 頁面、[健全狀況檢查]、[Health 檢查] 寬限期中輸入時間長度 (以秒為單位)。這是 Amazon EC2 Auto Scaling 在執行個體進入狀態後檢查執行個體運作狀態之前,必須等待多長時間。InService

AWS CLI
修改新群組的健全狀況檢查寬限期

將選--health-check-grace-period項加入至指create-auto-scaling-group令。以下範例針對名為 my-asg 的新 Auto Scaling 群組,設定運作狀態檢查寬限期,並將值設為 60 秒。

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg \ --health-check-grace-period 60 ...
Console
修改現有群組的健全狀況檢查寬限期
  1. 在開啟 Amazon EC2 主控台 https://console.aws.amazon.com/ec2/,然後從導覽窗格中選擇 Auto Scaling 群組

  2. 在螢幕上方的導覽列中,選擇您在建立 Auto Scaling 群組時所在的 AWS 區域 。

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

    頁面底部會開啟一個分割窗格。

  4. Details (詳細資訊) 索引標籤上,選擇 Health checks (運作狀態檢查)、Edit (編輯)。

  5. Health check grace period (運作狀態檢查寬限期) 之下,輸入時間量,以秒為單位。這是 Amazon EC2 Auto Scaling 在執行個體進入狀態後檢查執行個體運作狀態之前,必須等待多長時間。InService

  6. 選擇更新

AWS CLI
修改現有群組的健全狀況檢查寬限期

將選--health-check-grace-period項加入至指update-auto-scaling-group令。以下範例針對名為 my-asg 的現有 Auto Scaling 群組,設定運作狀態檢查寬限期,並將值設為 120 秒。

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \ --health-check-grace-period 120
注意

強烈建議還要設定 Auto Scaling 群組的預設執行個體預熱時間。如需詳細資訊,請參閱設定 Auto Scaling 群組的預設執行個體暖機期