Python微信订餐小程序课程视频
https://edu.csdn.net/course/detail/36074
Python实战量化交易理财系统
https://edu.csdn.net/course/detail/35475
一、Lifecycle
官网:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/
通过前面的分享,关于pod是什么相信看过前面的文章的朋友已经很清楚了,有开发经验的朋友很清楚,对象的创建是具有生命周期的,对于Pod也一样,他也有它的生命周期,接下来就是分享pod的创建、销毁、以及他的状态是什么;简单的来说,就是分享pod的生命周期。
下图是官网对Pod生命周期阶段的描述
通过官网可以发现有一个Running状态,相信大家也非常喜欢Running状态,因为这玩意就表示创建成功正常运行,但有时候创建pod时也有不随人愿的时候,因为有时pod偏偏会有一些奇怪的状态,比哪下面几个状态
- 挂起(Pending):Pod 已被 Kubernetes 系统接受,但有一个或者多个容器镜像尚未创建。等待时间包括调度 Pod 的时间和通过网络下载镜像的时间,这可能需要花点时间。
- 运行中(Running):该 Pod 已经绑定到了一个节点上,Pod 中所有的容器都已被创建。至少有一个容器正在运行,或者正处于启动或重启状态。
- 成功(Succeeded):Pod 中的所有容器都被成功终止,并且不会再重启。
- 失败(Failed):Pod 中的所有容器都已终止了,并且至少有一个容器是因为失败终止。也就是说,容器以非0状态退出或者被系统终止。
- 未知(Unknown):因为某些原因无法取得 Pod 的状态,通常是因为与 Pod 所在主机通信失败。
其实对这Pod五大状态了解后有问题时就可以很好解决了,因为知道状态后就可以通过kubectl describe pod pod-name -n namespace去查看pod日志了解为什么出现这状态了。
二、重启策略
官网 :https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy
前面生命周期了解了后,下面了解下pod的重启策略,之所以要了解这,是因为我们有时候在创建Pod时会发现Pod会不断发生重启,官网对于重启策略也有说明,通过官网可以知道,关于重启我们可以在yaml文件中通过restartPolicy这个属性去进行一个配置,然后重启的策略有三个,分别如下:
- Always:容器失效时,即重启
- OnFailure:容器终止运行且退出码不为0时重启
- Never:永远不重启
三、静态Pod
静态Pod是由kubelet进行管理的,并且存在于特定的Node上,比喻像master。不能通过API Server进行管理&#