Runtime Manager は、Mule アプリケーションを初めてデプロイしたときや、Runtime Fabric にデプロイされている既存の Mule アプリケーションに変更を加えたときに、デプロイメント状況メッセージを表示します。
-
これらの状況は、Deleted (削除)、Applying (適用中)、Applied (適用済み)、Failed (失敗)、Unknown (不明) メッセージなど、一般的なアプリケーションデプロイメントに関連しています。
-
これらの状況は、新規設定または変更した設定をデプロイ済みの Mule アプリケーションに適用する場合に表示されます。
-
警告メッセージの状況状態
これらの状況は、デプロイメントの進行中に警告メッセージを受信した場合に表示されます。 -
アプリケーション名前空間の状況状態
これらの状況は、デプロイメント中にアプリケーションの名前空間に問題がある場合に表示されます。
警告メッセージの状況状態
Mule アプリケーションをデプロイしたり、または Runtime Fabric にデプロイされている既存の Mule アプリケーションに変更を加えたりすると、Runtime Manager は少し待ってから、報告されたレプリカの状況を能動的にチェックし始めます。状況が STARTED または STOPPED 以外の場合は、警告メッセージが表示されます。 警告メッセージは、Mule アプリケーションやクラスターに何か問題があることを意味しているとは限りません。警告メッセージには一時的な障害と永続的な障害を通知するものがあるため、メッセージの意味を理解することが重要です。
警告メッセージは「1 or more replicas in unexpected state: (1 つ以上のレプリカが想定外の状態にあります)」で始まり、その後に具体的な説明が続きます。例:
1 or more replicas in unexpected state: [Kubernetes] Container "any point-monitoring" - PodInitializing
| 警告メッセージが表示されたままで、問題が自動的に解決しない場合は、IT 部門や開発者チームと協力して、デプロイメントとポッドの状態を確認してトラブルシューティングを実施してください。 |
永続的な警告メッセージと一時的な警告メッセージ
通常、永続な警告メッセージでは問題を修正するためのアクションが必要です。一方、一時的な警告メッセージはしばらくすると消えます。警告メッセージが適切な時間で消えない場合は、Kubernetes 管理者に連絡してください。
たとえば、ノードが動作を停止した場合、いくつかのポッドが一時的に保留される可能性があります。Kubernetes 管理者がそのノードを手動で再起動する必要があったり、再起動に時間がかかったりすることもあります。
Mule アプリケーションのデプロイ時にデータベースや JMS サーバーなどの外部連動関係が停止していると Mule アプリケーションが起動できないため、CrashLoopBackOff 警告が返されることがあります。この警告メッセージは、必要なサービスが起動すれば自動的に消えます。ただし、デプロイメントアーティファクトに何か問題がある場合には、この警告メッセージは表示されたままになります。
警告メッセージの説明
次の表で、さまざまな種類の警告メッセージの一部を説明しています。警告メッセージの完全なリストは、Kubernetes のドキュメントを参照してください。
| 警告の状況 | 型 | 説明 | 例 |
|---|---|---|---|
PodInitializing |
通常は一時的 |
Mule アプリケーションのポッドに含まれる一部のコンテナの準備ができていないため、ポッドの初期化が遅れています。通常は、ポッドが初期化されるまで待てば解決します。デプロイメントに本質的な問題がある場合は、別の警告に変わります。 |
|
CrashLoopBackOff |
通常は永続的 |
Mule アプリケーションのイメージに問題があり、アプリケーションがクラッシュします。 |
|
スケジュール不可 |
通常は一時的 |
要求されたレプリカを実行できるノードがありません。理由は次のとおりです。 * メンテナンスのためにノードが停止している。 |
ポッドの状況の詳細については、 Kubernetes 公式ドキュメントを参照してください。Kubernetes 管理者に連絡して、状態が深刻であるかどうかを確認し、必要であればトラブルシューティングの方法について助言を求めてください。
警告メッセージの例
CrashLoopBackOff の例
次の例の警告メッセージは、破損したアーティファクトがアップロードされ、デプロイ中に Mule アプリケーションがクラッシュしたため、Mule アプリケーションのイメージに問題があることを示しています。
Kubernetes 管理者は、コマンドラインインターフェースで次のコマンドを実行することで、エラーや警告の状況も取得できます。
kubectl get deployments,pods --namespace <ENVIRONMENT_NAMESPACE>
例:
➜ ~ kubectl get deployments,pods --namespace 788a26d2-a837-4336-aa7b-1f367cf70d7d
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/omg-s1-now 0/1 1 0 20m
NAME READY STATUS RESTARTS AGE
pod/omg-s1-now-78b7ffd454-h5x5n 1/2 CrashLoopBackOff 8 (2m57s ago) 20m
スケジュール不可の例
次の例では、3 つのノードが利用できないためにスケジュール不可であることを示す警告メッセージが表示されています。
Kubernetes 管理者は、コマンドラインインターフェースで次のコマンドを実行することで、エラーや警告の状況も取得できます。
kubectl get deployments,pods --namespace <ENVIRONMENT_NAMESPACE>
例:
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/omg-s1-now 0/1 1 0 170m
NAME READY STATUS RESTARTS AGE
pod/omg-s1-now-58dd54d9f-xt569 0/2 Pending 0 4s
pod/omg-s1-now-6c5c5d987c-fbmbl 0/2 Pending 0 50m
アプリケーション名前空間状況の状態
次の表は、アプリケーションと認証済みの名前空間に問題がある場合に表示される状況の一覧です。これらの状況の先頭には [Runtime Fabric] が付けられます。
| 状況と説明 | 型 |
|---|---|
現在の環境 <env_id> には既存の名前空間 <app_namespace> があります。このデプロイを続行するには、必要な表示ラベルを使用してカスタム名前空間を作成してください。カスタム名前空間の作成の詳細については、ドキュメントを参照してください。 |
Permanent (永続的) |
名前空間の選択に失敗しました。同じ rtf.mulesoft.com/envId=<env_id> および rtf.mulesoft.com/agentNamespace=<agent_namespace> アノテーションを持つ複数の名前空間 <namespaces name> が見つかりました。単一の名前空間は、指定された環境 ID と RTF 名前空間のペアでアノテーションできます。 |
Permanent (永続的) |
環境 '%s' に対応するアプリケーション名前空間が見つかりません。正しいアプリケーション名前空間で ConfigMap を更新してください。認証済みの名前空間の 設定については、ドキュメントを参照してください。 |
Permanent (永続的) |
アプリケーション名前空間 <app_namespace> に正しい表示ラベルが付けられていません。現在のエージェントデプロイメントの名前空間は、rtf.mulesoft.com/agentNamespace=<agent_namespace> で表示ラベルを付ける必要があります。 |
Permanent (永続的) |
アプリケーション名前空間 <app_namespace> に正しい表示ラベルが付けられていません。現在のエージェントデプロイメントの名前空間は、適切な rtf.mulesoft.com/envId で表示ラベルを付ける必要があります (空白でした)。 |
Permanent (永続的) |
名前空間の選択に失敗しました。同じ rtf.mulesoft.com/envId=<env_id> アノテーションを持つ複数の名前空間が見つかりました。単一の名前空間には、任意の環境 ID でアノテーションできます。 |
Permanent (永続的) |