如何解决Openshift删除Cronjob仍在运行
我在OpenShift 3.11中使用restartPolicy
始终设置为cronjob。但是,当我删除此cronjob和关联的作业时,这些作业仍在运行(并且截至撰写本文时,当前仍在运行)。我无法弄清楚如何停止工作,但想停止工作。
我尝试将部署缩减为零容器,删除部署并重新创建(重新部署),删除构建配置,然后重做构建配置,在Open Shift中删除整个项目,然后重新创建项目,运行: oc delete all -l app=app
,oc delete jobs --all
和oc delete pods --all
,到目前为止都没有工作。
有关如何删除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
不返回任何作业。
解决方法
根据您更新的问题,我可以看到为什么oc delete all -l app=app
尚未删除您的CronJob-里面没有metadata.labels
,所以没有选择它。您可以使用
oc get all -lapp=app
验证要删除的内容。需要注意的是-all
实际上并非“一切”,请参考Listing all resources in a namespace以了解在命名空间中获取每个资源的支持方法。
但是,如果您确实删除了一个项目,则应删除所有资源。我只能看到存在CronJob的一种可能性-您可能也已将其添加到其他命名空间中。您可以使用
oc get cronjob --all-namespaces --field-selector=metadata.name=you_cronjob_name
在所有命名空间中使用您的名字搜索cronjob。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。