Jobs 有没有办法限制Kubernetes中作为CronJob实例的运行吊舱的数量?

Jobs 有没有办法限制Kubernetes中作为CronJob实例的运行吊舱的数量?,jobs,kubernetes-cronjob,Jobs,Kubernetes Cronjob,我在K8S中配置了一个CronJon,它每10分钟创建一个pod。 运行中的容器可以在5分钟到2小时内完成,这是无从得知的 有时,当计算耗时很长时,我最终会创建太多的豆荚 有没有办法限制特定CronJob的运行pod和实例的数量 编辑 为了澄清,我想要并发运行,我想要将运行的并发实例的数量限制在某个较大的数量N.请参阅 kubectl explain cronjob.spec.jobTemplate.spec 这将为您提供“并行度”键,您可以根据需要将“并行度”映射到数字“N” 这将允许“N

我在K8S中配置了一个CronJon,它每10分钟创建一个pod。 运行中的容器可以在5分钟到2小时内完成,这是无从得知的

有时,当计算耗时很长时,我最终会创建太多的豆荚

有没有办法限制特定CronJob的运行pod和实例的数量

编辑

为了澄清,我想要并发运行,我想要将运行的并发实例的数量限制在某个较大的数量N.

请参阅

 kubectl explain cronjob.spec.jobTemplate.spec
这将为您提供“并行度”键,您可以根据需要将“并行度”映射到数字“N”

这将允许“N”个吊舱并行运行


我想这会有所帮助。

根据@Tushar的回复,结合本文的信息:

解决方案是三种设置的组合,如果单独查看,则它们是反指示性的

为了获得最多10个运行的pod,cronjob的实例我执行了以下操作

      parallelism: 10        
      completions: 8

  concurrencyPolicy: Forbid
每次点击勾号时,CronJob将创建10个并行的pod,但在下一次勾号时,除非前一个pod中的8个已经完成,否则不会触发运行,因为并发策略:禁止


这也意味着,如果只有三个实例仍在运行,则勾号将被跳过,但这与我所寻找的已经足够接近。

也许我的问题不清楚-我又添加了一句话来澄清。我想要并发运行,我想要将运行的并发实例的数量限制在一定的大范围内,比如说50。再次感谢-我认为并行性表示每次运行要创建多少个POD。我仔细检查了它,事实上,并行性并没有限制,而是在每次运行时创建N个pod。把N设为50后,我很快就得到了200个实例。然而,我设法找到了解决方案/将其发布在这里。