Kubernetes Cronjob Pod调度问题



我需要了解kubernetes cronjob的行为。即使以前的作业没有完成,也会启动新的cronjob pod。只有一个蚁群在对抗这个任务前一个蚁群已经消失了。为什么在第一个工作没有完成的情况下启动新工作。使用kubectl describe job Userjob-1631434800

无故障事件跟踪
Command: 
kubectl get jobs
Output:
NAME                                      COMPLETIONS   DURATION   AGE
Userjob-1631434800                        0/1           25h        25h
Userjob-1631496960                        0/1           8h         8h
Command:
kubectl get cronjobs
NAME                           SCHEDULE      SUSPEND   ACTIVE   LAST SCHEDULE   AGE
Userjob      */1 * * * *   False     1        8h              26h

您需要使用concurrencyPolicy: Forbid。使用此cron作业不允许并发运行;如果是运行新作业的时间,而上一个作业尚未完成,则cron作业将跳过新作业的运行

也可以签出其他选项

failedJobsHistoryLimit: 1这将保留最后一个失败的作业。

successfulJobsHistoryLimit: 1这将保持最后一个成功的工作。默认情况下,cronjob保留3个成功的job pod。

最新更新