Pod 的 spec
中包含一个 restartPolicy
字段,其可能取值包括 Always、OnFailure 和 Never。默认值是 Always。
restartPolicy
适用于 Pod 中的所有容器。restartPolicy
仅针对同一节点上 kubelet
的容器重启动作。当 Pod 中的容器退出时,kubelet
会按指数回退方式计算重启的延迟(10s、20s、40s、...),其最长延迟为 5 分钟。
- Always:当容器终止退出后,总是重启容器,默认策略
- OnFailure:当容器异常退出(退出状态码非0)时,重启容器
- Never:当容器终止退出,从不重启容器。
设置示例:
# vim simple-pod.yaml
apiVersion: v1
kind: Pod
metadata:
name: nginx
spec:
restartPolicy: Always
containers:
- name: nginx
image: nginx:1.14.2
imagePullPolicy: Always
ports:
- containerPort: 80