CloudFormation スタックが IN_PROGRESS 状態のままになっているのはなぜですか?

所要時間1分
0

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) リソースのタイムアウトをバイパスできます。どのリソースが停止しているかを確認し、待機する必要があるか、またはタイムアウトをバイパスできるかを判断するには、次の手順を実行します。

停止しているリソースを特定する

  1. CloudFormation コンソールを開きます。
  2. ナビゲーションペインで [Stacks] を選択し、変化しない状態のスタックをクリックします。
  3. [Resources] (リソース) タブを選択します。
  4. [Resources] (リソース) セクションの [Status] (ステータス) 列で、スタックの作成、更新、または削除のプロセスが開始しているがまだ完了していないリソースを見つけます。
    注: 探しているリソースは、CREATE_IN_PROGRESS、UPDATE_IN_PROGRESS、または DELETE_IN_PROGRESS 状態の可能性があります。
  5. AWS マネジメントコンソールで、リソースに対応するサービスのリソースを調べます。
    注: コンソールは、停止しているリソースによって異なります。例えば、Amazon ECS サービスが作成状態のままとなっている場合は、Amazon ECS コンソールでそのリソースを確認します。

AWS CloudTrail ログを確認する

対応するコンソールでリソースのエラーが表示されない場合は、CloudTrail ログで問題をトラブルシューティングできます。CloudTrail ログの表示については、「CloudTrail イベント履歴でのイベントの表示」をご参照ください。

  1. CloudFormation コンソールを開きます。
  2. ナビゲーションペインで [Stacks] を選択し、変化しない状態のスタックをクリックします。
  3. [Resources] (リソース) タブを選択します。
  4. [Resources] (リソース) セクションの [Status] (ステータス) 列で、スタックの作成、更新、または削除のプロセスが開始しているがまだ完了していないリソースを見つけます。
    注: 探しているリソースは、CREATE_IN_PROGRESS、UPDATE_IN_PROGRESS、または DELETE_IN_PROGRESS 状態の可能性があります。
  5. [Events] タブを選択し、CloudFormation がそのスタック状態のリソースの生成を初期化したときのタイムスタンプをメモします。
  6. CloudTrail コンソールを開きます。
  7. ナビゲーションペインで [Event history] をクリックします。
  8. [Time range] にステップ 5 でメモした開始時刻のタイムスタンプの日付と時刻 (From) を入力します。終了時刻 ([To] (終了)) には、開始時刻から 5 分経過した日時を入力します。
    注: 例えば、CloudFormation が停止状態のリソースの作成を 2020 年 1 月 1 日午前 9 時に初期化した場合、開始時刻として 2020-01-01 09:00 AM、終了時刻として 2020-01-01 9:05 AM と入力します。
  9. [Apply] (適用) を選択します。
  10. 返されたイベントのリストで、リソースの API 呼び出しの作成または更新に関連する API 呼び出しを見つけます。たとえば、Amazon Elastic Block Store (Amazon EBS) ボリュームの更新用の ModifyVolume があります。
    ヒント: API 呼び出しが CloudTrail ログに表示されるまで、数分待ってください。API コールは、必ずしもログに即時に表示されるとは限りません。

カスタムリソースと Amazon ECS サービスのタイムアウトをバイパスする

状況によっては、タイムアウトをバイパスして、スタックを停止状態からすばやく解除できます。このような状況には、カスタムリソースや Amazon ECS サービスが含まれます。詳細については、次の記事をご参照ください。


AWS公式
AWS公式更新しました 1年前