k8s-job使用

Posted jayce9102

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k8s-job使用相关的知识,希望对你有一定的参考价值。

一、job特性

 

  1. 运行完成后退出,但是不会被删除,便于用户查看日志信息,了解任务完成的情况
  2. 删除job时产生的pod也会被一起删除
  3. job中可以运行多个pod(任务执行多次),且可以并行运行缩短任务完成的时间
  4. 限制job中的pod的完成时间,即设置超时时间
  5. 可以设置类似定时计划任务的job,定期执行 
二、job的yaml文件示例

apiVersion: batch/v1

kind: Job

medatada:

  name: test-job

spec:

  completions: 5 #需要运行的pod数量

  parallelism: 2  #允许并发运行的pod数量

  activeDeadlineSeconds: 360s #pod运行的超时时间 

  template:

    medatada:

       labels:

         app: test-job

    spec:

      restartPolicy: OnFailure

      containers:

      - name: test-job

        image: luksa/batch-job 

 

三、cronjob定时计划任务 

apiVersion: batch/v1beta1

kind: Cronjob

medatada:

  name: test-cronjob

spec:

  schedule: "30 * * * *" #参考定时计划任务(分时日月周)

  startingDeadlineSeconds: 15 #pod必须在规定时间后的15秒内开始执行,若超过该时间未执行,则任务将不运行,且标记失败    

  jobtemplate:

    spec:

      template:

labels:

  app: test-cronjob 

    spec:

      restartPolicy: OnFailure

      containers:

      - name: test-job

        image: luksa/batch-job 

 

以上是关于k8s-job使用的主要内容,如果未能解决你的问题,请参考以下文章

第一篇 用于测试使用

在使用加载数据流步骤的猪中,使用(使用 PigStorage)和不使用它有啥区别?

今目标使用教程 今目标任务使用篇

Qt静态编译时使用OpenSSL有三种方式(不使用,动态使用,静态使用,默认是动态使用)

MySQL db 在按日期排序时使用“使用位置;使用临时;使用文件排序”

使用“使用严格”作为“使用强”的备份