linux - MongoDB 预读警告

标签 linux mongodb

我在启动 MongoDB shell 时收到此警告:

Wed Mar 20 22:40:49.850 [initandlisten]

Wed Mar 20 22:40:49.850 [initandlisten] ** WARNING: Readahead for /data is set to 2048KB

Wed Mar 20 22:40:49.850 [initandlisten] ** We suggest setting it to 256KB (512 sectors) or less

Wed Mar 20 22:40:49.850 [initandlisten] ** http://dochub.mongodb.org/core/readahead

我用过:

df /data

要查找我的数据安装并随后使用的驱动器所在的位置:

sudo blockdev --setra 256 /dev/mapper/vg0-data

将预读设置为指定的 256。我已经确认这适用于:

sudo blockdev --getra /dev/mapper/vg0-data

但是,我在启动 shell 时仍然遇到同样的错误?

更新

我已经重新启动了 mongodb 服务器实例,但仍然收到此错误。

更新 2

我的 linux 服务器托管在 AWS 上,因此使用虚拟卷。我已将所有这些卷的预读值设置为 256,但仍然收到此错误。

更新 3

这是 MongoDB 主实例的 blockdev --report

RO    RA   SSZ   BSZ   StartSec            Size   Device
rw   256   512  4096          0      8589934592   /dev/xvda1
rw   256   512  4096          0     10737418240   /dev/xvdh8
rw   256   512  4096          0     10737418240   /dev/xvdh7
rw   256   512  4096          0     10737418240   /dev/xvdh6
rw   256   512  4096          0     10737418240   /dev/xvdh5
rw   256   512  4096          0     10737418240   /dev/xvdh4
rw   256   512  4096          0     10737418240   /dev/xvdh3
rw   256   512  4096          0     10737418240   /dev/xvdh2
rw   256   512  4096          0     10737418240   /dev/xvdh1
rw  4096   512  4096          0     42944430080   /dev/md127
rw  4096   512  4096          0     38646317056   /dev/dm-0
rw  4096   512  4096          0      2143289344   /dev/dm-1
rw  4096   512  4096          0      2143289344   /dev/dm-2

这是 MongoDB 的辅助实例的 blockdev --report

RO    RA   SSZ   BSZ   StartSec            Size   Device
rw   256   512  4096          0      8589934592   /dev/xvda1
rw   256   512  4096          0     10737418240   /dev/xvdh8
rw   256   512  4096          0     10737418240   /dev/xvdh7
rw   256   512  4096          0     10737418240   /dev/xvdh6
rw   256   512  4096          0     10737418240   /dev/xvdh5
rw   256   512  4096          0     10737418240   /dev/xvdh4
rw   256   512  4096          0     10737418240   /dev/xvdh3
rw   256   512  4096          0     10737418240   /dev/xvdh2
rw   256   512  4096          0     10737418240   /dev/xvdh1
rw  4096   512  4096          0     42944430080   /dev/md127
rw  4096   512  4096          0     38646317056   /dev/dm-0
rw  4096   512  4096          0      2143289344   /dev/dm-1
rw  4096   512  4096          0      2143289344   /dev/dm-2

这是 MongoDB 仲裁实例的 blockdev --report

RO    RA   SSZ   BSZ   StartSec            Size   Device
rw   256   512  4096          0      8589934592   /dev/xvda1

最佳答案

答案是在启动脚本中运行 blockdev --setra。每次系统重新启动时,预读值都会恢复为默认值。

在我的例子中,我只是用 blockdev --report 弄清楚了我的逻辑驱动器是什么,然后我在“开始”中的每个驱动器上运行 blockdev --setra init.d 中 MongoDB 启动脚本的部分。

希望这可以帮助遇到类似问题的其他人。

关于linux - MongoDB 预读警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16715961/

相关文章:

linux - USB key 安全 - linux 启动

javascript - mongodb 在嵌套容器中找不到我的模式方法

c++ - FD_ISSET() 是否返回接收数据的文件描述符

linux - 文件名匹配,区分数字和字符

Mongodb无效运算符: $eq (version 3. 0.6)

node.js - TypeError : Grid is not a constructor. Mongodb Node 驱动

python - PyMongo 类型错误

php - PHP 中的 MongoRegex 返回错误结果?

python - 调用的子进程不按顺序执行 bash 脚本

VI 中的 Python 测试代码