当前位置:   article > 正文

k8s Job工作模式,Crontab_spec: parallelism: #podnum# completions:

spec: parallelism: #podnum# completions:

一:批处理任务模式

  • Job Template Expansion模式:一个Job对象对应一个待处理的Work item,
  • Queue with Pod for Work Item:任务队列存放Work item,job启动多个Pod,每个Pod对应一个Work item。
  • Queue with Variable Pod Count模式:任务队列存放Work item,Job启动的Pod数量是可变。

二:k8s 并行批处理3种Job

  1. 非并行Job
    1. 一个Job启动一个Pod,一旦Pod正常结束,Job将结束
  2. 固定完成次数的并行Job
    1. 并发运行指定数量的Pod,直到指定数量的Pod成功,Job结束
    2. spec.completions 指定Pod数量
    3. spec.parallelism 指定同时运行几个Pod
  3. 带有工作队列的并行Job
    1. 用户可以指定并行的Pod数量,当任何Pod成功结束后,不会再创建新的Pod
    2. 一旦有一个Pod成功结束,并且所有的Pods都结束了,该Job就成功结束
    3. 一旦有一个Pod成功结束,其他Pods都会准备退出
  4. Job 模板文件
    1. apiVersion: batch/v1
    2. kind: Job
    3. metadata:
    4. name: pai
    5. labels:
    6. jobgroup: jobexample
    7. spec:
    8. parallelism: 2 #并行几个任务
    9. completions: 4 #期望几个任务可以完成
    10. template:
    11. metadata:
    12. name: jobexample
    13. labels:
    14. jobgroup: jobexample
    15. spec:
    16. containers:
    17. - name: pai
    18. image: perl
    19. imagePullPolicy: IfNotPresent
    20. command: ["perl", "-Mbignum=bi", "-wle", "print bpi(2000)"]
    21. restartPolicy: OnFailure #Never 没有always用法
    22. #最多尝试几次任务
    23. backoffLimit: 4
    24. #任务最多运行多长时间
    25. activeDeadlineSeconds: 100
  5. Crontab 与linux cron用法一致
    1. apiVersion: batch/v1beta1
    2. kind: CronJob
    3. metadata:
    4. name: hello
    5. spec:
    6. #Forbid 当前job没有运行完成,不会创建新的job
    7. #Allow 运行多个job同时运行,不建议使用这个策略
    8. #Replace 这个job会替换前一个没有运行完成的job,重新产生一个新job
    9. concurrencyPolicy: Replace
    10. suspend: true #暂停job任务执行
    11. schedule: "*/1 * * * *"
    12. successfulJobsHistoryLimit: 3
    13. failedJobsHistoryLimit: 2
    14. jobTemplate:
    15. spec:
    16. template:
    17. spec:
    18. containers:
    19. - name: hello
    20. image: busybox
    21. imagePullPolicy: IfNotPresent
    22. args:
    23. - /bin/sh
    24. - -c
    25. - date; echo Hello from the Kubernetes cluster
    26. restartPolicy: OnFailure

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/563760
推荐阅读
相关标签
  

闽ICP备14008679号