FUSE耗尽LXC容器内存问题解决

05/28/2017

大量网络文件协议需要利用FUSE(用户空间文件系统)挂载成本地目录,例如SSHFS、CurlFtpFS、EncFS等。而此挂载过程随着IO和网络请求的产生必然会形成缓存,其中包括FUSE协议本身使用的缓存以及内核缓存。在物理机和硬件虚拟化(Hypervisor)环境下,这些缓存会在内存中体现为cache,内存耗尽时将会自动被挤出,并不会对系统产生影响。但是,在LXC等容器环境下,受限于请求控制,这些缓存并无法被标记为cache,而是标记为正在使用的实际内存,虽然最终内存耗尽时仍会部分被挤出,但对于运维等服务器管理工作来说,会造成不必要的误会。

阅读更多