Amazon ECS サービスデプロイを使用してサービス履歴を表示する - Amazon Elastic Container Service

Amazon ECS サービスデプロイを使用してサービス履歴を表示する

サービスデプロイは、デプロイの包括的なビューを提供します。サービスデプロイでは、サービスに関する次の情報が提供されます。

  • 現在デプロイされているワークロード設定 (ソースサービスリビジョン)

  • デプロイ中のワークロード設定 (ターゲットサービスリビジョン)

  • デプロイステータス

  • サーキットブレークが検出された失敗したタスク数

  • アラーム状態になっている CloudWatch アラーム

  • サービスデプロイが開始および完了した日時

  • ロールバックの詳細 (発生した場合)

サービスデプロイプロパティの詳細については、「Amazon ECS サービスデプロイに含まれるプロパティ」を参照してください。

サービスデプロイは読み取り専用で、それぞれに一意の ID があります。

サービスデプロイには 3 つのステージがあります。

ステージ 定義 関連付けられた状態
保留中 サービスデプロイが作成されたが、開始されていない 保留中
継続的 サービスデプロイが進行中
  • IN_PROGRESS

  • STOP_REQUESTED

  • ROLLBACK_REQUESTED (ロールバックのリクエスト済み)

  • ROLLBACK_IN_PROGRESS

完了 サービスデプロイが完了 (成功または失敗)
  • SUCCESSFUL

  • 停止

  • ROLLBACK_SUCCESSFUL

  • ROLLBACK_FAILED

サービスデプロイを使用して、サービスのライフサイクルを理解し、実行する必要があるアクションがあるかどうかを判断します。例えば、ロールバックが発生した場合は、サービスデプロイを調査し、サービスイベントを確認する必要がある場合があります。

コンソール、API、および AWS CLI を使用して、2024 年 10 月 25 日以降に作成されたデプロイの最新の 90 日間の履歴を表示できます。

完了していないデプロイを停止できます。詳細については、「Amazon ECS サービスデプロイの停止」を参照してください。

サービスデプロイのライフサイクル

Amazon ECS は、次のいずれかのアクションが発生すると、新しいサービスデプロイを自動的に作成します。

  • ユーザーがサービスを作成した。

  • ユーザーがサービスを更新し、[新しいデプロイの強制] オプションを使用した。

  • ユーザーが、デプロイを必要とする 1 つ以上のサービスプロパティを更新した。

Amazon ECS は、デプロイの実行時にサービスデプロイの進行状況を反映するために次のサービスデプロイプロパティを更新します。

  • ステータス

  • 実行中のタスク数

    サービスリビジョンに示されている実行中のタスク数が、実際に実行されているタスク数と等しくない場合があります。この数は、デプロイが完了したときに実行されているタスク数を表します。例えば、サービスデプロイとは関係なくタスクを起動した場合、それらのタスクはサービスリビジョンの実行タスク数に含まれません。

  • サーキットブレーカーの障害検出:

    • 開始に失敗したタスク数

  • CloudWatch アラームの障害検出

    • アクティブなアラーム

  • ロールバック情報:

    • 開始時刻

    • ロールバックの理由

    • ロールバックに使用されるサービスリビジョンの ARN

  • ステータスの理由

サービスを削除すると、Amazon ECS はサービスデプロイを削除します。

サービスデプロイの状態

サービスデプロイは PENDING 状態で開始されます。

次の図は、PENDING 状態の後に発生する可能性のあるサービスデプロイの状態を示します: IN_PROGRESSROLLBACK_REQUESTEDSUCCESSFULSTOP_REQUESTEDROLLBACK_IN_PROGRESSSROLLBACK_FAILEDROLLBACK_SUCCESSFULSTOPPED

IN_PROGRESS 状態の後に発生する可能性のあるサービスデプロイ STOP_REQUESTED、SUCCESSFUL、および ROLLBACK_IN_PROGRESS 状態。

以下の情報は、サービスデプロイの状態に関する詳細を提供します。

  • PENDING - サービスデプロイは作成されましたが、開始されていません。

    状態は、そこから IN_PROGRESSROLLBACK_REQUESTEDSTOP_REQUESTEDSTOPPED のいずれかに移行します。

  • IN_PROGRESS - サービスデプロイが進行中です。

    状態は、そこから SUCCESSFULSTOP_REQUESTEDROLLBACK_REQUESTEDROLLBACK_IN_PROGRESSSTOPPED のいずれかに移行します。

  • STOP_REQUESTED - 次のいずれかが発生すると、サービスデプロイの状態は STOP_REQUESTED に移行します。

    • ユーザーが新しいサービスデプロイを開始した。

    • ロールバックオプションが障害検出メカニズム (サーキットブレーカーまたはアラームベース) に使用されていないため、サービスが SUCCESSFUL 状態に達しない。

    状態は STOPPED に移行します。

  • ROLLBACK_REQUESTED – ユーザーがコンソール、API、または CLI を介してロールバックをリクエストすると、サービスのデプロイ状態は ROLLBACK_REQUESTED に移行します。

    状態は、そこから SUCCESSFULROLLBACK_IN_PROGRESSSTOPPED のいずれかに移行します。

  • SUCCESSFUL - サービスデプロイが正常に完了すると、サービスデプロイの状態は SUCCESSFUL に移行します。

  • ROLLBACK_IN_PROGRESS - ロールバックオプションが障害検出メカニズム (サーキットブレーカーまたはアラームベース) に使用されていて、サービスが失敗すると、サービスデプロイの状態は ROLLBACK_IN_PROGRESS に移行します。

    状態は ROLLBACK_SUCCESSFUL または ROLLBACK_FAILED に移行します。