Pod self delete



在我的环境中,我有一个服务,它生成具有必要配置的yml,因此可以与kubectl apply一起执行该文件以创建pod。我的问题是:我可以生成一个带有指令的yml文件,以便pod可以在状态完成(status.phase==Succeeded)时自行删除吗?

目前,我正在用cronjobs解决这个问题。此外,我知道我可以使用kubectl delete pod --field-selector=status.phase==Succeeded --namespace <namespace>之类的东西,但我想知道它是否可以通过pod的配置文件(yml)来完成。

这是由服务(构建器)生成的文件,将与kubectl apply -f <yml file>一起执行:

apiVersion: batch/v1
kind: Job
metadata:
name: order-test
namespace: my-namespace
spec:
ttlSecondsAfterFinished: 100
template:
spec:
containers:
- name: order-test
image: namespace/image:version
env:
- name: example
value: "test"
restartPolicy: Never
backoffLimit: 4

我想在它达到所需状态后自动删除它。

使用作业历史限制.spec.successfulJobsHistoryLimit.spec.failedJobsHistoryLimit字段是可选的。这些字段指定应该保留多少已完成和失败的作业。默认值分别为3和1。将限制设置为0对应于相应类型的作业在完成后不保留。

Ref: https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/#jobs-history-limits

相关内容

  • 没有找到相关文章

最新更新