【问题标题】:How to set Memory limit for a pod in Kubernetes如何在 Kubernetes 中为 Pod 设置内存限制
【发布时间】:2020-03-14 13:06:24
【问题描述】:

我有一个 6GB 内存的节点。我想在上面运行 2 个 pod。

问题 1:

POD1 的请求为 4GB,限制为 6GB,而 POD2 没有限制。
POD1 以 4GB 运行,节点上有 2GB 可用内存。
Kubernetes 可以在这个节点上分配 POD2 吗?
还是会在 Pending 和 You don’t have enough resources 中?

如果Kubernetes在这个节点上运行这个Pod2,POD2能否增长到POD1分配的4GB内存??
换句话说,Pod2 可以使用分配给 Pod1 的内存吗?

问题 2:
这个设置(pic2)会起作用吗?

【问题讨论】:

    标签: kubernetes kubernetes-pod


    【解决方案1】:

    调度器确保对于每种资源类型,调度的Containers的资源请求总和小于节点的容量。

    如果容器超出其内存限制,它可能会被终止。如果它是可重新启动的,kubelet 将重新启动它,就像任何其他类型的运行时故障一样。 如果一个 Container 超出了它的内存请求,很可能只要节点内存不足,它的 Pod 就会被驱逐。

    Kubernetes可以在这个节点分配POD2吗?

    是的,但前提是它的请求不超过 2GB。

    如果 Kubernetes 在这个节点上运行这个 Pod2,POD2 可以长成 POD1 的吗? 分配4GB内存??也就是说,Pod2 能否使用分配的内存 用于 Pod1??

    没有。

    问题 2:此设置 (pic2) 是否有效?

    调度程序将调度它。但是如果总内存消耗超过节点的容量,Pod 将被驱逐。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-27
      • 2019-02-16
      • 2020-05-19
      • 2020-02-27
      • 1970-01-01
      • 1970-01-01
      • 2021-02-18
      相关资源
      最近更新 更多