Pod的生命周期
与容器一样,Pod也有生命周期,Pod在整个生命周期中被定义为各种状态。了解这些状态对于后面我们学习Pod的调度是有帮助的。
- Pending 挂起状态,Pod已经被K8s系统所认可,但是目前还有一个或多个容器镜像还没有被创建,包括正在下载镜像的过程也是处于挂起状态,注意这里说的都是镜像。
- Running 运行中,Pod已经与node绑定,Pod中所有的容器都已经被创建,并且至少有一个容器已经运行了或者正在启动包括重启。
- Succeeded Pod中所有的容器均成功执行并且退出,表示不会再重启。
- Failed Pod中所有的容器都已经退出,并且至少有一个容器是退出失败了
- Unkonwn 获取不到该Pod的状态,可能是网络原因。
Pod的运行过程中每个时间段会有不同的程序在运行,我们把它叫做Pod的生命周期。
Pod的生命周期执行过程如图所示
首先是Pause容器,为我们准备存储卷,网络等功能,然后是初始化容器,做一些前置动作,然后才是主容器,在主容器中会由两个钩子函数,一个容器启动后运行的PostStart,一个是容器终止前钩子PreStop,主容器运行过程中会有三种探测。StratupProbe优先执行。探测成功后在执行 liveness Probe 与 readiness Probe 。
这些内容在前面都以讲过,本文就简单做个总结。
K8s之Pod的健康检查
K8s之初始化容器Init Container
Pod中的钩子函数
Pod的生命周期就介绍到这。Pod的具体的调度机制后面文章会详细说明。
欢迎关注,学习不迷路!