本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
檢視運作狀態檢查狀態和運作狀態檢查失敗的原因
運作狀態檢查可讓 Amazon EC2 Auto Scaling 判斷執行個體何時運作狀態不佳且應終止。對於保留在 Stopped
狀態的暖集區執行個體,它會利用 Amazon EBS擁有Stopped
執行個體可用性的知識來識別運作狀態不佳的執行個體。它透過呼叫 DescribeVolumeStatus
API來判斷連接到執行個體的EBS磁碟區狀態來執行此操作。對於保持 Running
狀態的暖集區執行個體,它依賴EC2狀態檢查來判斷執行個體的運作狀態。雖然暖集區執行個體沒有運作狀態檢查寬限期,但 Amazon EC2 Auto Scaling 不會開始檢查執行個體運作狀態,直到生命週期掛鉤完成為止。
當發現執行個體運作狀態不佳時,Amazon EC2 Auto Scaling 會自動刪除運作狀態不佳的執行個體,並建立新的執行個體來取代執行個體。執行個體在運作狀態檢查失敗後,通常會在幾分鐘內遭到終止。如需詳細資訊,請參閱檢視運作狀態檢查失敗的原因。
亦支援自訂運作狀態檢查。如果您有自己的運作狀態檢查系統,可以偵測執行個體的運作狀態,並將此資訊傳送至 Amazon EC2 Auto Scaling,這會很有幫助。如需詳細資訊,請參閱為您的 Auto Scaling 群組設定自訂健康狀態檢查。
在 Amazon EC2 Auto Scaling 主控台上,您可以檢視暖集區執行個體的狀態 (運作狀態良好或運作狀態不佳)。您也可以使用 AWS CLI 或其中一個 檢視其運作狀態SDKs。
檢視暖集區執行個體的狀態 (主控台)
在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/
,然後從導覽窗格中選擇 Auto Scaling 群組。 -
選取 Auto Scaling 群組旁的核取方塊。
Auto Scaling groups (Auto Scaling 群組) 頁面底部會開啟一個分割窗格。
-
在 Instance management (執行個體管理) 索引標籤的 Warm pool Instances (暖集區執行個體) 中,Lifecycle (生命週期) 資料欄會包含執行個體的狀態。
運作狀態欄顯示 Amazon EC2 Auto Scaling 已針對執行個體運作狀態所做的評估。
注意
新執行個體以良好的運作狀態開始啟動。在 lifecycle hook 完成之前,系統不會檢查執行個體的運作狀態。
檢視運作狀態檢查失敗的原因 (主控台)
在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/
,然後從導覽窗格中選擇 Auto Scaling 群組。 -
選取 Auto Scaling 群組旁的核取方塊。
Auto Scaling groups (Auto Scaling 群組) 頁面底部會開啟一個分割窗格。
-
在 Activity (活動) 索引標籤的 Activity history (活動歷史記錄) 中,Status (狀態) 欄位會顯示 Auto Scaling 群組是否已成功啟動或終止執行個體。
若其已終止任何運作狀態不佳的執行個體,Cause (原因) 資料欄會顯示終止的日期和時間,以及運作狀態檢查失敗的原因。例如,「在 2021-04-01T21:48:35Z 時,為了回應EBS磁碟區運作狀態檢查失敗,執行個體已停止服務」。
檢視暖集區執行個體的狀態 (AWS CLI)
使用以下describe-warm-pool命令檢視 Auto Scaling 群組的暖集區。
aws autoscaling describe-warm-pool --auto-scaling-group-name
my-asg
範例輸出。
{
"WarmPoolConfiguration": {
"MinSize": 0,
"PoolState": "Stopped"
},
"Instances": [
{
"InstanceId": "i-0b5e5e7521cfaa46c",
"InstanceType": "t2.micro",
"AvailabilityZone": "us-west-2a",
"LifecycleState": "Warmed:Stopped",
"HealthStatus": "Healthy",
"LaunchTemplate": {
"LaunchTemplateId": "lt-08c4cd42f320d5dcd",
"LaunchTemplateName": "my-template-for-auto-scaling",
"Version": "1"
}
},
{
"InstanceId": "i-0e21af9dcfb7aa6bf",
"InstanceType": "t2.micro",
"AvailabilityZone": "us-west-2a",
"LifecycleState": "Warmed:Stopped",
"HealthStatus": "Healthy",
"LaunchTemplate": {
"LaunchTemplateId": "lt-08c4cd42f320d5dcd",
"LaunchTemplateName": "my-template-for-auto-scaling",
"Version": "1"
}
}
]
}
檢視運作狀態檢查失敗的原因 (AWS CLI)
使用下列 describe-scaling-activities 命令。
aws autoscaling describe-scaling-activities --auto-scaling-group-name
my-asg
以下為回應範例,其中 Description
表示您的 Auto Scaling 群組已終止執行個體,而 Cause
則指出運作狀態檢查失敗的原因。
擴展活動依開始時間排序。首先描述仍在進行中的活動。
{
"Activities": [
{
"ActivityId": "4c65e23d-a35a-4e7d-b6e4-2eaa8753dc12",
"AutoScalingGroupName": "my-asg",
"Description": "Terminating EC2 instance: i-04925c838b6438f14",
"Cause": "At 2021-04-01T21:48:35Z an instance was taken out of service in response to EBS volume health check failure.",
"StartTime": "2021-04-01T21:48:35.859Z",
"EndTime": "2021-04-01T21:49:18Z",
"StatusCode": "Successful",
"Progress": 100,
"Details": "{\"Subnet ID\":\"subnet-5ea0c127\",\"Availability Zone\":\"us-west-2a\"...}",
"AutoScalingGroupARN": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:283179a2-f3ce-423d-93f6-66bb518232f7:autoScalingGroupName/my-asg"
},
...
]
}