我已经安排了一个应用程序在Kubernetes中作为CronJob运行。当代码发生更改时,我也会更改CronJob的图像。
CronJob
我正在寻找一个选项,我可以禁用当前运行的CronJob,并使用最新的映像版本部署新的CronJob。
如何在不删除Deployment的情况下禁用Kubernetes中的CronJob?
Deployment
yquaqz181#
如果要通过修补程序挂起cronjob,请使用:
kubectl patch cronjobs <job-name> -p '{"spec" : {"suspend" : true }}'
lb3vh1jj2#
编辑您当前的cronjob资源以包括.spec.Suspend字段,并将其设置为True。当前正在运行的所有作业都将完成,但未来的作业将被挂起。
如果还需要停止当前正在运行的作业,则必须将其删除
aydmsdu93#
kubectl patch cronjobs job-name -p "{"spec" : {"suspend" : true }}"
jchrr9hc4#
您可以使用对Cron作业格式有效的内容,但实际上该日期不应出现在日历日期中的任何时间,如2月31日。
* * 31 2 *
4条答案
按热度按时间yquaqz181#
如果要通过修补程序挂起cronjob,请使用:
lb3vh1jj2#
编辑您当前的cronjob资源以包括.spec.Suspend字段,并将其设置为True。当前正在运行的所有作业都将完成,但未来的作业将被挂起。
如果还需要停止当前正在运行的作业,则必须将其删除
aydmsdu93#
jchrr9hc4#
您可以使用对Cron作业格式有效的内容,但实际上该日期不应出现在日历日期中的任何时间,如2月31日。