我有一台运行 Ubuntu 16.04 LTS 的专用服务器。我的 mongoDB 服务有问题。当我进入 shell 时,我收到以下消息:
WARNING: You are running on a NUMA machine.
We suggest launching mongod like this to avoid performance problems:
numactl --interleave=all mongod [other options]
Run Code Online (Sandbox Code Playgroud)
我该如何解决?我已经尝试过类似的解决方案:How should I start MongoDB on a NUMA machine? 和:http ://greproot.com/warning-you-are-running-on-a-numa-machine-we-suggest-launching-mongod-like-this-to-avoid-performance-problems-numactl-interleaveall- mongod-other-options/ 但什么都没有...抱歉英语不好:D
小智 3
正如 Jacek 所建议的 - 如果使用 mongodb 专用服务器,则在 BIOS 中禁用 NUMA 是一个不错的选择。对于生产场景,建议使用numactl命令来确保 NUMA 意识面向未来。
\n\n要使 mongod 开始使用交错模式,请numactl \xe2\x80\x93interleave=all在常规模式之前添加mongod命令之前添加:
numactl --interleave=all mongod < mongod options>\nRun Code Online (Sandbox Code Playgroud)\n\n如果使用 numaclt 方法,还可以通过添加以下内容来禁用 vm zone reclaim zone_reclaim_mode 为 0 ,vm.zone_reclaim_mode = 0保存/etc/sysctl.conf并执行sysctl -p以将新设置加载到内核中。
小智 1
您可以按照您为该过程复制/粘贴的消息中所述禁用 NUMA。您还可以在 grub 中在系统范围内禁用它,为内核设置 numa=off 。另一种选择是在 BIOS 中禁用它 - 可能取决于您使用的硬件(例如,对于 Dell,它将“Node Interleaving”设置为“Enable”)如果您有 Mongo 专用的数据库服务器,这将是一个很好的解决方案。
您可以稍后使用“numactl -H”命令进行验证 - 您应该只看到一个节点。
一般来说 - 您也可以 - 根据您的具体情况,如果您的 mongo 实例不太大,请忽略该消息。这可能不是一个真正的严重问题,但 Mongo 在启动过程中会警告您有关您的设置,这可能会导致问题。是的 - 在生产系统上,有大量数据、大内存分配 - 您可能会遇到性能问题,甚至内存分配失败。
| 归档时间: |
|
| 查看次数: |
10298 次 |
| 最近记录: |