天天看點

k8s探針

探針是由kubelet對容器執行的定期診斷。要執行診斷,kubelet調用由容器實作的Handler。有三類處理程式:

ExecAction:在容器内執行指定指令。如果指令退出時傳回碼為0認為診斷成功。

TCPSocketAction:對指定的容器ip:端口号進行TCP檢查。如果端口打開則診斷成功。

HTTPGetAction:對指定的容器ip:端口号/路徑執行HTTP Get請求。如果狀态碼大于等于200且小于400,診斷成功。

探測結果:

成功:

失敗:

未知:診斷失敗,不會采取任何行動

探測種類:

livenessProbe:存活檢測。探測失敗,kubelet會殺死容器,且容器服從其重新開機政策。不設該字段,預設Success

readinessProbe:就緒探測。探測失敗,端點控制器将從與pod比對的所有svc端點中删除pod的ip位址。

startupProbe:探測容器内應用是否已啟動。如果啟用startupProbe,則禁用其他探測,知道它成功為止。探測失敗,kubelet将殺死容器,容器服從重新開機政策

readinessProbe:

startupProbe:

//隻有startupProbe探測成功後才會交給livenessProbe。 startupProbe配置的是10*10s,是以隻要應用在100s内啟動都是OK的,而應用挂掉10s就會發現問題。