このトピックでは、Pod(Elastic Container Instance)のライフサイクルにおけるさまざまなステータスについて説明します。ステータスに基づいてビジネスロジックを設計および実装できます。Elastic Container Instance は Kubernetes とシームレスに接続されています。Elastic Container Instance を Kubernetes クラスタ内の Pod として直接使用できます。
Pod のステータス
次の表は、ライフサイクル中の Pod のステータスについて説明しています。
Elastic Container Instance 内の Pod のステータス | 説明 | Kubernetes 内の Pod のステータス | 課金対象 |
Scheduling | Pod は作成中です。 | Pending | いいえ |
Pending | Pod 内の 1 つ以上のコンテナが起動中で、実行中のコンテナはありません。 | Pending | はい |
Running | Pod 内のすべてのコンテナが作成され、少なくとも 1 つのコンテナが実行中または再起動中です。 | Running | はい |
Restarting | Pod は再起動中です。 | Pending | はい |
Updating | Pod は更新中です。 | Pending | はい |
Terminating | Pod は終了処理中です。preStop が設定された実行中の Pod が削除されると、Pod は Terminating 状態になります。preStop 関数を実行すると、Pod は削除されます。 | Running | はい |
Succeeded | Pod 内のすべてのコンテナは、正常に実行された後に終了し、再起動しません。 | Succeeded | いいえ |
Failed | Pod 内のすべてのコンテナは、実行後に終了します。少なくとも 1 つのコンテナがランタイムエラーのために終了しました。これは、コンテナがゼロ以外のコードで終了したか、システムによって終了されたことを示します。 | Failed | いいえ |
Expired | Pod はプリエンティブルインスタンスであり、リソースの有効期限切れとリサイクルのために終了しました。 | Failed | いいえ |
ScheduleFailed | Pod の作成に失敗しました。システムは 24 時間後に Pod を削除し、Pod の料金は発生しません。 | Failed | いいえ |
Elastic Container Instance の再起動ポリシーは、インスタンス内のコンテナにのみ適用されます。Elastic Container Instance 自体は自動的に再起動しません。
次の図は、ライフサイクル中の Elastic Container Instance の状態遷移を示しています。
Elastic Container Instance が終了すると、基盤となるコンピューティングリソースはリサイクルされます。デフォルトでは、インスタンスと一緒に作成された Elastic IP アドレス(EIP)などのその他のリソースは、インスタンスと一緒に解放されます。
最終ステータス(Failed、Succeeded、または Expired)のインスタンスのメタデータは、次のルールに基づいて保持されます。
すべてのメタデータ情報は、インスタンスが最終ステータスになってから 1 時間以内は保持されます。
インスタンスが最終ステータスになってから 1 時間後、各リージョンで最新のメタデータ情報 100 件のみが保持されます。
コンテナのステータス
ステータス | 説明 |
Waiting | コンテナは作成待ちです。 通常、アプリケーションコンテナは、InitContainer が実行されている間、InitContainer が終了するまで Waiting 状態のままです。 |
Running | コンテナは作成され、実行中です。 |
Terminated | コンテナは終了し、正常に実行された後、または失敗した後に終了します。 |