CronJob
CronJob 即定時任務,就類似於 Linux 系統的 crontab,在指定的時間週期運行指定的任務。
API 版本對照表
Kubernetes 版本
Batch API 版本
默認開啓
v1.5-v1.7
batch/v2alpha1
否
v1.8-v1.20
batch/v1beta1
是
v1.21+
batch/v1
是
注意:使用默認未開啓的 API 時需要在 kube-apiserver 中配置 --runtime-config=batch/v2alpha1。
CronJob Spec
.spec.schedule指定任務運行週期,格式同 Cron.spec.jobTemplate指定需要運行的任務,格式同 Job.spec.startingDeadlineSeconds指定任務開始的截止期限.spec.concurrencyPolicy指定任務的併發策略,支持 Allow、Forbid 和 Replace 三個選項
apiVersion: batch/v1
kind: CronJob
metadata:
name: hello
spec:
schedule: "*/1 * * * *"
jobTemplate:
spec:
template:
spec:
containers:
- name: hello
image: busybox
imagePullPolicy: IfNotPresent
command:
- /bin/sh
- -c
- date; echo Hello from the Kubernetes cluster
restartPolicy: OnFailure當然,也可以用 kubectl run 來創建一個 CronJob:
參考文檔
Last updated