1.23克朗
在K8S文档之后,我将concurrencyPolicy: Forbid
添加到了CronJob清单中,但是当我手动触发cronJob时,我仍然可以看到它同时运行(不想等待cron调度时间)。
我希望cronJob仅在上一个作业完成后创建新作业。
apiVersion: batch/v1
kind: CronJob
metadata:
name: my-cron
spec:
successfulJobsHistoryLimit: 1
failedJobsHistoryLimit: 1
schedule: {{ .Values.cronSchedule | quote }}
concurrencyPolicy: Forbid
jobTemplate:
spec:
backoffLimit: 0
template:
spec:
.
.
.
1条答案
按热度按时间t9aqgxwy1#
根据本文件
spec.concurrencyPolicy
字段也是可选的,它指定如何处理由该CronJob创建的作业的并发执行。禁止:CronJob不允许并发运行;如果到了新作业运行的时间,而上一个作业运行尚未完成,则CronJob将跳过新作业运行
注意并发策略只适用于同一个cron job创建的job,如果有多个cronjob,它们各自的job总是被允许并发运行。
这是预期行为。手动创建的作业不受concurrencyPolicy影响。