MongoDB预读警告

Jos*_*ias 10 linux mongodb

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

3月20日星期三22:40:49.850 [initandlisten]

3月20日星期三22:40:49.850 [initandlisten]**警告:/ data的预读设置为2048KB

3月20日星期三22:40:49.850 [initandlisten]**我们建议将其设置为256KB(512扇区)或更少

3月20日星期三22:40:49.850 [initandlisten]** http://dochub.mongodb.org/core/readahead

我用过:

df/data

要查找驱动器的位置,我的数据已装入并随后使用:

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

将readahead设置为指定的256.我已经证实这有效:

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

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

UPDATE

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

更新2

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

更新3

这是一个blockdev - MongoDB主实例的报告

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
Run Code Online (Sandbox Code Playgroud)

这是一个blockdev - MongoDB的Secondary实例的报告

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
Run Code Online (Sandbox Code Playgroud)

这是一个blockdev - MongoDB的Arbiter实例的报告

RO    RA   SSZ   BSZ   StartSec            Size   Device
rw   256   512  4096          0      8589934592   /dev/xvda1
Run Code Online (Sandbox Code Playgroud)

Jos*_*ias 8

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

在我的情况下,我只知道我的逻辑驱动器是什么blockdev --report,然后我blockdev --setra在init.d中的MongoDB启动脚本的"开始"部分中的每个驱动器上运行.

希望这可以帮助其他人有类似的问题.