当前位置: 首页 > news >正文

kubernetes中离线业务编排详解JobCronJob之Job控制器CronJob

CronJob 描述的是定时任务

使用 CronJob 定期运行一个任务(例如每分钟打印一次时间)。

[root@master ~]# kubectl explain cronjob
GROUP:      batch
KIND:       CronJob
VERSION:    v1
....[root@master job]# cat cronjob-task.yml 
apiVersion: batch/v1
kind: CronJob
metadata:name: minute-cron
spec:schedule: "* * * * *"  # 每分钟执行一次jobTemplate: #定义job模板spec:template:spec:containers:- name: time-echoimage: busyboxcommand: ["sh", "-c", "date && echo 'CronJob executed'"]restartPolicy: OnFailure[root@master job]# kubectl apply -f cronjob-task.yml 
cronjob.batch/minute-cron created

CronJob 与 Job 的关系,同 Deployment 与 Pod 的关系一样。

CronJob 是一个专门用来管理 Job 对象的控制器。它创建和删除 Job 的依据,是 schedule 字段定义的、一个标准的Unix Cron格式的表达式。

比如:

*/1   *    *  *   *
分钟、小时、日、月、星期

这个 Cron 表达式里 */1 中的 * 表示从 0 开始,/ 表示"每",1 表示偏移量。所以,它的意思就是:从 0 开始,每 1 个时间单位执行一次。

本例表示从当前开始,每分钟执行一次

这里要执行的内容,就是 jobTemplate 定义的 Job 。

[root@master job]# kubectl get cronjobs
NAME          SCHEDULE    TIMEZONE   SUSPEND   ACTIVE   LAST SCHEDULE   AGE
minute-cron   * * * * *   <none>     False     0        <none>          10s[root@master job]# kubectl get pod
NAME                         READY   STATUS      RESTARTS   AGE
minute-cron-29103023-mrvpm   0/1     Completed   0          48s[root@master job]# kubectl get pod -w  #动态查看,每分钟都会创建一个新的pod
NAME                         READY   STATUS              RESTARTS   AGE
minute-cron-29103023-mrvpm   0/1     Completed           0          78s
minute-cron-29103024-w5mmg   0/1     ContainerCreating   0          18s
minute-cron-29103024-w5mmg   0/1     Completed           0          23s
minute-cron-29103024-w5mmg   0/1     Completed           0          25s
minute-cron-29103024-w5mmg   0/1     Completed           0          25s
minute-cron-29103024-w5mmg   0/1     Completed           0          26s[root@master job]# kubectl get pod
NAME                         READY   STATUS              RESTARTS   AGE
minute-cron-29103023-mrvpm   0/1     Completed           0          2m12s
minute-cron-29103024-w5mmg   0/1     Completed           0          72s
minute-cron-29103025-vgfkm   0/1     ContainerCreating   0          12s

查看任务输出

[root@master job]# kubectl logs minute-cron-29103024-w5mmg
Fri May  2 10:24:22 UTC 2025
CronJob executed
http://www.dtcms.com/a/168519.html

相关文章:

  • 新手学编程前端好还是后端
  • Android学习总结之jetpack组件间的联系
  • DarkGS:论文解读与全流程环境配置及数据集测试【基于Ubuntu20.04 】【2025最新实战无坑版!!】
  • 数字智慧方案5874丨智慧交通收费稽核管理体系的构建与思考(44页PPT)(文末有下载方式)
  • Python基于深度学习的网络舆情分析系统(附源码,部署)
  • 深入解析C++11基于范围的for循环:更优雅的容器遍历方式
  • C# 方法(局部变量和局部常量)
  • 快速集成 Flutter Shorebird 热更新
  • 【嵌入式Linux】基于ARM-Linux的zero2平台的智慧楼宇管理系统项目
  • 体系结构论文(八十二):A Comprehensive Analysis of Transient Errors on Systolic Arrays
  • 从此,K8S入门0门槛!
  • Android基础控件用法介绍
  • 见多识广4:Buffer与Cache,神经网络加速器的Buffer
  • 【Unity 游戏开发】角色控制模块技术要点拆解
  • 深入解析MapReduce:大数据处理的经典范式
  • 美丽天天秒链动2+1源码(新零售商城搭建)
  • Linux架构篇、第一章_03安装部署nginx
  • Python Cookbook-6.15 实现单例模式
  • C++模板知识
  • 3033. 修改矩阵
  • 序列数据(Sequential Data)​​:按顺序排列的动态信息载体
  • LabVIEW 中VI Server导出 VI 配置
  • 数字智慧方案5868丨智慧建造总体策划方案(68页PPT)(文末有下载方式)
  • 组件通信-<slot>
  • smss源代码分析之smss!SmpLoadSubSystemsForMuSession函数分析加载csrss.exe
  • yolov5 本地训练
  • Gradio全解20——Streaming:流式传输的多媒体应用(3)——实时语音识别技术
  • HBM的哪些事
  • 当LLM遇上Agent:AI三大流派的“复仇者联盟”
  • Linux操作系统系统编程:x86-64架构下的系统调用