首页 > 解决方案 > Kubernetes pod 中多个 emptyDir 的后果是什么?

问题描述

所以我在这里看到一个想要控制 emptyDir 大小的相关问题: Setting Kubernetes emptyDir volume size。我看到如果达到这个限制,吊舱本身将被驱逐。

我也知道 emptyDir 将是请求 RAM 的一半。那么这是否意味着如果我尝试在一个 pod 中配置 2 个或更多 emptyDir 卷,它会失败?还是只是所有虚拟内存分配,我可以在这个意义上过度配置?

我可能想要得到的是,我不希望对我的卷进行硬限制,这会破坏 pod 本身,但如果其他卷未使用,则可以容纳在 RAM 中。当然,如果总数超出 RAM,我希望 pod 会被丢弃。

标签: kubernetes

解决方案


emptyDir默认情况下,卷是磁盘支持的;没有特别禁止安装多个。

该文档还指出:

但是,您可以将该emptyDir.medium字段设置为"Memory"[...,如果您这样做...],您编写的任何文件都将计入 Container 的内存限制。

因此这里适用普通的 pod 资源限制:如果您设置了内存限制,并且应用程序内存和 tmpfs 的组合使用量超过了该限制,则 pod 将被杀死。


推荐阅读