PowerRC's Blog

Posted by:
PowerRC

码农,吃货,偶尔飙车和摄影,应该属于危险人物。

6,935

intel raid (fakeraid) centos实战

纵使比起intel的fake raid , software raid有千万个好处,但是fakeraid的以下几点好处,还是software raid做不到:
无需进入系统就可以设置raid。
多系统共享。虽然intel raid在linux下不太好使,但是在windows下是刚刚的
专门的界面设置,配置也很简单。(当然,mdadm 敲几个命令也不难,不过我相信大多数人还是喜欢有专门的bios界面)

以上几点,对于一个服务器环境,并没有意义。

昨天在ubuntu下测试了intel raid,虽然能装能用,但是不能坏盘恢复,此乃服务器大忌,光这点就足以给intel raid判死刑。
根据行家指点,我今天把系统换成centos来测试

硬件环境与昨天一样
系统=》CentOS linux 6.5 ( minimal installation)
主板=》supermicro C7Z87
硬盘=》西数 1TB 绿盘 3个,2个用来组raid,一个用来热替换 (以下分别用sda,sdb,sdc来标注,其中,sda和sdb是用来组raid的)

1. 初始化设置
先在intel raid bios里,把sba sbb设置成raid1。

2.系统安装
centos的安装界面很漂亮,有专门的GUI,在格式化分区与安装bootloader的地方需要格外注意。
分区时,需要给raid盘,单独划一个500m的/boot分区,别问我为什么,反正我试过,不这么干,系统就起不来。
安装bootloader,必须装到raid 盘的盘根上,千万不要装到raid 盘下的分区里,否则也是起不来。
例如系统识别的raid 盘是/dev/md126, 那么选择安装boot loader的时候,就必须装到/dev/md126,而不是/dev/md126p1,或者/dev/md126p2 ,反正/dev/md126px都不行。
安装软件包的时候,必须选装mdadm组件(只要选上了base system,这个组件就会被自动装上)。
其他都和正常安装一样。

3.测试
也许是centos 的bug,或者是intel的bug。设置好的raid在安装完系统后重启时,可以在bios界面看到状态是initialize.
进入系统后,通过这个命令" cat /proc/mdstat" 则看到此时raid盘正在rebuild。
在我的例子里,raid容器是/dev/md0,有一个raid1盘,/dev/md126.
但是这时系统操作基本顺畅,只是rebuild过程略慢,1tb的raid 1 盘,比ubuntu下慢了大概一小时。
等rebuild完再重启系统,此时在bios界面可以看到raid盘的状态是normal.
于是我拔掉sda,此时系统报错无法访问sda。但是也能看到提示,系统自动把raid degrade,所有读写放入sdb。系统没有像ubuntu那样死机,读写速度也基本没受影响(因为是raid1)。此时,我下载了很多文件进入sdb。
由于是我直接拔掉sda,所以这个盘符已经从系统消失。
如果是实际硬盘坏掉时,sda不会消失,这种情况要热替换坏盘需要先用mdadm --remove /dev/md0 /dev/sda , 把sda从raid容器里剔除,否则是没法替换新盘。拔坏硬盘的时候,最好也也要umount.
以下也分两种情况测试
1.把sda直接接回去。系统会分配新的盘符给sda,而且,通过/proc/mdstat可以看到,系统甚至把sda当成另外一个raid阵列容器(我的例子里,他变成了/dev/md127)。我猜测因为sda还残留有intel raid的metadata ,所以又被当成了一个raid 阵列。因此,这种情况下恢复失败,不过这种情况在实际中依然不可能发生。
2.我把全新的sdc替换sda。系统也分配新的盘符(/dev/sdf)。通过mdadm --add /dev/md0 /dev/sdf ,阵列被成功恢复,也开始在rebuild。等rebuild完成后,重启能在bios看到raid的状态是normal.而且刚才degrade时下载的文件都没有丢失。

4.总结
虽然intel raid在ubuntu下不能用,但是在centos下彻底能用。两个系统的区别主要在于,ubuntu是用内核级的dmraid(divice mapper)来管理intel raid,bug层出不穷。而centos用的mdadm,自从版本3.3后(2年前的版本),对intel raid额支持已经十分好,完全能在产品环境中部署。
当然,centos本来就是设计给服务器跑的操作系统(redhat),支持得更好也不足为奇。

版权申明

若文中未注明,则本文由 PowerRC 原创,转载请注明出处。

分享

发表评论

*

code

back up ↑