如何自动清理已完成的Job

问题描述

随着 K8s 中的 Job 越来越多,系统中会出现很多已经完成或者失败的 Job,如何实现自动删除这些 Job?

问题分析

创建 Job 时可以添加 ttlSecondsAfterFinished 字段,指定多长时间之后自动删除 Job,该字段在 Kubernetes 1.23 版本之前需要在 kube-apiserver 和 kube-controller-manager 开启Feature Gate,开启方式参考此链接

问题解决

Job yaml文件配置 ttlSecondsAfterFinished 字段

apiVersion: batch/v1
kind: Job
metadata:
  name: pi-with-ttl
spec:
  ttlSecondsAfterFinished: 100
  template:
    spec:
      containers:
      - name: pi
        image: perl
        command: ["perl",  "-Mbignum=bpi", "-wle", "print bpi(2000)"]
      restartPolicy: Never
参考链接

[1] https://kubernetes.io/zh/docs/concepts/workloads/controllers/ttlafterfinished/

如果您有其他问题,欢迎您联系火山引擎技术支持服务

0
0
0
0
关于作者

文章

0

获赞

0

收藏

0

所属团队号:
相关资源
云原生机器学习系统落地和实践
机器学习在字节跳动有着丰富业务场景:推广搜、CV/NLP/Speech 等。业务规模的不断增大对机器学习系统从用户体验、训练效率、编排调度、资源利用等方面也提出了新的挑战,而 Kubernetes 云原生理念的提出正是为了应对这些挑战。本次分享将主要介绍字节跳动机器学习系统云原生化的落地和实践。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论