Kubernetes使用CronJob运行作业

时间:2019-01-25 13:23:25

标签: kubernetes kubernetes-cronjob

有没有一种方法可以使用CronJob资源运行现有的Job。 在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 Spec:

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 个答案:

答案 0 :(得分:0)

不,您无法按照自己的方式进行操作。 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