K8 Pod终身:是否需要清理?

时间:2018-03-07 01:48:51

标签: kubernetes

Kubernetes Docs说出以下内容:

  

一般来说,豆荚不会消失,直到有人摧毁它们。这个   可能是人或控制者。这条规则的唯一例外是   Pods的成功阶段成功或失败超过一些   持续时间(由主人决定)将过期并自动生效   破坏。

此持续时间的默认值是什么,如何设置?我的pod也永远不会进入成功或失败阶段,而是分别进入已完成阶段或错误阶段。这是预期的;文件是否过时了?

我使用kubectl get pods --show-all检查pod阶段,其中有关它们的信息似乎仍然存在。是否需要额外的清理?在没有kubectl get pods的情况下运行--show-all在销毁后不显示任何广告连播。

我正在使用kubectl apply -f k8/dummy-pod.yaml和以下yaml文件创建pod:

apiVersion: v1
kind: Pod
metadata:
  name: dummy.3
  labels:
    vara: a
    role: idk
spec:
  hostNetwork: true
  restartPolicy: Never
  containers:
  - image: gcr.io/gv-test-196801/dummy:v2
    name: dummy-1

1 个答案:

答案 0 :(得分:2)

我相信这个文件已经过时了 使用TTL was abandoned收集Pod垃圾,以支持阈值数量的终止pod。 kube控制器管理器上的--terminated-pod-gc-thresholddocs here)。

目前,默认情况下,删除DaemonSet, Deployment, ReplicaSet or StatefulSet将会将其吊舱孤立 你可以通过enabling cascading deletes解决这个问题。
此行为将在1.10

中更改
  

在apps / v1之前,对于Pod中的Pod的默认垃圾收集策略   DaemonSet,Deployment,ReplicaSet或StatefulSet,是为了孤儿院   豆荚。也就是说,如果您删除其中一种,那就是它们的Pod   除非级联删除,否则不会自动删除   明确指定

请参阅kubernetes blog