SSD上的Linux软件RAID5。 一个固态硬盘比其他硬盘损坏了40%

我们有一个6 SSD,RAID5卷。 我们使用的SSD磁盘是Crucial M4-CT512M4SSD2固件000F。 我们每天通过MySQL InnoDB写入100〜200GB的数据。 RAID5卷只用于MySQL,没有别的。

lsscsi的输出:

[0:0:0:0] disk iDRAC LCDRIVE 0323 /dev/sdb [1:0:0:0] cd/dvd iDRAC Virtual CD 0323 /dev/sr0 [1:0:0:1] disk iDRAC Virtual Floppy 0323 /dev/sdc [2:2:0:0] disk DELL PERC H700 2.10 /dev/sda [3:0:0:0] disk ATA M4-CT512M4SSD2 000F /dev/sdd [3:0:1:0] disk ATA M4-CT512M4SSD2 000F /dev/sde [3:0:2:0] disk ATA M4-CT512M4SSD2 000F /dev/sdf [3:0:3:0] disk ATA M4-CT512M4SSD2 000F /dev/sdg [3:0:4:0] disk ATA M4-CT512M4SSD2 000F /dev/sdh [3:0:5:0] disk ATA M4-CT512M4SSD2 000F /dev/sdi [3:0:6:0] enclosu LSI CORP SAS2X36 0717 - [3:0:7:0] enclosu LSI CORP SAS2X36 0717 - 

smartctl的输出:(请参阅这里的属性173)

 for p in defghi ; do smartctl -A /dev/sd${p} | grep 173 ; done 173 Unknown_Attribute 0x0033 098 098 010 Pre-fail Always - 67 173 Unknown_Attribute 0x0033 098 098 010 Pre-fail Always - 66 173 Unknown_Attribute 0x0033 098 098 010 Pre-fail Always - 71 173 Unknown_Attribute 0x0033 098 098 010 Pre-fail Always - 66 173 Unknown_Attribute 0x0033 098 098 010 Pre-fail Always - 69 173 Unknown_Attribute 0x0033 097 097 010 Pre-fail Always - 105 

和/ proc / mdstat的输出:

 Personalities : [raid6] [raid5] [raid4] md0 : active raid5 sdi[6] sdg[3] sdh[4] sdf[2] sdd[0] sde[1] 2500532160 blocks super 1.2 level 5, 64k chunk, algorithm 2 [6/6] [UUUUUU] bitmap: 3/4 pages [12KB], 65536KB chunk unused devices: <none> 

我们不确定为什么“sdi”比其他磁盘损坏了40%以上,因为奇偶校验应该均匀分布在所有磁盘上。

这只是四舍五入的错误。 这是SMART能够显示的最小差异。 可能在接下来的几天中,其他SSD将逐一切换到097

RAID5在磁盘上分配奇偶校验,这是事实, 但是 你的FS不能均匀分布在磁盘上。 特别是当涉及到EXT {2,3,4}与他们的老式超级块模式。 使用EXT {2,3,4} FS时,如果alignment方式不正确,则可以使超级数据块更新到其他磁盘的次数更多。 检查出来: https : //raid.wiki.kernel.org/index.php/RAID_setup#Calculation

XFS自动执行。 😉

而且,你可以很容易地得到与iostat实际磁盘统计,所以任何磁盘负载方面的exception将清晰显示。