【问题标题】:no matches for kind "CronJob" in version "batch/v1"版本“batch/v1”中没有匹配类型“CronJob”
【发布时间】:2021-08-03 20:00:24
【问题描述】:

当我运行 CronJob 示例时,我使用 Kubernetes v1.19.7

apiVersion: batch/v1
kind: CronJob
metadata:
  name: express-learn-cronjob
spec:
  schedule: "*/1 * * * *"
  jobTemplate:
    spec:
      template:
        spec:
          containers:
            - name: hello
              image: busybox
              command:
                - /bin/sh
                - -c
                - date; echo Hello from the Kubernetes cluster
          restartPolicy: OnFailure

无法识别“app-cronjob.yml”:版本“batch/v1”中类型“CronJob”没有匹配项

我可以通过运行 kubectl api-versions | 获取批处理信息grep 批处理

batch/v1
batch/v1beta1

有什么我错过的吗?我该如何解决?

【问题讨论】:

    标签: kubernetes kubernetes-cronjob


    【解决方案1】:

    对于 Kubernetes 版本 1.19.x,您需要使用 batch/v1beta1 作为 CronJob 的 apiVersion。

    文档版本 1-19 中记录了这一点:

    https://v1-19.docs.kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/

    仅在 k8s 1.21 版本上稳定。

    【讨论】:

    • 谢谢,它解决了,只是好奇为什么API打印v1但我们不能使用它?
    • 一件事是 api 版本,另一件事是您正在创建的资源在哪个版本中可用。在 1.19.x 版本中,您确实将 batch/v1 作为可用的 api 资源,但在它下面没有资源 CronJob。
    猜你喜欢
    • 1970-01-01
    • 2020-02-24
    • 1970-01-01
    • 2020-08-28
    • 2022-07-07
    • 2021-10-04
    • 2020-05-13
    • 1970-01-01
    • 2021-12-21
    相关资源
    最近更新 更多