kubernetes关于pod生命周期的官网地址
官网截图:


- pod 里有一个主要容器正常启动就进入了Running状态,所以通过判断pod 是否处于running状态是不严谨,因为有的pod有2个container, 在另一个容器还没有或者无法ready,那这个pod还是有问题的,但也属于Running状态
- 处于重启状态的pod也是属于Running状态 ,所以监控pod是否处于running状态并不可靠
#pod生命周期监控表达式
kube_pod_status_phase{namespace=~"kube-system|alauda-system",pod="adapter-779489564d-5rkms"}

- 监控pod生命周期的方式有缺陷,不能捕获ImagePullBackOff、CrashLoopBackOff这种异常的pod,所以需要通过判断pod 是否Ready来判断pod的健康状态
#prometheus 监控pod 是否ready
kube_pod_status_ready{namespace=~"kube-system|alauda-system",pod="adapter-779489564d-5rkms"}

我们通过截图来证明一下处于running状态但是非ready状态的pod是怎样的

这里可以看出拉取镜像失败了

网友评论