博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Kubernetes Job配置
阅读量:6908 次
发布时间:2019-06-27

本文共 950 字,大约阅读时间需要 3 分钟。

  我们知道使用kubernetes的rc或者rs创建的pod,kubernetes会实时监控其健康状态,如果发现pod挂掉以后,会自动启动一个新的,让pod的数量始终保持在指定的replicas上。那么问题就来了,在有些场景下,我们就是想要运行一些容器执行某种特定的任务,任务一旦执行完成,容器也就没有存在的必要了。在这种场景下,我们使用rc来创建pod就显得不那么合适。于是就是了Job,在这里,Job指的就是那些一次性任务。我们通过Job运行一个容器,当其任务执行完以后,就自动退出,集群也不再重新将其唤醒。

Job的创建非常简单,我们直接看示例:

apiVersion: batch/v1kind: Jobmetadata:  labels:    name: busybox  name: busyboxspec:  template:    metadata:      name: busybox    spec:      containers:        - name: busybox          image: myhub.mingyuanyun.com/library/busybox          command:            - sleep            - "30"      restartPolicy: Never

这个示例,就是启动一个busybox,让其运行30s后自行退出,通过如下方式启动:

kubectl create -f busybox.yml

当容器正常运行退出以后,我们执行如下指令可以查看到容器退出的状态:

[root@server-116 test]# kubectl get jobsNAME      DESIRED   SUCCESSFUL   AGEbusybox   1         1            1m

当successful从0变为1时,即正常退出

需要说明的是,容器虽然退出了,但job还在,要删除job需要使用如下指令:

kubectl delete -f busybox.yml

 

转载于:https://www.cnblogs.com/breezey/p/6582754.html

你可能感兴趣的文章
关于input的一些问题解决方法分享
查看>>
【译】Effective TensorFlow Chapter8——控制流操作:条件和循环
查看>>
骗子或许比你更了解网络攻防
查看>>
从贝叶斯定理到概率分布:综述概率论基本定义
查看>>
Satoshis Vision大会:‘乱局’之中的Bitcoin Cash
查看>>
前端中的 IoC 理念
查看>>
Android开源框架源码鉴赏:VirtualAPK
查看>>
在 V8 引擎中设置原型(prototypes)
查看>>
源码|并发一枝花之ReentrantLock与AQS(2):lockInterruptibly
查看>>
Lumen 使用 throttle 限制接口访问频率
查看>>
怎样给文件命名才能显得更加专业
查看>>
python多线程
查看>>
原来云数据库也是有思想的...
查看>>
GitHub 项目徽章的添加和设置
查看>>
写给前端新人:前端开发必会的知识点
查看>>
欢乐的票圈重构之旅——RecyclerView的头尾布局增加
查看>>
makefile-4--变量的定义与使用
查看>>
浅析Vue源码(七)——render到VNode的生成
查看>>
谈谈Shiro的原理及在SSM和SpringBoot两种环境下的使用姿势(下篇)
查看>>
Xcode 创建自定义模板
查看>>