Kubernetes (minikube) pod OOM 在 Node 中明显留有大量内存的情况下被杀死
2022-09-01 14:02:07
我正在使用minikube,从它开始
minikube start --memory 8192
对于节点的 8Gb 内存。我正在分配具有资源约束的 Pod
resources:
limits:
memory: 256Mi
requests:
memory: 256Mi
因此,每个节点的RAM为256Mb,我假设,在达到8Gb内存限制之前,这将为我提供32个pod,但问题是,每当我到达要部署的第8个pod时,第9个Pod永远不会运行,因为它不断被OOM杀死。
对于上下文,每个 pod 都是一个 Java 应用程序,其中包含一个 frolvlad/alpine-oraclejdk8:slim Docker 容器,使用 -Xmx512m -Xms128m 运行(即使 JVM 确实使用完整的 512Mb 而不是 256Mb,我仍然远远没有达到 8Gb 上限的 16 pod 限制)。
我在这里错过了什么?为什么 Pod 被 OOM 杀死时,显然还剩下这么多的可用可分配内存?
提前致谢