Kubernetes - 4.8 Workload - CronJob

什麼是CronJob?

CronJob負責處理週期性的任務,基於時間點觸發運行,一般用於備份、數據清理、更新等自動化場景。CronJob也是使用Job對象來執行任務,每一次運行都是會創建一個Job對象,對於CronJob的管理是與Job一樣的。

通過Yaml資源定義清單創建CronJob

apiVersion: batch/v1beta1
kind: CronJob
metadata:
  name: hello
spec:
  schedule: "*/1 * * * *" #執行週期
  jobTemplate:
    spec:
      template:
        spec:
          containers:
          - name: hello
            image: busybox
            args:
            - /bin/sh
            - -c
            - date; echo "Hello, World!"
          restartPolicy: OnFailure

參數說明

.spec.schedule 執行週期,由分、時、日、月、周組成,*代表每個週期都觸發。
.spec.concurrencyPolicy 併發策略 
  Allow 允許同時作業。
  Forbid 不允許併發作業,如果開始新作業並且之前的作業未完成,那麼將跳過新的作業。
  Replace 如果之前的作業未完成,那麼將用當前的作業替換掉之前的作業。
.spec.suspend 如果爲true則將後續的作業都掛起,不包括已開始運行的作業。
.spec.successfulJobsHistoryLimit 成功的作業歷史記錄
.spec.failedJobsHistoryLimit 失敗的作業歷史記錄
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章