我試圖了解如何將流量路由到已開始關閉程序的 pod。
在 Spring Boot 檔案中提到
一旦 pre-stop hook 完成,SIGTERM 將被發送到容器并開始正常關閉,允許任何剩余的正在進行的請求完成。
Kubernetes 容器生命周期
但是在 Kubernetes 檔案中,我們有
Pod 的終止寬限期倒計時在 PreStop 鉤子執行之前開始,因此無論處理程式的結果如何,容器最終都會在 Pod 的終止寬限期內終止。沒有引數傳遞給處理程式。
集裝箱掛鉤
在 Kubernetes 檔案中它說The Pod's termination grace period countdown begins before the PreStop hook is executed這意味著 SIGTERM 在呼叫鉤子之前發送。這與 Spring Boot 所說的不矛盾Once the pre-stop hook has completed, SIGTERM will be sent to the container嗎?
uj5u.com熱心網友回復:
它按以下順序發生:
- 終止寬限期開始倒計時
- 預停止鉤子開始執行
- 預停掛鉤完成
- 向容器發出 SIGTERM,Spring Boot 開始關閉(如果配置了優雅關閉,則可能等待)
如果在任何時間點超過寬限期,則會發出 SIGKILL 并終止所有行程。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/456893.html
標籤:弹簧靴 Kubernetes
上一篇:從負載均衡器獲取日志
