iT邦幫忙

2026 iThome 鐵人賽

DAY 18
0

容器正在執行,不代表應用程式真的能提供服務。程式可能尚未初始化完成,也可能卡住卻沒有結束。Kubernetes 提供三種常見探針,分別處理啟動、就緒與存活判斷,讓平台取得比程序是否存在更有意義的健康資訊。

Readiness Probe 用來判斷目前是否適合接收流量。檢查失敗時,Pod 會變成未就緒,一般 Service 流量不再送往該端點,但不會因此直接重啟容器。Liveness Probe 則判斷容器是否需要重新啟動,適合偵測無法自行恢復的卡死狀態。

Startup Probe 提供啟動階段的保護,在它成功前,其他兩種探針不會執行。對需要載入大量資料或初始化較久的程式,這能避免服務還沒準備好,就被存活檢查反覆重啟,形成一直無法成功啟動的循環。

探針可以使用網路請求或容器內命令等方法,但檢查內容要符合目的。把外部資料庫的短暫故障直接當成存活失敗,可能引發不必要的重啟潮。下一篇會以獨立檔案控制就緒結果,觀察停止接收流量與重新啟動之間的差別。

參考:存活、就緒與啟動探針


上一篇
DAY 17
下一篇
Day 19
系列文
我的 Pod 又掛了:30 天學會 Kubernetes 共 19 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言