运行Kubernetes调度的Spring Batch

ghg1uchk  于 2023-10-15  发布在  Spring
关注(0)|答案(1)|浏览(93)

我有一个Spring Batch作业,并将其部署在Kunernetes上。我还使用Kubernetes cronjob config在每天上午10点运行它。像这样的例子

apiVersion: batch/v1

kind: CronJob

metadata:

  name: hello

spec:

  schedule: "0 10 * * *"

我担心如果在上午10点,我有3个pod运行,那么我的作业将运行3次。Kubernetes是否会阻止这种情况,所以我的作业只会运行一次?

nmpmafwu

nmpmafwu1#

为了避免这种情况,您可以使用concurrencyPolicy字段。concurrencyPolicy字段可以设置为AllowForbidReplace。如果设置为Forbid,则cron作业不允许并发作业,从而有效地防止重复。

apiVersion: batch/v1
kind: CronJob
metadata:
  name: hello
spec:
  schedule: "0 10 * * *"
  concurrencyPolicy: Forbid

相关问题