kubernetes-jobs
任务:
Linux下的
atd ,crontab
job : 一次性任务, 完成一次任务,状态为 Completed
cronjob : 周期性任务
pod中的进程一定要能够正常执行完成。
job
backoffLimit: 6 # 最多尝试运行pod的最大次数 创建新的POD的上限
completions: 3 # 期望完成的次数, 达到此完成数,则认为job任务完
parallelism: 1 #并行创建Pod数量 期望的完成的pod 大于 并行数
restartPolicy: 重启策略
OnFailure
原地重启,不会产生新的pod
Never
任务失败 创建新的pod
Job 仅适合于 restartPolicy 设置为 OnFailure 或 Never 的 Pod。 注意:如果 restartPolicy 未设置,其默认值是 Always。
副本控制器管理的是那些不希望被终止的 Pod (例如,Web 服务器), Job 管理的是那些希望被终止的 Pod(例如,批处理作业)
[root@master01 jos]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
pi-with-ttl-2rmjf 0/1 Completed 0 2m16s 10.244.196.159 node01 <none> <none>
pi-with-ttl-b5hpw 0/1 Completed 0 91s 10.244.196.166 node01 <none> <none>
pi-with-ttl-jtbrl 0/1 Completed 0 2m46s 10.244.196.139 node01 <none> <none>
pi-with-ttl-rpr5l 0/1 Completed 0 91s 10.244.140.119 node02 <none> <none>
pi-with-ttl-tht4m 0/1 Completed 0 2m46s 10.244.140.94 node02 <none> <none>
pi-with-ttl-zxb47 0/1 Completed 0 2m16s 10.244.140.120 node02 <none> <none>
tom-dep-5cd5954c9-l874k 1/1 Running 1 (17h ago) 17h 10.244.140.96 node02 <none> <none>
web-test-f47f968f6-wbkv4 1/1 Running 2 (17h ago) 17h 10.244.140.116 node02 <none> <none>
[root@master01 jos]# cat jobs1.yaml
apiVersion: batch/v1
kind: Job
metadata:
name: pi-with-ttl
spec:
backoffLimit: 12 #最大尝试创建pod数量
completions: 6 #6次完成则任务完成
parallelism: 2 #并行两个pod运行
ttlSecondsAfterFinished: 100
template:
spec:
containers:
- name: pi
image: perl
command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(50)"]
restartPolicy: Never
[root@master01 jos]# kubectl logs pi-with-ttl-5qw2b
3.1415926535897932384626433832795028841971693993751
官网;https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/job/
cronjobs
schedule:
" * * * * * "
分 时 日 月 星期
apiVersion: batch/v1
kind: CronJob
metadata:
name: hello
spec:
schedule: "*/1 * * * *"
jobTemplate: #计划任务模板。
spec:
template:
spec:
containers:
- name: hello
image: busybox
imagePullPolicy: IfNotPresent
command:
- /bin/sh
- -c
- date; echo Hello word!!
restartPolicy: OnFailure
[root@master01 jos]# kubectl logs hello-27969239-m757h
Tue Mar 7 01:59:11 UTC 2023
Hello word!!
~
官网:https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/cron-jobs/
额!!!!!!!!!!!!
这个其实理解理论知识。重启策略,适用场景,,,然后官网找的到example。改yaml文件应用。 和Linux下的一次性任务,,周期任务类似。
本文链接:
/archives/jobs
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
Emporer-Linux!
喜欢就支持一下吧