MySQL, Oracle, Linux, 软件架构及大数据技术知识分享平台

网站首页 > 精选文章 / 正文

pod生命周期-重启策略_pod生命周期管理

2025-02-20 15:48 huorong 精选文章 5 ℃ 0 评论

容器探测器一旦出现异常k8s就会对容器所在的pod进行重启,其中pod的重启策略有三种分别是

always:容器失效便自动重启该容器(默认)

onfailure:容器终止运行且退出码不为0时重启

never:不论状态如何都不重启该容器

重启策略适用于pod对象中的所有容器,首次需要重启的容器,将在其需要时立即进行重启,随后再次需要重启的操作将由kubelet延迟一段时间进行,反复重启的操作延迟以10s,20s,40s,80s,160s,300s。300s是最大时长

下面看一下实验

pod-restartpolicy.yaml
 
 
apiVersion: v1
kind: Pod
metadata:
  name: pod-restartpolicy
  namespace: dev
spec:
  containers:
  - name: nginx
    image: nginx:1.17.1
    ports:
    - name: nginx-port
      containerPort: 80
    livenessProbe:
      httpGet:
        scheme: HTTP
        port: 80
        path: /hello
  restartPolicy: Never # 设置重启策略为Never
# 创建Pod
[qq@k8s-master01 ~]# kubectl create -f pod-restartpolicy.yaml
pod/pod-restartpolicy created
 
# 查看Pod详情,发现nginx容器失败
[qq@k8s-master01 ~]# kubectl  describe pods pod-restartpolicy  -n dev
......
  Warning  Unhealthy  15s (x3 over 35s)  kubelet, node1     Liveness probe failed: HTTP probe failed with statuscode: 404
  Normal   Killing    15s                kubelet, node1     Container nginx failed liveness probe
   
# 多等一会,再观察pod的重启次数,发现一直是0,并未重启   
[qq@k8s-master01 ~]# kubectl  get pods pod-restartpolicy -n dev
NAME                   READY   STATUS    RESTARTS   AGE
pod-restartpolicy      0/1     Running   0          5min42s

Tags:重启容器

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言