我们在 kubernetes 中有一个 pod,它定期处理其中的一些作业。其中一些作业需要 2 或 3 分钟以上。部署此 Pod 时,我们不想终止此 Pod 上的当前进程。如何等待此 Pod 终止,直到所有进程完成?我阅读了一些关于"终止宽限期秒"的主题。但是,该属性或其工作方式是否有任何上限?
您可以使用等待命令,该命令占用多个资源并等待指定条件。
例如,假设您创建一个名为 worker 的作业,该作业打印单词"printsth"并暂停 3 秒十次。
$ kubectl create ns waitplayground
$ kubectl -n waitplayground
create job worker
--image centos:7 --
sh -c
'for i in {1..10} ; do echo printsth ; sleep 3; done'
Kubectl 等待命令返回类似的东西:
$ kubectl -n waitplayground
wait --for=condition=complete --timeout=40s
job/worker
job.batch/worker condition met
我希望它能帮助你。