【问题标题】:Kubernetes cronjob : execute multiples tasks each one take different file as argumentKubernetes cronjob:执行多个任务,每个任务都以不同的文件作为参数
【发布时间】:2020-04-14 16:35:31
【问题描述】:

我想在 k8s 中启动一个 cronjob。等效的 crontab 是:

* * * * * python3 my_script.py -p params_1.json 
* * * * * python3 my_script.py -p params_2.json 
* * * * * python3 my_script.py -p params_3.json 

我尝试使用 cronjob,但我不知道如何让 cronjob 在单独的任务中获取每个 param_i.json。

有什么想法吗?上面的每一行我都需要一个 cronjob 实例,还是我可以只用一个 cronjob 实例来管理它?

感谢您的帮助

【问题讨论】:

    标签: kubernetes parallel-processing cron openshift


    【解决方案1】:

    一个 Cronjob 创建一个可以容纳多个容器的 Pod。每个 Container 都可以执行您的一项任务,但它们会并行运行,并且如果一个 Container 失败(退出代码!= 0)可能会被取消。

    最好的解决方案是为每个要执行的作业创建一个 Cronjob,或者在一个容器中一个接一个地运行作业。

    【讨论】:

    • Thnx Alex,为了为每个作业创建一个 cronjob,我使用集群外部的外部脚本,该脚本使用 kubectl 为每个作业创建一个 cronjob。但是如何使用一个容器执行所有作业?特别是我必须从 configmap 中提取参数文件
    猜你喜欢
    • 2010-09-09
    • 1970-01-01
    • 2013-02-13
    • 2014-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多