Kubernetes中的默认容器CPU限制?

时间:2019-10-30 05:09:57

标签: kubernetes

从这里我意识到,如果没有给容器指定CPU限制,那么它将占用命名空间级别的默认CPU限制:https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/

我的问题是,如果我们没有在命名空间级别设置默认的CPU限制(LimitRange),该怎么办?在这种情况下,容器分配了什么CPU限制?

谢谢。

3 个答案:

答案 0 :(得分:3)

如果没有为容器指定自己的CPU请求和限制,则为LimitaRange分配默认的CPU请求和限制(如果为命名空间配置了这样的LimitRange)。

如果未为命名空间配置LimitRange,并且容器未指定其自己的CPU请求和限制,则该pod在BestEffort QoS(服务质量)类中运行。在这种情况下,从节点的shared pool分配CPU,直至共享池中的可用CPU以及其中是否有CPU。实际上,可能没有可用的CPU,并且容器/容器可能会“饿死” CPU。

答案 1 :(得分:0)

它只会按需使用资源,您可以在kubernetes集群中使用grafana仪表板来检查pod的内存和cpu占用率。

如果节点资源不足,POD将获得状态OOM被杀死

您可以使用this舵图下载grafana

答案 2 :(得分:0)

容器将使用节点/主机系统的CPU资源。如果需要,您必须垂直扩展节点的资源。