2017-09-17 5 views
0

私はkubernetes経由でスプリングアプリケーションをデプロイしました。複数のインスタンス(ポッド)が実行されています。私はプロセスの入力データとその状態(いくつかのresoureにロックを取る)を記録するためにpostgresのdbテーブルを使用します。今すぐK8のポッドを再起動してアプリケーションを再起動することがあります。 ポッドを再起動しているときに、リソースを解放するためにアプリケーションコードでシャットダウンフックを行う方法はありますか?それぞれのKubernetesポッドの再起動時にSpringにシャットダウンフックを登録します

答えて

1

ポッドを終了する前に、各容器にSIGTERMシグナルが送信されます。 Runtime.getRuntime().addShutdownHook(...);を使用して信号を処理する場合があります。アプリケーションは、デフォルトでは30秒の優雅な期間内にSIGTERMを処理する必要があります。グレースフル・ピリオドは、デプロイメント・スペックでオーバーライドされる可能性があります。

+0

多くのありがとうAlexander Matyushentsev。それがうまくいくことを願って – Rajat

関連する問題