一台Dell R720服务器做流媒体服务器,写入流量恒定为125M/s, 但该服务器却配了块奇葩的H310卡,写入速度惨不忍睹,top中%wa高达80%,CPU load飙升到50,最高写入速度只能达到250M。干脆不用H310的Raid5,用Linux软件Raid来实现。
远程操作,故先用MegaCli操作Raid卡:
rpm -ivh megacli-8.02.21-1-mdv2012.0.x86_64.rpm
rpm -ivh libsysfs-2.1.0-7.el6.x86_64.rpm
cd /usr/lib64
ln -s libsysfs.so.2.0.1 libsysfs.so.2.0.2
因缺少libsysfs.so.2.0.2,使用libsysfs.so.2.0.1代替,然后查看已有Raid情况
megacli -LDInfo -LALL -a0
一定要看清楚你的在用raid信息,本系统中有两个raid,一个raid0,包含一块磁盘,上面跑系统,一个raid5,包含七块磁盘,上面跑数据。后续删除raid时千万别把系统的raid删除了,否则系统立马当机,恭喜你要出差前机房操作了。
megacli -CfgLdDel -L1 -a0
上面指令为删除raid,L1为你的Raid编号,千千万万不要搞错。然后查看硬盘信息,为后续新增raid0做准备
megacli -PDList -a0
主要记录下 Enclosure Device ID: 32
然后为每个空磁盘创建raid0,不然它们不会出现在/dev中
megacli -CfgLdAdd -r0 [32:1] WB Direct -a0
megacli -CfgLdAdd -r0 [32:2] WB Direct -a0
megacli -CfgLdAdd -r0 [32:3] WB Direct -a0
megacli -CfgLdAdd -r0 [32:4] WB Direct -a0
megacli -CfgLdAdd -r0 [32:5] WB Direct -a0
megacli -CfgLdAdd -r0 [32:6] WB Direct -a0
megacli -CfgLdAdd -r0 [32:7] WB Direct -a0
reboot
重启后,可以在/dev中看到sdb - sdh, 我们在这上面建软件raid
yum install mdadm
mdadm -Cv /dev/md0 -l5 -n7 -x0 -c 128 /dev/sd[bcdefgh]
mkfs.xfs /dev/md0
mount ...
经上面的改造, %wa及load应声而降,最高写入速度能达到700M/s,近三倍于改造前。