K8S教程(8)YAML配置清单之镜像拉取与失败处理策略

TangLu 未命名 2023-04-30 532 0

一、K8S镜像资源拉取策略

通过YAML配置清单为K8S创建资源时,通过imagePullPolicy可以实现镜像资源拉取策略

apiVersion: v1
kind: Pod
metadata:
  name: pod-image-policy
spec:
  containers:
  - name: pod-image
    image: nginx
    imagePullPolicy: Never

IfNotPresent:默认策略,如果本地不存在镜像就到仓库中进行拉取

Always:不管镜像是否在本地存在都进行拉取

latest:如果本地镜像非最新版本或者没有指定tag,则到仓库进行拉取


二、K8S镜像失败重启策略

通过YAML配置清单为K8S创建资源时,对于出现异常的容器通过restartPolicy实现不同的重启策略(该字段需要配置在spec中,非containers中)

Always:默认策略,不管容器发生什么情况导致不工作都将重启Pod,在该策略下如果一个任务是只运行一次就结束掉的简单任务也会不断被重启

OnFailure:当容器非正常停止时才会自动重启,比如容器内的某个任务状态返回值非0

Never:不管容器出现什么问题都不进行重启

注意:如果容器经过自动重启还出现异常退出的情况,后续的重启时长会指数增加(10S、20S、40S...最长延迟为5分钟)。如果容器重启恢复了正常并且达到了10分钟,该计数器就会被重置

评论