Kubernetes从零到精通(09-工作负载-Job、CronJob)

news2024/11/26 8:18:10

        在Kubernetes中,Job和CronJob是两种用于执行一次性或周期性任务的工作负载类型。它们非常适合处理短暂任务、批处理任务、或定时任务。以下是它们的详细介绍。

Kubernetes Job

        Job控制器的任务是确保一个或多个Pod成功完成,适合用于一次性任务或批处理任务。

Job的功能和特点

确保任务成功执行:Job负责创建一个或多个Pod,并确保这些Pod成功完成任务。如果Pod失败,Job会重启Pod,直到任务成功。
一次性任务:Job通常用于一次性任务,比如数据处理、数据备份等。
Pod数量控制:可以指定需要同时运行多少个Pod。
并行执行:Job支持并行执行多个Pod,以加快任务的处理速度。

Job配置示例

apiVersion: batch/v1
kind: Job
metadata:
  name: my-job
spec:
  template:
    spec:
      containers:
      - name: my-container
        image: busybox
        command: ["echo", "Hello, Kubernetes!"]
      restartPolicy: Never
  backoffLimit: 4 #失败任务的重试次数
  completions: 1  # 任务完成的次数
  parallelism: 1  # 并行运行的Pod数量

        重要参数:
backoffLimit:定义失败后重试的次数。如果Pod多次失败,超过了backoffLimit的值,Job会停止重试。
completions:定义任务需要成功完成的次数。默认值是1,表示任务只需成功一次。
parallelism:定义可以并行执行的Pod数量,适合需要并发执行的任务。
activeDeadlineSeconds:指定 Job 任务执行的最长时间,超过这个时间未完成的任务会被终止。

Job的常见应用场景

一次性数据处理任务。
批量数据迁移或转换。
系统清理任务(例如清理过期数据)。

Kubernetes CronJob

        CronJob是基于Job的定时任务控制器,用于执行周期性任务。它类似于Linux系统中的Cron,但在Kubernetes集群中运行。

CronJob的功能和特点

定时调度任务:CronJob使用Cron表达式来定义任务的执行频率。例如,每天执行一次,或每小时执行一次。
基于Job的定时任务:CronJob内部实际上是通过调度多个Job来实现的。每个CronJob会创建一个Job来完成定时任务。
失败重试和历史管理:CronJob提供了对Job成功或失败的历史管理功能,可以指定保留的历史记录数量。

CronJob配置示例

apiVersion: batch/v1
kind: CronJob
metadata:
  name: my-cronjob
spec:
  schedule: "*/5 * * * *"  # 定时任务计划表达式,表示每 5 分钟执行一次
  jobTemplate:
    spec:
      template:
        spec:
          containers:
          - name: my-cronjob-container
            image: busybox
            command: ["echo", "Hello, Kubernetes!"]
          restartPolicy: Never  # 任务完成后不再重启

        重要参数:

schedule:Cron表达式,定义任务的执行时间和频率。例如:
        "*/5 * * * *":每5分钟执行一次。
jobTemplate:指定执行的Job模板,这与普通的Job配置类似。
successfulJobsHistoryLimit:指定保留成功任务的历史数量,默认为3。
failedJobsHistoryLimit:指定保留失败任务的历史数量,默认为1。
startingDeadlineSeconds
:如果任务因某种原因未能在预定时间内启动,这个字段定义了延迟启动的允许时间。
concurrencyPolicy:控制任务的并发执行策略:
    Allow:允许并发执行多个任务。
    Forbid:禁止并发执行,若前一个任务未完成,下一个任务将不会执行。
    Replace:终止正在运行的任务,启动新任务。

        Cron表达式说明:

Cron表达式的格式为:<分钟><小时><日><月><星期>,类似于Linux定时任务表达式定义。

CronJob的常见应用场景 

定时备份任务(例如每晚运行备份任务)。
定时数据清理(例如每月删除过期数据)。
周期性报告生成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2128793.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

4.2 数据定义伪指令

&#x1f393; 微机原理考点专栏&#xff08;通篇免费&#xff09; 欢迎来到我的微机原理专栏&#xff01;我将帮助你在最短时间内掌握微机原理的核心内容&#xff0c;为你的考研或期末考试保驾护航。 为什么选择我的视频&#xff1f; 全程考点讲解&#xff1a;每一节视频都…

Scratch中秋节游戏——玉兔收集月饼

小虎鲸Scratch资源站-免费Scratch作品源码,素材,教程分享平台! 中秋节将至&#xff0c;想要在这个团圆的日子里增添一点趣味和创意吗&#xff1f;小虎鲸Scratch资源站为大家带来了一款独具特色的中秋节游戏——玉兔收集月饼&#xff01;这款Scratch游戏不仅充满了节日的气氛&am…

编辑VMware17虚拟机设置的时候出现不可恢复错误Exception 0xc0000094 has occurred的解决方法

【问题原因】因为导入的虚拟机是在VMware17版本之前导入的,其不能和VMware17很好的兼容 【解决方法】 1.点击虚拟机--管理--更改硬件兼容性 2.下一步--选择你导入虚拟机时的VM版本&#xff0c;我的是16&#xff0c;所以选择16 3.然后下一步--完成就解决了&#xff0c;编辑虚拟…

7-2 一元多项式的乘法与加法运算(map)

注意注意&#xff1a;输出的 每行的 最后的数字 后面也不许加空格&#xff08;不然会格式错误&#xff09; 代码&#xff1a; #include<iostream> #include<map> using namespace std; map<int,int>a,b,c; int main(){int n; cin>>n;for(int i0;i<…

富时A50股指期货与上证50股指期货:两者有何关联?

