Kubernetes 使用 CronJob 运行作业
Posted
技术标签:
【中文标题】Kubernetes 使用 CronJob 运行作业【英文标题】:Kubernetes Run job using CronJob 【发布时间】:2019-06-19 08:13:17 【问题描述】:有没有一种方法可以让我使用 CronJob 资源运行现有的作业。 在 CronJob Spec 模板中,我们可以使用标签应用选择器。像这样的:
工作规范:(Link to job docs)
apiVersion: batch/v1
kind: Job
label:
name: pi
spec:
template:
spec:
containers:
- name: pi
image: perl
command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(2000)"]
restartPolicy: Never
backoffLimit: 4
Cron 规范:
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: pi-cron
spec:
schedule: "*/1 * * * *"
jobTemplate:
spec:
labelSelector:
name: pi # refer to the job created above
我遇到了这个。我想尝试与此相反。 Create-Job-From-Cronjob
【问题讨论】:
【参考方案1】:不,您不能以您想要的方式执行此操作。 kubectl
只允许你基于 cronjob 创建作业,反之则不行。
kubectl create job NAME [--image=image --from=cronjob/name] -- [COMMAND] [args...] [flags] [options]
kubectl create 目前可用的命令:
clusterrole Create a ClusterRole.
clusterrolebinding Create a ClusterRoleBinding for a particular ClusterRole
configmap Create a configmap from a local file, directory or literal value
deployment Create a deployment with the specified name.
job Create a job with the specified name.
namespace Create a namespace with the specified name
poddisruptionbudget Create a pod disruption budget with the specified name.
priorityclass Create a priorityclass with the specified name.
quota Create a quota with the specified name.
role Create a role with single rule.
rolebinding Create a RoleBinding for a particular Role or ClusterRole
secret Create a secret using specified subcommand
service Create a service using specified subcommand.
serviceaccount Create a service account with the specified name
【讨论】:
只想在创建时注意kubectl
你cannot specify --from and command
以上是关于Kubernetes 使用 CronJob 运行作业的主要内容,如果未能解决你的问题,请参考以下文章
Docker&Kubernetes ❀ Kubernetes集群Pod控制器 - Cronjob(CJ)