完成pods垃圾收集

时间:2016-10-10 15:13:06

标签: kubernetes

Lifecycle of a Pod我读过:

  

通常,创建的pod不会消失,直到有人为止   摧毁他们。这可能是人类或ReplicationController,或   另一个控制器这个规则的唯一例外是pods   成功或失败的PodPhase超过一段时间   (由主人决定)将过期并自动获得。

我使用RestartPolicy = Never创建pod,但在完成后(状态成功)它们不会被收获。

请建议。

2 个答案:

答案 0 :(得分:2)

您可以在控制器管理器上设置--terminated-pod-gc-threshold。这将分阶段进行:

  

如果阶段:= pod.Status.Phase;阶段!= api.PodPending&&阶段!= api.PodRunning&&阶段!= api.PodUnknown

https://github.com/kubernetes/kubernetes/blob/master/pkg/controller/podgc/gc_controller.go#L126

答案 1 :(得分:0)

<块引用>

可以在 GKE 上设置 --terminated-pod-gc-threshold 吗?

似乎无法为用户更改 GKE 上的“--terminated-pod-gc-threshold”: https://issuetracker.google.com/issues/172663707

鉴于控制器管理器由 Google 管理,GKE 用户无法更改该值。