在股市投资的世界里&#xff0c;股指期货是一种重要的金融工具&#xff0c;能够帮助投资者对冲风险、把握市场机会。今天&#xff0c;我们就来聊聊两个热门的股指期货品种——富时A50股指期货和国内的上证50股指期货&#xff0c;看看它们之间到底有什么关系。 什么是富时A50股…

基于UE5和ROS2的激光雷达+深度RGBD相机小车的仿真指南(六):Blender烘培和UE5导入

前言 本系列教程旨在使用UE5配置一个具备激光雷达深度摄像机的仿真小车&#xff0c;并使用通过跨平台的方式进行ROS2和UE5仿真的通讯&#xff0c;达到小车自主导航的目的。本教程默认有ROS2导航及其gazebo仿真相关方面基础&#xff0c;Nav2相关的学习教程可以参考本人的其他博…

【互联网的低潮期】

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

vue-router + el-menu

1. el-menu的router属性 在el-menu中有一属性&#xff1a;router&#xff0c;默认是false 1.1 使用默认配置&#xff0c;即false 这时候需要自己在点击子菜单的时候进行导航&#xff0c;在el-menu添加方法&#xff0c;里边有三个参数 index: 选中菜单项的 index,indexPath…

【EJB】会话Bean(Session Bean)

单例会话****bean在每个应用程序中实例化一次&#xff0c;并存在于应用程序的生命周期中。单例会话bean是为单个企业bean实例在客户端之间共享和并发访问的环境而设计的。 单例会话Bean提供了与无状态会话Bean相似的功能&#xff0c;但与它们不同&#xff0c;因为每个应用程序…

基于Python的可视化在线学习系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于pythondjangovueMySQL的可…

Windows系统介绍

文章目录 1、Windows启动过程1.1 启动过程BIOS1.2 启动过程MBR1.3 启动过程 GPT1.4 启动过程BootMgr1.5 启动过程Winload.exe1.6 启动过程1.7 explorer.exe 2、Windows重要进程及组件2.1 注册表Services注册表服务管理器Services.mscsc.exe计划任务taskschd.msc计划任务schtask…

营销前瞻丨2024小红书「黑科技」数据报告

随着科技对人们日常生活的逐渐渗透&#xff0c;对有更高生活质量追求的人来说&#xff0c;产品的智能化、科技化程度已经成为影响他们消费决策的重要因素。 千瓜数据显示&#xff0c;小红书平台2024年1月到7月&#xff0c;“科技”相关种草笔记数较去年同期增长超140%&#xff…

HashMap线程不安全|Hashtable|ConcurrentHashMap

文章目录 常见集合线程安全性HashMap为什么线程不安全&#xff1f;怎么保证HashMap线程安全 HashtableConcurrentHashMap 引入细粒度锁代码中分析总结 小结 常见集合线程安全性 ArrayList、LinkedList、TreeSet、HashSet、HashMap、TreeMap等都是线程不安全的。 HashTable是线…

50ETF期权可以当天买卖吗?

今天期权懂带你了解50ETF期权可以当天买卖吗&#xff1f;期权日内交易指的是在一个交易日内买入和卖出期权合约&#xff0c;以从价格波动中获取短期收益。 50ETF期权可以当天交易 在这里&#xff0c;可以负责任的告诉大家&#xff0c;50ETF期权当天买入&#xff0c;也可以当天…

安泰电压放大器对参数的要求有哪些

电压放大器是电子电路中常见的一种基本电路&#xff0c;用于将输入信号的电压放大至更大的幅值输出。在设计和应用电压放大器时&#xff0c;需要考虑一系列参数来确保放大器的性能和稳定性。下面将详细介绍电压放大器对参数的要求。 电压放大器对增益的要求非常重要。增益是指输…

2024年6款强力电脑监控软件推荐

随着数字化办公的普及&#xff0c;电脑监控软件已成为企业管理和个人安全的重要工具。无论是企业主监控员工工作效率&#xff0c;还是家长防范孩子沉迷网络&#xff0c;强力的电脑监控软件都能提供有效的解决方案。本文将为您推荐6款功能强大且广受好评的电脑监控软件&#xff…

UDS 诊断 - RequestDownload(请求下载)(0x34)服务

UDS 诊断服务系列文章目录 诊断和通信管理功能单元 UDS 诊断 - DiagnosticSessionControl&#xff08;诊断会话控制&#xff09;&#xff08;0x10&#xff09;服务 UDS 诊断 - ECUReset&#xff08;ECU重置&#xff09;&#xff08;0x11&#xff09;服务 UDS 诊断 - SecurityA…

【Hot100算法刷题集】双指针-02-盛水最多的容器(含暴力枚举、双指针法及其合理性证明)

&#x1f3e0;关于专栏&#xff1a;专栏用于记录LeetCode中Hot100专题的所有题目 &#x1f3af;每日努力一点点&#xff0c;技术变化看得见 题目转载 题目描述 &#x1f512;link->题目跳转链接 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的…

Linux系统部署SmartKG(知识图谱安装)

基本要求 #docker需要高版本 Docker version 20.10.14, build a224086docker 20.10.14离线安装 SmartKG官网 官方详细文档 下载部署包 SmartKG官网 准备部署 #上传到服务器 [roottest-server01 opt]# ll SmartKG-master.zip -rw-r--r-- 1 root root 79708691 Sep 11 17:4…

网络层协议介绍

目录 一、网络层的功能 二、ip数据包格式 三、ICMP协议&#xff08;Internet控制报文协议&#xff09; 3.1功能 3.2 ping命令 3.2.1ping命令的用法 3.2.2扩展 3.3 tracert命令&#xff08;windows&#xff09; 四、arp协议 4.1ARP协议是如何工作的 4.2工作原理&#x…