Kubernetes ポッドにデプロイされたアプリケーションは、Jenkins-X 2 では正常にポッドを作成していましたが、Jenkins-X 3 では失敗しました。

Kubernetes ポッドにデプロイされたアプリケーションは、Jenkins-X 2 では正常にポッドを作成していましたが、Jenkins-X 3 では失敗しました。

他のリソースにアクセスできるようにするために、永続的なポッドとしてクラスター内にデプロイする必要があるアプリケーションを継承しましたが、このアプリケーションは、ユーザーがポッドに入ったときにオンデマンドでのみ実行されます。初期化時には、後日kubectl execユーザーがポッドにアクセスできるようにする以外、何もする必要はありません。exec

これは古い Jenkins-X 2 クラスターでは正常に動作しますが、新しい Jenkinx-X 3 バージョンでは動作しません。

展開されると、ステータスは次のライフサイクルを経るようです。

Running
Completed
CrashLoopBackOff

しかし、kubectl logs -n <<namespace>> <<podname>> -pエラーは表示されず、kubectl describe pod -n <<namespace>> <<podname>>セクションにContainers/<<appname>>

    State:          Waiting
      Reason:       CrashLoopBackOff
    Last State:     Terminated
      Reason:       Completed
      Exit Code:    0

CrashLoopBackoff一貫性がないように見えます。最後の状態がTerminatedbecauseでCompleted、 が0 になっている理由がわかりませんExit Code。私が見る限り、アプリケーションは失敗しておらず、Kubernetes がポッドを実行したままにするのではなく、完了としてシャットダウンしているため、どういうわけか CrashLoopBackoff でスタックしているだけです。

これは、要求に対応するために継続的に実行されているプロセスが見つからないために準備プローブまたは生存プローブが強制終了したことによるものではないかと考えましたが、それらを削除したり、古いバージョンに戻したりしても、何も変わらないようです。

おそらく、古いバージョンと新しいバージョンの間でグラフに何か問題が生じているのでしょうが、どこを調べればよいのかわかりません。原因として考えられるものはありますか?

関連情報