问题标签 [kubernetes-jobs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - Kubernetes - 如何只运行一次作业
我有一个基于 kubernetes 网站示例的工作定义。
我想运行这个作业一次,如果失败则不重新启动。使用命令 exit 1 kubernetes 尝试运行新 pod 以获取 exit 0 代码,直到达到 activeDeadlineSeconds 超时。怎么能避免呢?我想在 kubernetes 中运行构建命令来检查编译,如果编译失败,我会得到不同于 0 的退出代码。我不想再次运行编译。
可能吗?如何?
kubernetes - 如何将容器作为 Kubernetes 作业顺序运行?
我正在尝试用 Kubernetes 作业替换我的旧作业调度程序,并想知道如何将顺序作业编写为 Kubernetes 作业。
首先,我编写了以下脚本以按书面顺序执行job1
,job2
但它没有按我预期的那样工作。
上面描述的工作似乎是并行运行job1
的job2
。有没有什么好的方法可以按书面顺序job1
运行?job2
附加。
我最近发现https://github.com/argoproj/argo非常适合我的用例。
kubernetes - 如何自动删除由 CronJob 创建的已完成 Kubernetes 作业?
除了制作 CronJob 来清理已完成的作业之外,还有没有办法自动删除已完成的作业?
K8s作业文档指出,已完成作业的预期行为是让它们保持已完成状态,直到手动删除。因为我每天通过 CronJobs 运行数千个作业,我不想保留已完成的作业。
kubernetes - 如何配置 Kubernetes Jobs 的重启时间?
现在我们使用 Kubernetes 来运行用户的任务。我们需要 Kubernetes Jobs 的特性来在发生故障时重新启动任务。
但是我们的用户可能会提交有问题的应用程序,这些应用程序总是以非 zore 代码退出。Kubernetes 会一遍又一遍地重启这个任务。
是否可以为此配置重启时间?
kubernetes - 告诉作业何时完成
我正在寻找一种方法来告诉(从脚本中)Kubernetes 作业何时完成。然后我想从容器中取出日志并执行清理。
什么是这样做的好方法?最好的方法是运行kubectl describe job <job_name>
和 grep for1 Succeeded
或类似的东西吗?
kubernetes - Kubernetes 作业的用例是什么?
我希望完全了解 Kubernetes 中的工作。
我已成功创建并执行了一个作业,但我没有看到用例。
无法重新运行作业或无法积极聆听它的完成让我觉得管理起来有点困难。
有人在使用它们吗?哪个是用例?
谢谢你。
docker - 如何为 Kubernetes 作业设置时间限制?
我想启动一项 Kubernetes 工作,并给它一个固定的完成期限。如果截止日期到来时 pod 仍在运行,我希望自动终止该作业。
这样的事情存在吗?(起初我认为 Job 规范activeDeadlineSeconds
涵盖了这个用例,但现在我发现activeDeadlineSeconds
它只限制了重新尝试工作的时间;它不会主动杀死缓慢/失控的工作。)
kubernetes - Kubernetes 作业初始化容器
我创建了一个带有 2 个 INIT 容器的 JOB pod 在创建 pod 时,我的工作成功完成,但没有 init 容器的迹象
对我来说,这项工作应该在开始之前等待 2 个 init 容器完成
如果您想重现问题,我的工作蓝图(取自 Kubernetes 文档)
检查我的工作吊舱时
没有初始化容器的迹象!
我的环境:--- Kubernetes 版本(使用 kubectl 版本):客户端版本:version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.2+43a9be4", GitCommit:"43a9be4", GitTreeState :"clean", BuildDate:"2017-04-20T15:38:11Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"linux/amd64"} 服务器版本:version.Info{主要: “1”,次要:“5”,GitVersion:“v1.5.2+43a9be4”,GitCommit:“43a9be4”,GitTreeState:“clean”,BuildDate:“2017-04-20T15:38:11Z”,GoVersion:“go1 .7.4",编译器:"gc",平台:"linux/amd64"}
我在 OpenStack 的集群中工作
操作系统是 Red Hat Enterprise Linux Server 7.3 (Maipo)
提前感谢您的帮助。
docker - 在 Kubernetes 中最多运行一次作业
在 kubernetes 文档中,页面https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/中有以下注释
请注意,即使您指定 .spec.parallelism = 1 和 .spec.completions = 1 和 .spec.template.spec.restartPolicy = "Never",同一程序有时也可能会启动两次。
这可以避免吗?例如:我们能否确保一项工作最多只启动一次?
谢谢。
parallel-processing - Kubernetes 根据任务的 Pod 数量
我有一个想用 Kubernetes 解决的处理任务。基本概念是我要处理的工作队列中有一定数量的项目。项目可以添加到队列中,并在 pod 完成处理后立即删除。首选的工作流程是:
- 定义 pod 的最大数量(例如 40)
- 将项目推送到队列(例如 20)
- 根据队列中的项目数创建 pod 数(=>20)
- 当 pod 仍在处理 20 个项目时,另外 40 个项目被推送到队列中,导致创建了 20 个更多的 pod(达到最大数量),并且一旦第一个完成,就会创建额外的 pod,直到结束到达队列。
是否有使用 kubectl 的内置解决方案?使用作业模式,我可以定义并行 Pod 的数量,但这些 Pod 一直在运行直到成功,并且不会根据其他标准进行扩展。
谢谢你的帮助!