AWS CloudFormation スタックが現在、次のいずれかの状態のままになっています。
CREATE_IN_PROGRESS
UPDATE_IN_PROGRESS
UPDATE_ROLLBACK_IN_PROGRESS
DELETE_IN_PROGRESS
この問題を解決する方法を教えてください。
解決方法
ほとんどの場合、CloudFormation スタックがタイムアウトするまで待つ必要があります。タイムアウトの長さはさまざまで、CloudFormation が希望する状態になるまで待機するそれぞれのリソースの安定化要件に基づきます。
スタックのタイムアウトを制御し、ロールバックトリガーを使用して、CloudFormation が待機する時間の長さを制御できます。ロールバックトリガーの詳細については、「Use AWS CloudFormation Stack Termination Protection and Rollback Triggers to Maintain Infrastructure Availability」をご参照ください。
一部のカスタムリソースと Amazon Elastic Container Service (Amazon ECS) リソースのタイムアウトをバイパスできます。どのリソースが停止しているかを確認し、待機する必要があるか、またはタイムアウトをバイパスできるかを判断するには、次の手順を実行します。
停止しているリソースを特定する
- CloudFormation コンソールを開きます。
- ナビゲーションペインで [Stacks] を選択し、変化しない状態のスタックをクリックします。
- [Resources] (リソース) タブを選択します。
- [Resources] (リソース) セクションの [Status] (ステータス) 列で、スタックの作成、更新、または削除のプロセスが開始しているがまだ完了していないリソースを見つけます。
注: 探しているリソースは、CREATE_IN_PROGRESS、UPDATE_IN_PROGRESS、または DELETE_IN_PROGRESS 状態の可能性があります。
- AWS マネジメントコンソールで、リソースに対応するサービスのリソースを調べます。
注: コンソールは、停止しているリソースによって異なります。例えば、Amazon ECS サービスが作成状態のままとなっている場合は、Amazon ECS コンソールでそのリソースを確認します。
AWS CloudTrail ログを確認する
対応するコンソールでリソースのエラーが表示されない場合は、CloudTrail ログで問題をトラブルシューティングできます。CloudTrail ログの表示については、「CloudTrail イベント履歴でのイベントの表示」をご参照ください。
- CloudFormation コンソールを開きます。
- ナビゲーションペインで [Stacks] を選択し、変化しない状態のスタックをクリックします。
- [Resources] (リソース) タブを選択します。
- [Resources] (リソース) セクションの [Status] (ステータス) 列で、スタックの作成、更新、または削除のプロセスが開始しているがまだ完了していないリソースを見つけます。
注: 探しているリソースは、CREATE_IN_PROGRESS、UPDATE_IN_PROGRESS、または DELETE_IN_PROGRESS 状態の可能性があります。
- [Events] タブを選択し、CloudFormation がそのスタック状態のリソースの生成を初期化したときのタイムスタンプをメモします。
- CloudTrail コンソールを開きます。
- ナビゲーションペインで [Event history] をクリックします。
- [Time range] にステップ 5 でメモした開始時刻のタイムスタンプの日付と時刻 (From) を入力します。終了時刻 ([To] (終了)) には、開始時刻から 5 分経過した日時を入力します。
注: 例えば、CloudFormation が停止状態のリソースの作成を 2020 年 1 月 1 日午前 9 時に初期化した場合、開始時刻として 2020-01-01 09:00 AM、終了時刻として 2020-01-01 9:05 AM と入力します。
- [Apply] (適用) を選択します。
- 返されたイベントのリストで、リソースの API 呼び出しの作成または更新に関連する API 呼び出しを見つけます。たとえば、Amazon Elastic Block Store (Amazon EBS) ボリュームの更新用の ModifyVolume があります。
ヒント: API 呼び出しが CloudTrail ログに表示されるまで、数分待ってください。API コールは、必ずしもログに即時に表示されるとは限りません。
カスタムリソースと Amazon ECS サービスのタイムアウトをバイパスする
状況によっては、タイムアウトをバイパスして、スタックを停止状態からすばやく解除できます。このような状況には、カスタムリソースや Amazon ECS サービスが含まれます。詳細については、次の記事をご参照ください。