CentOS 7 可以使用Zswap吗?如何监控Zswap?这是一个好主意吗?

CentOS 7 可以使用Zswap吗?如何监控Zswap?这是一个好主意吗?

CentOS 7 支持 Zswap 吗?如果是这样,我该如何启用它以及如何测试它是否有效?这对于 CentOS 服务器来说是个好主意吗?

启用尝试:

chmod 777 /sys/module/zswap/parameters/enabled;echo 1 > /sys/module/zswap/parameters/enabled; echo 40 > /sys/module/zswap/parameters/max_pool_percent

我尝试查看 zswap 是否已启用并正常工作的测试:

grep -R . /sys/kernel/debug/zswap/

返回:

grep: /sys/kernel/debug/zswap/: No such file or directory

下面什么都不返回:

dmesg | grep -i zswap

参数确实存在:

grep -R . /sys/module/zswap/parameters

返回:

/sys/module/zswap/parameters/zpool:zbud
/sys/module/zswap/parameters/max_pool_percent:40
/sys/module/zswap/parameters/enabled:Y
/sys/module/zswap/parameters/compressor:lzo

五氯苯酚-pmda-zswap用于监控交换?

我最好的猜测是.. CentOS 并不正式支持 zswap,因为它应该在 dmesg 中加载...但我可能是错的。

答案1

Zswap 是 Linux 内核版本 3.11 中引入的一项功能。由于 CentOS7 附带内核版本 3.10,因此它不支持开箱即用的 Zswap。但是您可以在用新版本替换内核后使用您提供的命令启用它。

顺便说一句,如果您已经更新了内核版本,那么我怀疑这可能是因为您调用了chmod系统文件,这可能被视为安全问题。

先尝试解决这些问题,然后告诉我你做得是否良好。 :)

可能有用的参考资料:

# get source, use kernel version v4.11-rc8 as an example
git clone --depth 1 --branch v4.11-rc8 [email protected]:torvalds/linux.git
cd linux
# get default config file
# do nothing in GUI and save, then default config would be saved in .config
make menuconfig
# install build dependencies
sudo yum groupinstall "Development Tools"
sudo yum install ncurses-devel
sudo yum install hmaccalc zlib-devel binutils-devel elfutils-libelf-devel openssl-devel
# new dependency to build kernel v4.x (CentOS 7 uses v3.10.x)
sudo yum install bc
# compile
make all -j
sudo make modules_install
sudo make install
# config grub
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo cat /boot/grub2/grub.cfg
# option depends on order in grub.cfg, 0 is the first one
sudo grub2-set-default 0
# check selection
sudo grub2-editenv list
# restart system with new kernel version
sudo reboot

相关内容