1

我不得不通过杀死 pod 来停止 k8 中的作业,现在该作业不再安排。

# Import
  - name: cron-xml-import-foreman
    schedule: "*/7 * * * *"
    args:
      - /bin/sh
      - -c
      /var/www/bash.sh; /usr/bin/php /var/www/import-products.php -->env=prod;
    resources:
      request_memory: "3Gi"
      request_cpu: "2"
      limit_memory: "4Gi"
      limit_cpu: "4"

错误 :

警告 FailedNeedsStart 5m34s (x7883 over 29h) cronjob-controller 无法确定是否需要启动作业:错过的开始时间太多 (> 100)。设置或减少 .spec.startingDeadlineSeconds 或检查时钟偏差。

4

1 回答 1

1

根据官方文档

如果startingDeadlineSeconds 设置为较大的值或未设置(默认值),并且如果concurrencyPolicy 设置为Allow,则作业将始终至少运行一次。


如果 CronJob 未能在其预定时间创建,则将其计为错过。例如,如果 concurrencyPolicy 设置为 Forbid,并且在之前的计划仍在运行时尝试计划 CronJob,则它会被视为错过。


关于并发策略

它指定如何处理由该 cron 作业创建的作业的并发执行。

检查您的CronJob配置并相应地调整这些值。

请让我知道这是否有帮助。

于 2019-07-19T09:19:08.677 回答