一、默认策略为Always
cmd.yaml
bash
apiVersion: v1
kind: Pod
metadata:
name: myapp-pod
labels:
app: myapp
spec:
containers:
- name: myapp-container
image: busybox
command: ['sh', '-c', 'echo OK!&& sleep 60']
首先我们根据这个yaml创建一个测试的pod
执行命令 kubectl apply -f cmd.yaml
使用命令 kubectl logs myapp-pod
输出pod日志:
使用 命令 kubectl get pod -w
可以看到pod开始为running,但是60s过后就变为Completed然后马上就重启成功,所以我们创建的pod默认的RestartPoliy策略为Always
或者可以使用 命令 kubectl edit pod myapp-pod
查看pod重启策略
二、修改RestartPoliy为Never
首先我们先删除这个pod,执行命令 kubectl delete pod myapp-pod
,然后编辑cmd1.yaml文件
cmd1.yaml
bash
apiVersion: v1
kind: Pod
metadata:
name: myapp-pod
labels:
app: myapp
spec:
containers:
- name: myapp-container
image: busybox
command: ['sh', '-c', 'echo OK!&& sleep 60']
restartPolicy: Never
重复以上操作后,可以看到pod退出后就没有再重启了:
使用命令查看 kubectl get pod -o wide