Openshift 仍删除了 Cronjob 运行

Openshift Deleted Cronjob Still Running

我在 OpenShift 3.11 中创建了一个 cronjob,restartPolicy 总是。然而,当我删除这个 cronjob 和相关的作业时,这些作业(并且在撰写本文时目前是)仍然 运行。我不知道如何停止工作,但想从 运行.

停止工作

我已尝试将部署缩减为零 pods、删除部署并重新创建(重新部署)、删除构建配置然后重做构建配置、删除 Open Shift 中的整个项目,然后重新创建项目,运行:oc delete all -l app=appoc delete jobs --alloc delete pods --all,其中 none 到目前为止有效。

有关如何删除 cronjob 的任何建议都很有帮助!

编辑:

cronjob.yaml:

kind: CronJob
apiVersion: batch/v1beta1
metadata:
  name: --redacted--
  namespace: --redacted--
  selfLink: --redacted--
  uid: 5d5cde7d-e8f6-11ea-8ec0-00505682ee91
  resourceVersion: '178216471'
  creationTimestamp: '2020-08-28T06:19:01Z'
spec:
  schedule: 0 8 * * *
  concurrencyPolicy: Allow
  suspend: false
  jobTemplate:
    metadata:
      creationTimestamp: null
    spec:
      template:
        metadata:
          creationTimestamp: null
        spec:
          containers:
            - name: --redacted--
              image: byrnedo/alpine-curl
              args:
                - '--insecure'
                - '--location'
                - >-
                  -H 'Authorization: Bearer --redacted--'
                - http://--redacted--
                - '-XPOST'
              resources: {}
              terminationMessagePath: /dev/termination-log
              terminationMessagePolicy: File
              imagePullPolicy: Always
          restartPolicy: Always
          terminationGracePeriodSeconds: 30
          dnsPolicy: ClusterFirst
          securityContext: {}
          schedulerName: default-scheduler
  successfulJobsHistoryLimit: 3
  failedJobsHistoryLimit: 1
status:
  lastScheduleTime: '2020-08-28T08:00:00Z'

oc get cronjobs returns 没有工作。

根据你更新的问题,我明白了为什么 oc delete all -l app=app 没有删除你的 CronJob - 里面没有 metadata.labels,所以它没有被选中。您可以使用

oc get all -lapp=app

验证要删除的内容。但有一个警告 - all 实际上不是“一切”,请参阅 以查看支持的获取命名空间中每一项资源的方法。

但如果您真的删除了一个项目 - 所有资源都应该被删除。我只能看到 CronJob 存在的一种可能性——您可能也已将其添加到其他命名空间。您可以使用

oc get cronjob --all-namespaces --field-selector=metadata.name=you_cronjob_name

在所有命名空间中使用您的名字搜索 cronjob。