我无法弄清楚为什么我的 mdadm 和特别是其中的 lvm 分区会出现如此糟糕的情况。
我进行了突袭:
mdadm --create --verbose /dev/md0 --level=5 --chunk=1024 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sda1[0] sdd1[3] sdc1[2] sdb1[1]
2930279424 blocks level 5, 1024k chunk, algorithm 2 [4/4] [UUUU]
然后我创建了物理卷、卷组和逻辑卷,然后使用从这里获得的以下命令将逻辑卷格式化为 ext4:http://busybox.net/~aldot/mkfs_stride.html
mkfs.ext3 -b 4096 -E stride=256,stripe-width=768 /dev/datavg/blah
现在我很困惑,我之前在 mdadm 中这些 lvs 运行得非常快,但是现在我已经“优化”了所有内容,它变慢了,例如,之前:
/dev/datavg/lv_audio:
Timing buffered disk reads: 598 MB in 3.01 seconds = 198.85 MB/sec
但现在之后:
/dev/datavg/audio:
Timing buffered disk reads: 198 MB in 3.00 seconds = 65.96 MB/sec
太可怜了!发生了什么事?我没有正确遵循说明吗?我可以将 ext4 分区重塑为默认分区吗?(我以前使用过默认分区,效果很好!)
答案1
我没有进行过很多测试,但我注意到具有偶数个设备的 RAID5 很慢 - 即使是简单的dd
md 也会有读取-修改-写入。
答案2
blockdev --getra /dev/datavg/audio
== ?
blockdev --getra /dev/md0
== ?
另外,我更喜欢使用time dd if=...device... of=/dev/null bs=128M count=NNN iflag=direct