本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
為您的 Auto Scaling 群組設定自訂健康狀態檢查
您可以使用自訂運作狀態檢查來補充 Amazon EC2 Auto Scaling 提供的現有運作狀態檢查選項。透過將自訂運作狀態檢查與其他健康狀態檢查類型相結合,您可以建立針對應用程式需求量身打造的全方位健康監控系統。
若要開始使用,請建立自訂測試以驗證 Auto Scaling 群組中的執行個體是否正常運作,並且可以處理傳入流量。如果您設定的運作狀態檢查偵測到執行個體沒有回應,請將該特定執行個體標記為Unhealthy
,這會導致 Amazon EC2 Auto Scaling 立即取代該執行個體。
您可以使用 AWS CLI 或將執行個體的運作狀態直接傳送到 Amazon EC2 Auto Scaling SDK。下列範例說明如何使用設定執 AWS CLI 行個體的健全狀態,然後驗證執行個體的健全狀態。
使用下列set-instance-health命令,將指定執行個體的健全狀況狀態設定為
。Unhealthy
aws autoscaling set-instance-health --instance-id
i-1234567890abcdef0
--health-statusUnhealthy
根據預設,此指令遵循運作狀態檢查寬限期。但是,您可以覆寫這個行為,藉由納入 --no-should-respect-grace-period
選項而不遵守寬限期。
使用下列describe-auto-scaling-groups命令驗證執行個體的健全狀態是否為Unhealthy
。
aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names
my-asg
以下是範例回應,顯示執行個體的健全狀態為Unhealthy
,且執行個體正在終止。
{
"AutoScalingGroups": [
{
....
"Instances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-1234567890abcdef0"
},
"InstanceId": "i-1234567890abcdef0",
"InstanceType": "t2.micro",
"HealthStatus": "Unhealthy",
"LifecycleState": "Terminating"
},
...
]
}
]
}