容器可以比单个节点拥有更高的资源保留量吗

容器可以比单个节点拥有更高的资源保留量吗

我尝试寻找答案,但似乎无法用正确的方式来表达我想要的东西。

例如,我是否可以有一个需要 6GB RAM 的容器,但我只有 3 个节点,每个节点 4GB?它会被分割到多个节点吗?我想这取决于容器正在运行什么。

答案1

这是不可能的。容器不能使用比它们被调度的节点更多的资源。如果你的容器需要的资源比集群中任何节点拥有的资源都多——它根本就不会被调度。

以下部分摘自相关文章指定对于您的节点来说太大的内存请求,但它包含重要信息:

Pod 调度基于请求。仅当节点具有足够的可用内存来满足 Pod 的内存请求时,Pod 才会被调度到该节点上运行。

调度程序根据 Pod 请求确保节点上的所有 Pod 都有足够的资源。它会验证节点上容器的请求总和不大于节点容量。它包括节点启动的所有容器,但不包括集群知识范围之外启动的容器或进程。

如果您尝试调度需要比resources.request任何节点拥有的更多资源(我的意思是)的 pod,那么 pod 将保持待处理状态并出现FailedScheduling错误。

相关内容