对于4个EBS PIOPS卷上的RAID 10arrays,适当的Readahead值是多less?

tl; dr – RAID 10arrays中不同EBS PIOPS卷的正确readahead值是什么?
那么RAID 10的物理和逻辑卷本身呢?
那么mdadm调用的块大小和dd调用的块大小呢?


漫长的故事:

我正在使用MongoDB云(以前的MMS)来pipe理我的副本集。

我已经写了下面的脚本,启动一个实例(或更多),并准备安装MMS自动化代理,包括设置RAID 10,设置预读,禁用大页面,使用xfs格式化,设置munin等。

你可以在这里看到脚本 – https://gist.github.com/dorongutman/01d8daf0154621e4645d

大部分文档和社区信息都是指单个EBS卷(通常是磁性的)的预读值。 我没有find的是在RAID 10设置中使用的多个EBS PIOPS卷的build议预读值。 在使用dd时,还有RAID创build和块大小的块大小。

我想从4个EBS PIOPS卷创build一个RAID 10 ,每个都有50GB和250 IOPS (这应该会带给我一个单一的100GB卷,一次RAID有500 IOPS,对吧?),并在RAID卷上使用XFS mongo数据文件夹。 我有以下问题:

  • 构成RAID 10的每个不同卷的Readahead值应该是多less? (/ dev / xvdw到/ dev / xvdz)
  • 什么应该是RAID 10设备本身的Readahead? (包括物理卷和逻辑卷 – / dev / md0和/ dev / vg0 / data
  • mongodb云创build的实例(在我最初的MMStesting中)在/etc/security/limits.d/99-mongodb-mms-automation-agent.conf中有以下值: mongod - fsize unlimited mongod - cpu unlimited mongod - as unlimited mongod - nofile 64000 mongod - rss unlimited mongod - nproc 64000

上述configuration是否合适(4个EBS PIOPS卷上的RAID 10)?

我很想得到你的脚本的一般反馈 – 有什么我错过了? 有什么可以更好地设置/configuration?


我已经玩了很多MongoDB Cloud,而且它提供了创build相关实例的选项 – 所有这一切都是在mongodb云仪表板内部进行的,但是对于您发布的最佳生产实践(RAID 10arrays,专用子网,副本集configuration等)。