首页 » 运维 » 正文

Kubernetes Liveness Readiness 区别

在kubernetes中有两种负责健康检查的Probe, 分别是Liveness probe 和Readiness Probe

我们最常见到的应该是Liveness probe

例如:

其中periodSeconds 是控制多久执行一次livenessProbe,这个例子中是说每隔5秒就要去执行一次检查

initialDelaySeconds是控制说刚启动Pod的时候你要等5秒,给Pod一点启动时间再去检查

如果我们的LivenessProbe检查通过,也就是 cat /tmp/healthy(在容器中)能够正常执行,那么Kubernetes就认为Pod是健康的,否则,就认为是不健康的,kubernetes会重启这个Pod,尝试修复问题

除了支持命令行外,livenessProbe还支持TCP和HTTP检查

例如:

readinessProbe

readinessProbe 和livenessProbe类似,都是做检查的

区别在于,readinessProbe 不会去重启Pod,它的主要目的是判断我们的Pod是否已经具备接受service分发的流量的资格了,如果readinessProbe检查失败,说明Pod还没准备好,kubernetes会把我们的Pod从service后端拿掉,这样的话流量就不会进入到我们这个没有ready的Pod中

 

 

 

 

Zhiming Zhang

Senior devops at Appannie
一个奔跑在运维路上的胖子
Zhiming Zhang

Latest posts by Zhiming Zhang (see all)