【问题标题】:Kubernetes - What are kube-system pods and is it safe to delete them?Kubernetes - 什么是 kube-system pod,删除它们是否安全?
【发布时间】:2016-04-12 15:13:17
【问题描述】:

我目前有一个在 GCloud 上运行的集群,我用 3 个节点创建了该集群。 这就是我运行kubectl describe nodes时得到的结果

Name:           node1
Capacity:
cpu:        1
memory: 3800808Ki
pods:       40
Non-terminated Pods:        (3 in total)
Namespace           Name                                    CPU Requests    CPU Limits  Memory Requests Memory Limits
─────────           ────                                    ────────────    ──────────  ─────────────── ─────────────
default         my-pod1                                 100m (10%)  0 (0%)      0 (0%)      0 (0%)
default         my-pod2                             100m (10%)  0 (0%)      0 (0%)      0 (0%)
kube-system         fluentd-cloud-logging-gke-little-people-e39a45a8-node-75fn      100m (10%)  100m (10%)  200Mi (5%)  200Mi (5%)
Allocated resources:
(Total limits may be over 100%, i.e., overcommitted. More info: http://releases.k8s.io/HEAD/docs/user-guide/compute-resources.md)
CPU Requests    CPU Limits  Memory Requests Memory Limits
────────────    ──────────  ─────────────── ─────────────
300m (30%)  100m (10%)  200Mi (5%)  200Mi (5%)

Name:           node2
Capacity:
cpu:        1
memory: 3800808Ki
pods:       40
Non-terminated Pods:        (4 in total)
Namespace           Name                                    CPU Requests    CPU Limits  Memory Requests Memory Limits
─────────           ────                                    ────────────    ──────────  ─────────────── ─────────────
default         my-pod3                             100m (10%)  0 (0%)      0 (0%)      0 (0%)
kube-system         fluentd-cloud-logging-gke-little-people-e39a45a8-node-wcle      100m (10%)  100m (10%)  200Mi (5%)  200Mi (5%)
kube-system         heapster-v11-yi2nw                          100m (10%)  100m (10%)  236Mi (6%)  236Mi (6%)
kube-system         kube-ui-v4-5nh36                            100m (10%)  100m (10%)  50Mi (1%)   50Mi (1%)
Allocated resources:
(Total limits may be over 100%, i.e., overcommitted. More info: http://releases.k8s.io/HEAD/docs/user-guide/compute-resources.md)
CPU Requests    CPU Limits  Memory Requests Memory Limits
────────────    ──────────  ─────────────── ─────────────
400m (40%)  300m (30%)  486Mi (13%) 486Mi (13%)

Name:           node3
Capacity:
cpu:        1
memory: 3800808Ki
pods:       40
Non-terminated Pods:        (3 in total)
Namespace           Name                                    CPU Requests    CPU Limits  Memory Requests Memory Limits
─────────           ────                                    ────────────    ──────────  ─────────────── ─────────────
kube-system         fluentd-cloud-logging-gke-little-people-e39a45a8-node-xhdy      100m (10%)  100m (10%)  200Mi (5%)  200Mi (5%)
kube-system         kube-dns-v9-bo86j                           310m (31%)  310m (31%)  170Mi (4%)  170Mi (4%)
kube-system         l7-lb-controller-v0.5.2-ae0t2                       110m (11%)  110m (11%)  70Mi (1%)   120Mi (3%)
Allocated resources:
(Total limits may be over 100%, i.e., overcommitted. More info: http://releases.k8s.io/HEAD/docs/user-guide/compute-resources.md)
CPU Requests    CPU Limits  Memory Requests Memory Limits
────────────    ──────────  ─────────────── ─────────────
520m (52%)  520m (52%)  440Mi (11%) 490Mi (13%)

现在,如您所见,我有 3 个 pod,2 个在 node1 上,1 个在 node2 上。我想做的是移动 node1 上的所有 pod 并删除另外两个节点。但是,似乎有属于 kube-system 命名空间的 pod,我不知道删除它们可能会产生什么影响。

我可以看出名为 fluentd-cloud-logging...heapster.. 的 pod 用于日志记录和计算机资源使用,但我真的不知道是否可以将 pod kube-dns-v9-bo86jl7-lb-controller-v0.5.2-ae0t2 移动到另一个节点反响。

谁能提供一些关于我应该如何进行的见解?

非常感谢。

【问题讨论】:

    标签: kubernetes


    【解决方案1】:

    杀死它们以便在另一个节点上重新安排它们是非常好的。除了 fluentd pod 之外,它们都可以重新调度,这些 pod 绑定到每个节点。

    【讨论】:

    • 感谢您的回答,亚历克斯。我有 2 个问题:1)您是否有任何指向某种文档的链接,这些文档解释了每个 pod 是什么?在继续删除它们之前,我想尝试了解所有内容。 2)另外,当我杀死一个 pod 时,如何确保它在我想要的节点上重新创建?再次感谢。
    • 1) 您可以查看READMEs for separate add-ons。 2)你可以在杀死Pod之前将另外两个节点标记为“不可调度”,并在所有Pod被调度后重置“不可调度”。要将 ndoe 设置为不可调度,请参阅 github.com/kubernetes/kubernetes/blob/…
    • @Yu-JuHong,这太棒了!非常感谢,这对我帮助很大!
    • 我在系统命名空间中错误创建了一个pod,现在无法删除。它只是被重新创建。摆脱系统命名空间的合法方法是什么?
    • 对于稍后看到此内容的任何人,Santanu 在他的评论中重新提出了这个问题:stackoverflow.com/questions/38263252/…
    【解决方案2】:

    如果您想缩小集群规模,您只需删除三个节点中的两个,然后让系统重新调度在删除节点时丢失的任何 pod。如果剩余节点上没有足够的空间,您可能会看到 Pod 永久挂起。让 kube-system pod 挂起并不理想,因为它们每个都为您的集群执行“系统功能”(例如 DNS、监控等),如果没有它们运行,您的集群将无法完全正常运行。

    如果您不需要某些系统 pod 的功能,您也可以使用 gcloud container clusters update 命令禁用它们。

    【讨论】:

      猜你喜欢
      • 2019-06-09
      • 1970-01-01
      • 1970-01-01
      • 2019-07-06
      • 1970-01-01
      • 1970-01-01
      • 2011-03-28
      • 2017-12-24
      • 2020-01-07
      相关资源
      最近更新 更多