创建容器但未指定资源限制时,哪个组件负责计算该容器或将资源限制分配给该容器?是kubelet还是Docker?
答案 0 :(得分:2)
如果Pod没有指定任何资源限制,则最终取决于节点上的Linux内核调度程序来分配CPU周期或不分配给进程,并且如果出现以下情况,则OOM杀死Pod或节点上的其他进程:内存使用过多。 Kubernetes和Docker都不会分配或猜测任何限制。
因此,如果您的进程存在大量内存泄漏,并且将其安排在具有256 GB可用内存的非常大但安静的实例上,则它将在使用OOM之前先使用几乎所有内存。如果将第二个副本安排在只有4 GB的较小实例上,则很可能会更快地失败。通常,您实际上需要为一致行为设置限制。