kubernetes - Kubernetes Pod 是否会在成功完成后过期?
问题描述
我正在运行具有大量完成的作业,因此创建了数百个 pod 并最终进入COMPLETED
状态。
有没有办法让豆荚在它们完成时过期,这样我就不会得到一长串已完成的豆荚?
我们可以使用以下方法对作业执行此操作:
spec:
ttlSecondsAfterFinished: 300
successfulJobsHistoryLimit: 1
但是我还没有看到一种方法可以为作业创建的 pod 做到这一点。
解决方案
不,它们是故意留下的,您必须手动清理它们。我们有一个定制的清洁工工作,在 7 天后将它们移除。
当 Job 完成时,不会再创建 Pod,但也不会删除 Pod。保留它们允许您仍然查看已完成 pod 的日志以检查错误、警告或其他诊断输出。作业对象在完成后也会保留,以便您查看其状态。用户可以在记录其状态后删除旧作业。
https://kubernetes.io/docs/concepts/workloads/controllers/job/#job-termination-and-cleanup
推荐阅读
- python - 如何添加基于列值限制外键数量的 Django 约束?
- reactjs - 设置选项卡导航器时出错 - 屏幕“主页”的“组件”道具的值无效
- java - 收集为 HashMap
来自Java 8中没有POJO的对象列表或流 - postgresql - 在同一个 postgres 服务器上,是否可以有一个具有 md5 身份验证的数据库和另一个具有 scram-sha-256 的数据库?
- java - 使用 viewModels 从 ChildFragment 访问 ParentFragment 中的 ViewModel
- reactjs - 将函数作为参数传递给材质 ui 函数
- android - Android:我可以设置另一个视频播放器供
- javascript - 二叉搜索树递归问题
- spring - Spring Context Hierarchy:如何同时初始化子上下文
- php - 使用 php 替换特定的行或单词