根据我的理解,Job对象应该在一定时间后收获pod.但是在我的GKE集群(Kubernetes 1.1.8)上,似乎"kubectl get pods -a"可以从几天前列出pod.
所有都是使用Jobs API创建的.
我注意到用kubectl删除作业删除作业后,pod也被删除了.
我主要担心的是,我将在批处理作业中在集群上运行数千和数万个pod,并且不希望重载内部积压系统.
我在自动删除由 CronJob 启动的已完成作业时遇到问题。正如我在此处和此处的 QA以及官方文档.spec.successfulJobsHistoryLimit中所读到的,这可以通过建立作业历史记录限制来完成
.spec.failedJobsHistoryLimit。我已经做到了,两种情况都成立为1。但我的集群正在保存超过 1 个已完成的作业,事实上,它保存的数量超过了默认值(3 个成功作业和 1 个失败作业)。
我当前的 CronJob 配置是
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: some-name-cron
spec:
schedule: "00 05 1/1 * ?"
successfulJobsHistoryLimit: 1
failedJobsHistoryLimit: 1
jobTemplate:
spec: ...
Run Code Online (Sandbox Code Playgroud)
我的版本是: - 客户端版本:Client Version: version.Info{Major:"1", Minor:"9",
- 服务器版本:Server Version: version.Info{Major:"1", Minor:"8+",
那么,我做错了什么?
我附上了 k8s 仪表板的图像。