小樱 发表于 2024/10/16 22:18

linux centos关闭禁用匿名共享AnonHugePages,优化transparent来防止系统内核内存占用消耗,导致进程取不到可用内存

linux centos关闭禁用匿名共享AnonHugePages,优化transparent来防止系统内核内存占用消耗,导致进程取不到可用内存

发现netdata视乎还使用256M的HugePages


一直以为netdata吃的AnonHugePages,没想到居然不是?
今天卸载监控服务并且重启系统,依旧占用了大量的AnonHugePages


输出的AnonHugePages值应当始终为0
cat /proc/meminfo | grep Huge

查看内核是否使用AnonHugePages
cat /sys/kernel/mm/transparent_hugepage/enabled

发现输出值为always,代表总是使用,我们需要改成never关闭
madvise never

编辑文件
vi /etc/default/grub
修改grub文件
在GRUB_CMDLINE_LINUX尾部增加transparent_hugepage=never
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="consoleblank=0 crashkernel=0 rhgb quiet transparent_hugepage=never"
GRUB_DISABLE_RECOVERY="true"
生成配置并重启
重启前注意无其他正在进行的工作,以免造成数据丢失
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot

重启完成后确认,成功关闭AnonHugePages


页: [1]
查看完整版本: linux centos关闭禁用匿名共享AnonHugePages,优化transparent来防止系统内核内存占用消耗,导致进程取不到可用内存