Cron Job 是什么?
Cron Job 管理基于时间的 Job,即:在给定时间点只运行一次
在给定时间点周期性地运行
一个 CronJob 对象类似于 crontab (cron table)文件中的一行。它根据指定的预定计划周期性地运行一个 Job
注意: 在预定计划中,问号(?)和星号(*)的意义是相同的,表示给定字段的取值是任意可用值。
注意: 在 Kubernetes 1.4 版本引入了 ScheduledJob 资源,但从 1.5 版本开始改成了 CronJob。
典型的用法如下所示:在给定的时间点调度 Job 运行
创建周期性运行的 Job,例如:数据库备份、发送邮件。
前提条件
当使用的 Kubernetes 集群,版本 >= 1.4(对 ScheduledJob),>= 1.5(对 CronJob),当启动 API Server(参考 为集群开启或关闭 API 版本 获取更多信息)时,通过传递选项 --runtime-config=batch/v2alpha1=true 可以开启 batch/v2alpha1 API。
创建 Cron Job
下面是一个 Cron Job 的例子。它会每分钟运行一个 Job,打印出当前时间并输出问候语 hello。
% include code.html language=“yaml” file=“cronjob.yaml”ghlink=“/docs/concepts/workloads/controllers/cronjob.yaml” %}
下载并运行该示例 Cron Job,然后执行如下命令: