温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

k8s中的cronJob是什么

发布时间:2021-06-22 14:26:38 来源:亿速云 阅读:277 作者:chen 栏目:大数据

本篇内容主要讲解“k8s中的cronJob是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“k8s中的cronJob是什么”吧!

一.cronJob

1. doc

https://kubernetes.io/zh/docs/concepts/workloads/controllers/cron-jobs/#%E5%89%8D%E6%8F%90%E6%9D%A1%E4%BB%B6

2.参数深入理解

1) startingDeadlineSeconds 看文档

2) concurrencyPolicy

  • Allow(默认):允许并发运行 Job ,即:job 错过执行时间(可能是container crashoff,可能是job supend,或者其他),当再次启动cronJob 时,会根据schedule 计算 miss 的job ,与当前job 并行执行

  • Forbid :old job 正在运行,则 直接跳过新job,不会创建新job...如果用 kubectl  get jobs  -n namespace 查看该cronJob 下的jobs ,会发现只要old job 运行,不会有新的job 创建,不论schedule 错过几次

  • Replace:如果一个新的Job创建时,正在运行一个旧Job,那么CronJob controller会使用这个新Job替代正在运行的旧Job

3) failedJobsHistoryLimit: 0
    successfulJobsHistoryLimit: 3

cronjob 中保存失败或者成功job 的个数

注意:successfulJobsHistoryLimit 保存completed 和running 的job 个数

k8s中的cronJob是什么

k8s中的cronJob是什么

二. job 参数

When a Job completes, no more Pods are created, but the Pods are not deleted either

terminal or clean up job

1. kubectl 删除job,并将其创建的所有pod 一并删除

2. backoffLimit pod 或是container 的 restartPolicy 不是never 的情况下,当重启次数达到limit值时,job被标记为失败,并且所有运行的pod 都将被终止

3. activeDeadlineSeconds  当一个job 的运行时间达到 activeDeadlineSeconds 时,所有运行的pod 都会被终止,并且该job faild ,因为 DeadlineExceeded.

注意:

  • 该参数能指定job 的运行期限,超过期限的job 和其创建的pod 随即被清理,解除系统资源占用,但是也会将cronjob 的调度信息同时清除,如下图,last schedule ,age 和 schedule 对不上

k8s中的cronJob是什么

  • activeDeadlineSeconds 优先级 高于 backoffLimit

4.

ttlSecondsAfterFinished: 100

需要开启TTLAfterFinished ,k8s 默认关闭
 

到此,相信大家对“k8s中的cronJob是什么”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

k8s
AI