スキップしてコンテンツを表示

CloudFormatio スタックが 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 (AWS CloudFormation スタック終了保護とロールバックトリガーを使用してインフラストラクチャの可用性を維持する)」を参照してください。

解決策

スタックしているリソースを特定する

次の手順を実行します。

  1. CloudFormation コンソールを開きます。
  2. ナビゲーションペインで [スタック] をクリックし、スタック状態のスタックを選択します。
  3. [リソース] タブを選択します。
  4. [リソース] セクションの [ステータス] 列を参照します。CREATE_IN_PROGRESS、UPDATE_IN_PROGRESS、DELETE_IN_PROGRESS のいずれかの状態でスタックしているリソースを検索します。
  5. AWS マネジメントコンソールでリソースに対応するサービスに関するリソースを調査します。
    注: たとえば、Amazon Elastic Container Service (Amazon ECS) サービスが作成状態のままになっている場合は、Amazon ECS コンソールでそのリソースを確認してください。

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

CloudTrail ログを確認する

次の手順を実行します。

  1. CloudFormation コンソールを開きます。
  2. ナビゲーションペインで [スタック] をクリックし、スタック状態のスタックを選択します。
  3. [リソース] タブを選択します。
  4. [リソース] セクションの [ステータス] 列を参照します。CREATE_IN_PROGRESS、UPDATE_IN_PROGRESS、DELETE_IN_PROGRESS のいずれかの状態でスタックしているリソースを検索します。
  5. [イベント] タブを選択して、CloudFormation がスタックしたリソースの作成を初期化したときのタイムスタンプを書き留めます。
  6. CloudTrail コンソールを開きます。
  7. ナビゲーションペインで [イベント履歴] を選択します。
  8. [時間範囲] に、手順 5 で記録した開始時刻 ([開始]) のタイムスタンプの日時を入力します。終了時刻 ([終了]) には、開始時刻から 5 分経過した日時を入力します。
    注: 例えば、CloudFormation が 2020 年 1 月 1 日の午前 9 時にスタックリソースの作成を初期化した場合、開始時間として 2020 年 1 月 1 日午前 9 時、終了時間として 2020 年 1 月 1 日午前 9 時 5 分を入力します。
  9. [適用] を選択します。
  10. 返されたイベントのリストで、自分のリソースの create API 呼び出しまたは update API 呼び出しに関連する API 呼び出しを探します。たとえば、Amazon Elastic Block Store (Amazon EBS) のボリューム更新用の ModifyVolume を検索できます。
    **ヒント:**API 呼び出しが CloudTrail ログに表示されるまで数分待ちます。API 呼び出しは、常にログにすぐに表示されるとは限りません。

タイムアウトをバイパスする

タイムアウトをバイパスしてスタックのステータスを解決できる場合があります。詳細については、「AWS CloudFormation で Amazon ECS サービスの安定化失敗を防ぐ方法を教えてください」、および「CloudFormation でステータスが DELETE_FAILED または DELETE_IN_PROGRESS で止まっている Lambda ベースのカスタムリソースを削除する方法を教えてください」を参照してください。

スタックが CREATE_IN_PROGRESS または UPDATE_IN_PROGRESS 状態のままになっている場合は、次のスタックオペレーションを使用して進行を停止できます。

注: 問題の根本原因を理解するには、「CloudFormation のトラブルシューティング」を参照してください。

コメントはありません

関連するコンテンツ