本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
刪除 EC2 機群請求和機群中的執行個體
如果您不再需要某個 EC2 機群請求,可以將其刪除。刪除機群請求後,也會取消與機群相關的所有 Spot 請求,因此不會啟動新的 Spot 執行個體。
您在刪除 EC2 機群時,必須指定是否也要終止其所有執行個體。這包含隨需執行個體和 Spot 執行個體。對於 instant
機群,EC2 機群必須在機群刪除時終止執行個體。不支援具有執行中執行個體的已刪除 instant
機群。
如果指定在刪除機群請求時必須終止執行個體,則機群請求會進入 deleted_terminating
狀態。否則會進入 deleted_running
狀態,且執行個體會一直執行直到中斷或您手動終止。
限制
-
您可以在單一操作中刪除多達 25 個
instant
類型的機群。 -
您可以在單一操作中刪除多達 100 個
maintain
或request
類型的機群。 -
您可以在單一操作中刪除最多 125 個機群,前提是您不超過以上所指定每個機群類型的配額。
-
如果您超過要刪除的指定機群數量,則不會刪除任何機群。
-
不支援具有執行中執行個體的已刪除
instant
機群。當您刪除instant
機群時,Amazon EC2 會自動終止其所有執行個體。對於執行個體超過 1000 個的instant
機群,刪除請求可能會失敗。如果您的機群有超過 1000 個執行個體,請先手動終止大多數執行個體,保留 1000 個或更少的執行個體。然後刪除機群,剩餘的執行個體會自動終止。
刪除 EC2 機群請求並終止其執行個體
使用 delete-fleets--terminate-instances
參數來刪除指定的 EC2 機群請求,並終止其相關聯的執行個體。
aws ec2 delete-fleets \ --fleet-ids
fleet-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE
\ --terminate-instances
範例輸出
{
"UnsuccessfulFleetDeletions": [],
"SuccessfulFleetDeletions": [
{
"CurrentFleetState": "deleted_terminating",
"PreviousFleetState": "active",
"FleetId": "fleet-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE"
}
]
}
刪除 EC2 機群請求而不終止其執行個體
您可以使用 --no-terminate-instances
參數修改先前的命令,刪除指定的 EC2 機群請求,而不終止其相關聯的執行個體。
注意
--no-terminate-instances
不支援 instant
機群。
aws ec2 delete-fleets \ --fleet-ids
fleet-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE
\ --no-terminate-instances
範例輸出
{
"UnsuccessfulFleetDeletions": [],
"SuccessfulFleetDeletions": [
{
"CurrentFleetState": "deleted_running",
"PreviousFleetState": "active",
"FleetId": "fleet-4b8aaae8-dfb5-436d-a4c6-3dafa4c6b7dcEXAMPLE"
}
]
}
當機群無法刪除時進行故障診斷
如果 EC2 機群請求無法刪除,則輸出UnsuccessfulFleetDeletions
中會傳回 EC2 機群請求的 ID、錯誤碼和錯誤訊息。
錯誤代碼為:
-
ExceededInstantFleetNumForDeletion
-
fleetIdDoesNotExist
-
fleetIdMalformed
-
fleetNotInDeletableState
-
NoTerminateInstancesNotSupported
-
UnauthorizedOperation
-
unexpectedError
ExceededInstantFleetNumForDeletion
疑難排解
如果您在單一請求中嘗試刪除超過 25 個 instant
機群,則會傳回 ExceededInstantFleetNumForDeletion
錯誤。下列為此錯誤的範例輸出。
{ "UnsuccessfulFleetDeletions": [ { "FleetId": " fleet-5d130460-0c26-bfd9-2c32-0100a098f625", "Error": { "Message": "Can’t delete more than 25 instant fleets in a single request.", "Code": "ExceededInstantFleetNumForDeletion" } }, { "FleetId": "fleet-9a941b23-0286-5bf4-2430-03a029a07e31", "Error": { "Message": "Can’t delete more than 25 instant fleets in a single request.", "Code": "ExceededInstantFleetNumForDeletion" } } . . . ], "SuccessfulFleetDeletions": [] }
NoTerminateInstancesNotSupported
疑難排解
如果您指定在刪除 instant
機群時不得終止該機群中的執行個體,則會傳回 NoTerminateInstancesNotSupported
錯誤。--no-terminate-instances
不支援 instant
機群。下列為此錯誤的範例輸出。
{ "UnsuccessfulFleetDeletions": [ { "FleetId": "fleet-5d130460-0c26-bfd9-2c32-0100a098f625", "Error": { "Message": "NoTerminateInstances option is not supported for instant fleet", "Code": "NoTerminateInstancesNotSupported" } } ], "SuccessfulFleetDeletions": []
UnauthorizedOperation
疑難排解
如果沒有終止執行個體的許可,您在刪除必須終止其執行個體的機群時,會收到 UnauthorizedOperation
錯誤。以下是錯誤回應。
<Response><Errors><Error><Code>UnauthorizedOperation</Code><Message>You are not authorized to perform this operation. Encoded authorization failure message: VvuncIxj7Z_CPGNYXWqnuFV-YjByeAU66Q9752NtQ-I3-qnDLWs6JLFd KnSMMiq5s6cGqjjPtEDpsnGHzzyHasFHOaRYJpaDVravoW25azn6KNkUQQlFwhJyujt2dtNCdduJfrqcFYAjlEiRMkfDHt7N63SKlweKUl BHturzDK6A560Y2nDSUiMmAB1y9UNtqaZJ9SNe5sNxKMqZaqKtjRbk02RZu5V2vn9VMk6fm2aMVHbY9JhLvGypLcMUjtJ76H9ytg2zRlje VPiU5v2s-UgZ7h0p2yth6ysUdhlONg6dBYu8_y_HtEI54invCj4CoK0qawqzMNe6rcmCQHvtCxtXsbkgyaEbcwmrm2m01-EMhekLFZeJLr DtYOpYcEl4_nWFX1wtQDCnNNCmxnJZAoJvb3VMDYpDTsxjQv1PxODZuqWHs23YXWVywzgnLtHeRf2o4lUhGBw17mXsS07k7XAfdPMP_brO PT9vrHtQiILor5VVTsjSPWg7edj__1rsnXhwPSu8gI48ZLRGrPQqFq0RmKO_QIE8N8s6NWzCK4yoX-9gDcheurOGpkprPIC9YPGMLK9tug </Message></Error></Errors><RequestID>89b1215c-7814-40ae-a8db-41761f43f2b0</RequestID></Response>
若要解決錯誤,您必須將 ec2:TerminateInstances
動作新增至 IAM 政策,如下列範例所示。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DeleteFleetsAndTerminateInstances", "Effect": "Allow", "Action": [ "ec2:DeleteFleets" "ec2:TerminateInstances" ], "Resource": "*" } ] }