k8s job 控制器
k8s 控制器 job
2023-09-14 09:08:37 时间
Job控制器可以执行3种类型的任务
1)一次性任务
2)串式任务 spec.completions
3)并形式任务 spec.parallelism
默认Job执行后,不会自动删除,需要手动删除,例如kubectl delete job examplejobv1
如果想要自动删除,需要修改配置文件
直接修改 /etc/kubernetes/manifests
下面对应的kube-apiserver.yaml kube-controller-manager.yaml kube-scheduler.yaml
加入- --feature-gates=TTLAfterFinished=true
job的事例
同时创建4个Pod运行,待某一Pod运行结束,继续创建后续的Pod, 知道所有的11个job执行结束,
并且这些job执行结束后,会自动删除,删除的时间是30秒
[root@master01 ~]# cat myjob-busybox.yaml
apiVersion: batch/v1
kind: Job
metadata:
name: myjob-busybox
spec:
ttlSecondsAfterFinished: 30
activeDeadlineSeconds: 60
completions: 11
parallelism: 4
backoffLimit: 6
template:
spec:
restartPolicy: Never
containers:
- name: myjob-busybox-container
image: busybox
imagePullPolicy: IfNotPresent
command: ['sh','-c']
args: ['echo "start job";sleep 20;echo "job end"']
[root@master01 ~]#
job的restartPolicy只可以是Onfailure和Never中的一个
如果设置为Onfailure,默认重试次数是6, 以上事例可以不写backoffLimit
失败后,会按照10s, 20, 40s 120s 240s 等,递增延迟重试,上限是240s(6分钟)
设置activeDeadlineSeconds可以用时间来限制假死的job,时间一到强制推出job
相关文章
- 【运维工具】因为K8s,运维人员遇到职业危机....
- 轻量级 k8s 应用日志收集方案 loki
- k8s学习二:学习基本概念和搭建dashboard
- 避免告警疲劳:每个 K8s 工程团队的 8 个技巧
- 【K8S专栏】Kubernetes工作负载管理
- 云安全 | k8s 提权漏洞 CVE-2018-1002105 学习
- K8S报错异常锦集(持续更新)
- k8s报错The connection to the server 192.168.X.X:6443 was refused -did you specify...?docker images镜像丢失
- 院长一键部署K8s---Kubeadm,支持多版本
- k8s系列(5)-Configmap和Secret
- Prometheus监控k8s集群组件
- K8s基本概念入门_k8s菜鸟教程
- 干货 | k8s helm常用命令集锦
- Win10下从零搭建Linux+Ansible+K8S 学习环境笔记(1*Master/controller+3*Node)
- 装在笔记本里的私有云环境:K8s 集群准备
- K8S 生态周报| K8s v1.25 将 GlusterFS 卷插件废弃
- 2022-12-23:portainer是docker的web可视化工具。如果根据docker部署去写yaml,默认local是k8s,而不是docker,这不
- K8S 使用 TTL 控制器自动清理完成的 Job Pod
- k8s.gcr.io 镜像注册表将于 2023 年 4 月 3 日冻结,细节如下!
- k8s运行容器之deployment(三)
- K8s集成Redis:优化分布式系统的利器(k8sredis)
- Redis如何用K8s进行自动部署与扩容(redis需要k8s吗)