Chinaunix首页 | 论坛 | 博客
  • 博客访问: 70409
  • 博文数量: 8
  • 博客积分: 382
  • 博客等级: 一等列兵
  • 技术积分: 82
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-21 20:58
文章分类

全部博文(8)

文章存档

2013年(1)

2012年(1)

2011年(6)

分类: LINUX

2013-01-10 09:59:50




简单来说,(磁盘阵列)把多个硬盘组合成为一个逻辑扇区,因此,操作系统只会把它当作一个硬盘。RAID常被用在服务器电脑上,并且常使用完全相同的硬盘作为组合。最初的RAID分成了不同的等级,每种等级都有其理论上的优缺点。更多内容参考:

阵列可以有阵列卡实现的硬阵列,也可以由操作系统提供支持的软阵列。linux下的软阵列用mdadm来管理。以下是针对CentOS的基本操作:

一、建立软阵列一般分为3个步骤

1、产生组成单元

linux中软阵列的组成单元是分区,且这个分区的系统识别码必须设置成“fd linux raid autodetect”。可以用fdisk或pareted分区工具分区。

  1.    Device Boot      Start         End      Blocks   Id  System  
  2. /dev/hdb1               1         195       98248+  fd  Linux raid autodetect  
  3. /dev/hdb2             196         390       98280   fd  Linux raid autodetect  

2、建立磁盘阵列

  1. mdadm -C /dev/md0 -l 1 -n 4 /dev/hd[bd][12]  
  2. #-C /dev/md0 创建名为md0的磁盘阵列设备  
  3. #-l 1 阵列等级是raid1,可以建立0,5等其他磁盘阵列  
  4. #-n 4 组成单元有4个分区  
  5. #/dev/hd[bd][12] 组成单元是/dev/hdb1、/dev/hdb2、/dev/hdd1、/dev/hdd2  
  6.   
  7. #格式化该磁盘阵列  
  8. mkfs -t ext3 /dev/md0  
  9.   
  10. #挂载并设置/etc/fstab  
  11. mount /dev/md0 /data  
  12. echo "/dev/md0 /data ext3 defaults 1 2" >> /etc/fstab  

3、mdadm.conf配置

/etc/mdadm.conf是centos下mdadm的默认配置文件,系统启动时会根据此配置文件激活磁盘阵列及启动阵列监控服务。此配置文件可以 参考/usr/share/doc/mdadm-2.6.9/mdadm.conf-example。配置很简单,可以根据已经建立的磁盘阵列使用以下命 令建立此文件。

  1. mdadm -Ds >> /etc/mdadm.conf  
  2. echo "MAILADDR saplingidea@gmail.com" >> /etc/mdadm.conf  
  3. #MAILADDR是管理员email,磁盘阵列出问题时会发邮件通知管理员。  
  4. cat /etc/mdadm.conf  
  5. #内容如下  
  6. ARRAY /dev/md0 level=raid1 num-devices=4 metadata=0.90 UUID=40d32084:7be6bc73:071b21a9:4d8afc12  
  7. MAILADDR saplingidea@gmail.com  
二、管理磁盘阵列

1、查看磁盘阵列信息

  1. #直接查看/proc/mdstat  
  2. cat /proc/mdstat  
  3. Personalities : [raid1]  
  4. md0 : active raid1 hdd2[3] hdd1[2] hdb2[1] hdb1[0]  
  5.       98176 blocks [4/4] [UUUU]  
  6.   
  7. #使用mdadm查看  
  8. mdadm -D /dev/md0  

2、处理硬盘故障

对于raid1,raid5这样有容灾能力的磁盘阵列来说,硬盘的故障不用太担心。以下是处理硬盘故障一般步骤:
a.使用mdadm /dev/md0 -r /dev/hdb1 在线卸载故障硬盘的组成单元
b.物理拆除故障硬盘
c.安装正常的硬盘并分区产生新的组成单元
d.使用mdadm /dev/md0 -a /dev/hdd3 在线加入新组成单元

  1. #-f参数可以模拟磁盘故障  
  2. mdadm /dev/md0 -f /dev/hdb1  
  3.   
  4. mdadm -D /dev/md0 |tail  
  5.            UUID : 40d32084:7be6bc73:071b21a9:4d8afc12  
  6.          Events : 0.4  
  7.   
  8.     Number   Major   Minor   RaidDevice State  
  9.        0       0        0        0      removed  
  10.        1       3       66        1      active sync   /dev/hdb2  
  11.        2      22       65        2      active sync   /dev/hdd1  
  12.        3      22       66        3      active sync   /dev/hdd2  
  13.   
  14.        4       3       65        -      faulty spare   /dev/hdb1  
  15.   
  16. #在线卸载故障硬盘的组成单元  
  17. mdadm /dev/md0 -r /dev/hdb1  
  18.   
  19. #在线加入新组成单元  
  20. mdadm /dev/md0 -a /dev/hdd3  
  21.   
  22. mdadm -D /dev/md0 |tail  
  23.   Spare Devices : 0  
  24.   
  25.            UUID : 40d32084:7be6bc73:071b21a9:4d8afc12  
  26.          Events : 0.26  
  27.   
  28.     Number   Major   Minor   RaidDevice State  
  29.        0      22       67        0      active sync   /dev/hdd3  
  30.        1       3       66        1      active sync   /dev/hdb2  
  31.        2      22       65        2      active sync   /dev/hdd1  
  32.        3      22       66        3      active sync   /dev/hdd2  

3、启用、停用磁盘阵列

  1. #启用  
  2. mdadm -A -s [MD_DEVICE]  
  3. #停用  
  4. mdadm --stop -s [MD_DEVICE]  

4、监控磁盘阵列

启动mdmonitor服务监控磁盘阵列,当磁盘阵列出现故障时会发邮件通知管理员,邮件保存在/etc/mdadm.conf里。

  1. /etc/init.d/mdmonitor start  
  2. chkconfig mdmonitor on  
  3.   
  4. #报警内容示例  
  5. This is an automatically generated mail message from mdadm  
  6. running on localhost.localdomain  
  7.   
  8. A Fail event had been detected on md device /dev/md0.  
  9.   
  10. It could be related to component device /dev/hdb1.  
  11.   
  12. Faithfully yours, etc.  
  13.   
  14. P.S. The /proc/mdstat file currently contains the following:  
  15.   
  16. Personalities : [raid1]  
  17. md0 : active raid1 hdd2[3] hdd1[2] hdb2[1] hdb1[4](F)  
  18.      98176 blocks [4/3] [_UUU]  
  19.   
  20. unused devices:  

5、删除磁盘阵列

删除磁盘阵列前必需做好备份。

  1. umount /dev/md0  
  2. mdadm --stop -s /dev/md0  
  3. mdadm --zero-superblock /dev/hd[bd][123]  
  4. rm /etc/mdadm.conf  
  5.   
  6. #删除磁盘阵列后必须修改/etc/fstab,以免开机无法挂载分区而无法启动。

阅读(3274) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~