CentOS7/RHEL7如何修改swappiness值()

赋料扬雄敌,诗看子建亲。这篇文章主要讲述CentOS7/RHEL7如何修改swappiness值?相关的知识,希望能为你提供帮助。
【CentOS7/RHEL7如何修改swappiness值()】示例:修改swappiness值为0
永久配置方法:
sysctl -w vm.swappiness=0
echo vm.swappiness = 0 > > /etc/sysctl.conf


临时配置方法:
sysctl -w vm.swappiness=0
手动更改/sys/fs/cgroup/memory下子目录对应的memory.swappiness值


临时配置后可能出现的故障描述:
        物理内存还比较充足,vm.swappiness已经设置为0,但系统还是用了swap分区
 
故障原因
        根因是虚拟机machine.slice和系统system.slices、user.slices使用了swap空间。


直接原因
        通过sysctl -w设置vm.swappiness并不能改变cgroup中machine.slice、system.slices、user.slices里面对应的memory.swappiness值,这些值继承/sys/fs/cgroup/memory下vm.swappiness的值,当创建子目录后,再创建子目录,此时vm.swappiness的值继承于父目录里对应的vm.swappiness值,因此,在系统运行时,只改变/sys/fs/cgroup/memory这个根目录的值,并不影响已创建子目录的vm.swappiness配置,所以如果需要更改,就要手动操作。


总结
        正常情况下,如果在sysctl.conf中配置了vm.swappiness的值,重启之后,所有配置都是新值,但如果手动动态更改,就需要手动更改/sys/fs/cgroup/memory下子目录对应的memory.swappiness值。


本文出自 “敏而好学” 博客,谢绝转载!

    推荐阅读