6
为什么在Linux的ZFS上不遵守arc_max设置?
我正在Ubuntu 12.04上从他们的PPA运行ZoL 0.6.2 。它位于具有16GB内存的主机上,旨在使用KVM / Libvirt运行某些VM。一段时间后,ZoL使用了疯狂的内存,在某些VM运行的情况下达到了98%的RAM使用率。这导致新进程拒绝启动“无法分配内存”。我什至无法启动我的所有VM,而在使用ZFS之前,该VM使用了大约40-50%的RAM。 据我了解,在不进行调整的情况下,一旦系统内存不足,ZoL应该立即释放内存。好吧,事实并非如此。因此,我决定将设置设为arc_max1GB。 # echo 1073741824 >> /sys/module/zfs/parameters/zfs_arc_max 尽管如此,它不会释放任何内存。 从下面的ARC统计数据可以看出,它使用的内存比配置的要多(比较c= 7572030912与c_max= 1073741824)。 我在这里做错了什么? # cat /proc/spl/kstat/zfs/arcstats 4 1 0x01 84 4032 43757119584 392054268420115 name type data hits 4 28057644 misses 4 13975282 demand_data_hits 4 19632274 demand_data_misses 4 571809 demand_metadata_hits 4 6333604 demand_metadata_misses 4 289110 prefetch_data_hits 4 …
20
zfsonlinux