并行执行 Job - 每天5分钟玩转 Docker 容器技术(134)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了并行执行 Job - 每天5分钟玩转 Docker 容器技术(134)相关的知识,希望对你有一定的参考价值。

有时,我们希望能同时运行多个 Pod,提高 Job 的执行效率。这个可以通过 parallelism 设置。

技术分享图片

这里我们将并行的 Pod 数量设置为 2,实践一下:

技术分享图片

Job 一共启动了两个 Pod,而且 AGE 相同,可见是并行运行的。

我们还可以通过 completions 设置 Job 成功完成 Pod 的总数:

技术分享图片

上面配置的含义是:每次运行两个 Pod,直到总共有 6 个 Pod 成功完成。实践一下:

技术分享图片

DESIRED 和 SUCCESSFUL 均为 6,符合预期。如果不指定 completions 和 parallelism,默认值均为 1

上面的例子只是为了演示 Job 的并行特性,实际用途不大。不过现实中确实存在很多需要并行处理的场景。比如批处理程序,每个副本(Pod)都会从任务池中读取任务并执行,副本越多,执行时间就越短,效率就越高。这种类似的场景都可以用 Job 来实现。

下一节我们讨论如何定时执行 Job。

书籍:
1.《每天5分钟玩转Docker容器技术》
https://item.jd.com/16936307278.html

2.《每天5分钟玩转OpenStack》
https://item.jd.com/12086376.html

技术分享图片


以上是关于并行执行 Job - 每天5分钟玩转 Docker 容器技术(134)的主要内容,如果未能解决你的问题,请参考以下文章

Job 失败了怎么办?- 每天5分钟玩转 Docker 容器技术(133)

用 k8s 运行一次性任务 - 每天5分钟玩转 Docker 容器技术(132)

Docker Swarm 中最重要的概念- 每天5分钟玩转 Docker 容器技术(94)

每天5分钟玩转Kubernetes | Job

管理 Machine - 每天5分钟玩转 Docker 容器技术(47)

调试 Dockerfile - 每天5分钟玩转 Docker 容器技术(15)