GCE:健康檢查和Liveness Probe
在為網路負載平衡創建目標池時,有一個
health check
選項。還有一個
livenessProbe
在容器規範中命名的屬性。活性探針檢查配置它的容器是否仍在執行。如果 liveness 探測失敗,kubelet 會殺死容器,容器將受到其重啟策略的約束。通過配置 pod 配置的 template.spec.containers.livenessprobe 節來設置活動檢查。
容器配置時是否不需要健康檢查
livenessProbe
?據我了解,如果容器關閉,POD 將自動重啟。在這種情況下,不需要進行健康檢查。
NODE 宕機了怎麼辦?據我了解,kubernetes 將在另一個 NODE 中啟動 POD,這意味著 POD 將再次重新啟動。
在我看來,無論如何,配置 livenessProbe 時都不需要進行健康檢查。
負載均衡器和 Kubernetes 的健康檢查是分開的,您可能應該同時擁有這兩者。
負載均衡器執行狀況檢查是為了讓負載均衡器知道特定的後端 VM 可以提供流量。它適用於 Compute Engine 虛擬機級別,並將特定虛擬機標記為健康或不健康。因此,如果一個節點出現故障,它將知道不將流量引導到該特定節點。它用於在到達 Kubernetes 集群之前的流量。如果節點出現故障,Kubernetes 執行狀況探測將無法幫助您,因為這僅適用於已進入集群的流量。Kubernetes 只能處理它可以看到的流量。
一旦流量進入集群,Kubernetes 就會將流量引導到容器中,一切都是健康的。如果沒有健康檢查,這將是處於執行狀態的容器。即使您的容器可能正在執行,它也可能尚未準備好為流量提供服務。Liveliness/Readiness 探針為 Kubernetes 提供了一種了解容器是否已啟動並準備好為流量提供服務的方法。