CentOS7下MongoDB 3.6 NUMA警告永久修复:service启动自动加numactl
解决CentOS 7上MongoDB 3.6 NUMA警告的永久修复方案
我来帮你搞定这个NUMA警告的问题,CentOS 7用的是systemd来管理服务,所以你需要修改mongod的systemd服务配置文件,让它启动时自动带上numactl前缀。具体步骤如下:
第一步:确认numactl已安装
先检查系统里有没有numactl,执行命令:numactl --version如果提示找不到命令,先安装它:
sudo yum install numactl -y第二步:找到并复制mongod的systemd服务文件
默认的mongod服务文件通常在/usr/lib/systemd/system/mongod.service,但直接修改这个文件会在MongoDB包更新时被覆盖,所以我们要把它复制到用户自定义的systemd目录:sudo cp /usr/lib/systemd/system/mongod.service /etc/systemd/system/mongod.service第三步:修改服务配置文件
用编辑器打开复制后的文件:sudo vi /etc/systemd/system/mongod.service找到
[Service]小节下的ExecStart行,原来的内容大概是:ExecStart=/usr/bin/mongod --config /etc/mongod.conf把它改成带
numactl --interleave=all前缀的形式:ExecStart=/usr/bin/numactl --interleave=all /usr/bin/mongod --config /etc/mongod.conf保存并退出编辑器。
第四步:重新加载systemd配置并重启服务
让systemd识别我们修改后的配置:sudo systemctl daemon-reload然后重启mongod服务:
sudo service mongod restart第五步:验证修复效果
查看mongod的启动日志,确认NUMA警告已经消失:journalctl -u mongod -f
这样之后,每次用sudo service mongod start启动服务时,都会自动通过numactl --interleave=all来启动mongod,彻底解决NUMA相关的警告问题。
内容的提问来源于stack exchange,提问作者kentor
相关产品推荐
相关产品推荐

