首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >把任务安排在永远不会发生吗?

把任务安排在永远不会发生吗?
EN

Stack Overflow用户
提问于 2019-09-16 09:31:58
回答 4查看 7.1K关注 0票数 9

下面是我的CronJob规范的一部分:

代码语言:javascript
复制
kind: CronJob
spec:
    schedule: #{service.schedule}

对于特定环境,将设置cron作业,但我不希望它运行。我是否可以将一些值写入schedule:,使其永远不会运行?

我还没有为所有支持的语法找到任何文档,但我希望这样的内容:

@never@InABillionYears

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2019-09-16 13:27:32

@reboot并不保证作业永远不会运行。它实际上将运行,当您的系统启动/重新启动时,可能会发生。每次cron守护进程重新启动时,它都会运行,因此您需要依赖于“通常不会发生”系统上的.

有更多的方法可以确保永远不会运行CronJob

  1. 关于悬吊的Kubernetes级别通过将作业的.spec.suspend字段设置为true

您可以使用修补程序轻松地设置它:

代码语言:javascript
复制
kubectl patch cronjobs <job-name> -p '{"spec" : {"suspend" : true }}'
  1. 在克伦的水平。使用一个技巧,基于crontab语法没有严格验证的事实,并设置一个您可以确保永远不会发生的日期,就像2月31日一样。Cron将接受这一点,因为它不检查day of the monthmonth字段中的值集的关系。它只需要在两个字段(分别为1-311-12 )中输入有效的数字。您可以将其设置为:

* * 31 2 *

对于,Cron,是完全有效的值,但是我们知道这样的日期是不可能的,而且它永远不会发生。

票数 21
EN

Stack Overflow用户

发布于 2019-09-16 15:26:02

代码语言:javascript
复制
kind: CronJob
spec:
    suspend: true
票数 16
EN

Stack Overflow用户

发布于 2020-11-09 10:18:10

为什么首先需要它成为一个CronJob?如果您不希望它运行,可以指定一个简单的Jobhttps://kubernetes.io/docs/concepts/workloads/controllers/job/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57954002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档