EC2 フリートリクエストおよびフリート内のインスタンスを削除する - Amazon Elastic Compute Cloud

EC2 フリートリクエストおよびフリート内のインスタンスを削除する

EC2 フリートリクエストが不要になった場合には削除できます。フリートリクエストを削除すると、そのフリートに関連付けられているすべてのスポットリクエストがキャンセルされるため、新しいスポットインスタンスは起動されません。

EC2 フリートリクエストを削除するときは、そのインスタンスをすべて終了させるかどうかを指定する必要があります。これには、オンデマンドインスタンスとスポットインスタンスの両方が含まれます。instant フリートの場合、EC2 フリートはフリートの削除時にインスタンスを終了する必要があります。実行中のインスタンスを持つ削除した instant フリートはサポートされていません。

フリートリクエストを削除するときに、インスタンスを終了するように指定した場合、フリートリクエストは deleted_terminating 状態に移行します。それ以外の場合は deleted_running 状態になり、インスタンスは中断または手動終了されるまで、引き続き実行されます。

制限事項
  • 1 回の操作で最大 25 個の instant タイプのフリートを削除できます。

  • 1 回の操作で最大 100 個の maintain または request タイプのフリートを削除できます。

  • 上記のように、各フリートタイプのクォータを超えない場合は、1 回の操作で最大 125 個のフリートを削除できます。

  • 削除するフリートの指定された数を超えると、フリートは削除されません。

  • instant フリートを削除するために、1 回の操作で最大 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-instancesinstant フリートではサポートされていません。

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 のトラブルシューティング

1 回のリクエストで 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-instancesinstant フリートではサポートされていません。このエラーの出力例を次に示します。

{ "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": "*" } ] }