K8s CronJob 定时任务

在很多场景下我们需要都需要定时任务来处理一些事情,比如说报表的生成。还有定期抓取一些数据,股票数据之类的。 在Kubernetes下面我们可以使用 CornJob来处理这种事情。

示例

apiVersion: batch/v1
kind: CronJob
metadata:
  labels: 
    app: bond
  name: bond
  namespace: malema
spec:
  schedule: "0 19,21 * * *" # https://crontab.guru/#*/5_*_*_*_*  
  jobTemplate:
    spec:
      template:
        spec:
          containers:
            - env:
              - name: dsn
                value: xxvalue
              name: bond
              image: xxx/bond:6
              imagePullPolicy: IfNotPresent
          imagePullSecrets:
            - name: registrykeymalema # 这个你要事先创建好。
          restartPolicy: OnFailure
          

schedule 放的是cron表达式 分 时 日 月 日(星期) ,表示这两个都要 19,21表示 19时和21时都要跑。 这样在时间到了之后这个cronjob就会启动job 然后 job 会启动一个pod出来。

临时跑一下cronjob

可以用下面的这行命令行来跑

 kubectl create job abc --from=cronjob/bond
下一篇:Configmap
最近更新的
...