云容器实例 CCI-存活探针(liveness probe):存活探针
存活探针
Kubernetes提供了自愈的能力,具体就是能感知到容器崩溃,然后能够重启这个容器。但是有时候例如Java程序内存泄漏了,程序无法正常工作,但是JVM进程却是一直运行的,对于这种应用本身业务出了问题的情况,kubernetes提供了liveness probe机制,通过检测容器响应是否正常来决定是否重启,这是一种很好的健康检查机制。
毫无疑问,每个pod最好都定义liveness probe,否则Kubernetes无法感知Pod是否正常运行。
当前云容器实例支持如下两种探测机制。
- HTTP GET:向容器发送HTTP GET请求,如果probe收到2xx或3xx,说明容器是健康的。
需要为pod配置以下annotation使超时时间(timeoutSeconds)生效:
cci.io/httpget-probe-timeout-enable:"true"
具体请参见Liveness Probe高级配置样例。
- Exec:probe执行容器中的命令并检查命令退出的状态码,如果状态码为0则说明健康。