k8s 定时任务job
- 需求
定时清理redis缓存
- 部署文件
apiVersion: batch/v1 kind: CronJob metadata: name: crontab-clear-redis namespace: ns-test spec: schedule: "10 16 * * 1" ##这里注意时区问题,切记!!!! jobTemplate: spec: template: spec: containers: - name: crontab-clear-redis image: centos:7 command: ["/bin/bash", "-c","yum install -y epel-release && yum install -y redis && date && sleep 10 && bash -x /clear-kline.sh"] volumeMounts: - name: crontab mountPath: /clear-kline.sh subPath: clear-kline.sh # env: # - name: TZ # value: Asia/Shanghai volumes: - name: crontab configMap: name: clear-kline-crontab restartPolicy: OnFailure
batch/v1 当前Job的apiVersion
kind 指明当前资源的类型为Job
restartPolicy 指定什么情况下需要重启容器。对于Job,只能设置为Never(启动容器失败了,会一直重新启动新的pod)或者OnFailure(启动容器失败,不会重新启动新的pod,节省资源)。对于其他controller(比如Deployment),
schedule 指定什么时候运行Job,其格式与Linux cron一致。这里*/1 * * * *的含义是每一分钟启动一次
浙公网安备 33010602011771号