免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1154 | 回复: 0
打印 上一主题 下一主题

CentOS4.4下利用mdadm建立Raid5 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-02 13:45 |只看该作者 |倒序浏览

CentOS4.4下利用mdadm建立Raid5
一、环境
1.         操作系统为CentOS4.4,mdadm软件为系统自带的,版本1.6.0-3
2.         hda安装的是系统,sda、sdb、sdc、sdd四块硬盘建立Raid5,其中sdd为热备。


二、准备
1.         首先需要将四块SCSI硬盘格式化。敲入命令fdisk –l,系统显示sda、sdb、sdc、sdd的一些信息,并提示磁盘没有包含一个有效的分区表。
2.         [root@centos /]# fdisk /dev/sda
Command (m for help): n      #输入字母n,添加一个新的分区。
Command action
   e   extended
   p   primary partition (1-4)
p                                        #创建主分区。
Partition number (1-4): 1       #可创建四个主分区,此处输入1,创建第一个。
First cylinder (1-1044, default 1):        #因为是将硬盘分为一个区,所以默认回车即可。
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-1044, default 1044):
Using default value 1044
Command (m for help): t       #更改分区的文件系统ID。
Selected partition 1
Hex code (type L to list codes): fd        #fd  Linux raid auto
Changed system type of partition 1 to fd (Linux raid autodetect)
Command (m for help): w            #保存退出
3.         按照上步骤处理四块硬盘,然后可以使用命令fdisk –l再次查看,可以看到四块硬盘已经完成准备。

三、配置
1.         创建raid非常简单,只需要一条命令即可。
[root@centos /]# mdadm -C -v /dev/md0 -l5 -n3 /dev/sda1 /dev/sdb1 /dev/sdc1 -x1 /dev/sdd1
#参看帮助mdadm --create --help
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 64K
mdadm: size set to 8388544K
mdadm: array /dev/md0 started.
[root@centos /]#
2.         创建文件系统为ext3
[root@centos /]# mkfs.ext3 /dev/md0
创建目录/mnt/raid,挂载
[root@centos /]# mkdir /mnt/raid
[root@centos /]# mount /dev/md0 /mnt/raid
3.         了解raid状况
[root@centos /]# mdadm -D /dev/md0
4.         启动和停止
停止之前需要umount,然后mdadm –S /dev/md0
启动:[root@centos /]# mdadm -A /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
如果已经建立了配置文件,启动可使用命令mdadm –As /dev/md0
5.         关于配置文件
系统中包含一个配置文件的样例/usr/share/doc/mdadm-1.6.0/mdadm.conf-example,可以参照建立/dev/mdadm.conf配置文件,也可通过命令mdadm –Ds查看详情,然后使用vi编辑保存文本文件
[root@centos /]# vi /etc/mdadm.conf
DEVICE /dev/sd[abcd]1
ARRAY /dev/md0 level=raid5 num-devices=3 UUID=63cb965b:79486986:d389c551:67677f20
为使系统reboot后能够自动挂载raid目录,需要修改/etc/fstab文件,加入如下一行:/dev/md0                /mnt/raid               ext3    defaults        0 0

四、故障测试
1.         测试前,在/mnt/radi下建立一个文件使用
[root@centos raid]# ll / |tee ./ls.txt
mdadm自带命令可以标记某块硬盘为损坏,参看帮助mdadm --manage –h。
故障测试中,标记sda硬盘损坏
[root@centos /]# mdadm /dev/md0 -f /dev/sda1
mdadm: set /dev/sda1 faulty in /dev/md0
2.         查看状态
[root@centos /]# more /proc/mdstat
Personalities : [raid5]
md0 : active raid5 sdd1[3] sdc1[2] sdb1[1] sda1[4](F)
      16771584 blocks level 5, 64k chunk, algorithm 2 [3/2] [_UU]
      [====>................]  recovery = 22.8% (1916928/8385792) finish=1.9min speed=55892K/sec
unused devices:  
[root@centos /]#
因为sdd硬盘为热备,系统显示raid重构中,进度22.8%,且sda1标记(F)。
稍等再次查看:
[root@centos/]# more /proc/mdstat
Personalities : [raid5]
md0 : active raid5 sdd1[0] sdc1[2] sdb1[1] sda1[3](F)
      16771584 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
      
unused devices:
详情查看
[root@centos /]# mdadm -D /dev/md0
/dev/md0:
        Version : 00.90.01
  Creation Time : Fri Jun  1 13:00:31 2007
     Raid Level : raid5
     Array Size : 16771584 (15.99 GiB 17.17 GB)
    Device Size : 8385792 (7.100 GiB 8.59 GB)
   Raid Devices : 3
  Total Devices : 4
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Fri Jun  1 13:23:49 2007
          State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 1
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 64K

    Number   Major   Minor   RaidDevice State
       0       8       49        0      active sync   /dev/sdd1
       1       8       17        1      active sync   /dev/sdb1
       2       8       33        2      active sync   /dev/sdc1
       3       8        1       -1      faulty   /dev/sda1
           UUID : 63cb965b:79486986:d389c551:67677f20
         Events : 0.16 [root@centos /]#
3.         移除损坏的硬盘
[root@centos /]# mdadm /dev/md0 -r /dev/sda
mdadm: hot removed /dev/sda
[root@centos /]#
至此可以拿下损坏的硬盘
4.         添加新的硬盘到raid中
新硬盘接入系统中,应进行正确的分区,且最好与之前换掉的硬盘保持相同的设备号。然后执行命令
[root@centos /]# mdadm /dev/md0 -a /dev/sda

附录:
1.         基本语法:mdadm [mode]  [options]
[mode]
Assemble:加入一个以前定义的阵列
Build:创建一个没有超级块的阵列
Create:创建一个新的阵列,每个设备具有超级块
Manage: 管理阵列(如添加和删除)
Misc:允许单独对阵列中的某个设备进行操作(如停止阵列)
Follow or Monitor:监控RAID的状态
Grow:改变RAID的容量或阵列中的设备数目

   通常是/dev/md0

[options]
-A, --assemble:加入一个以前定义的阵列
-B, --build:创建一个没有超级块的阵列(Build a legacy array without superblocks.)
-C, --create:创建一个新的阵列
-F, --follow, --monitor:选择监控(Monitor)模式
-G, --grow:改变激活阵列的大小或形态
-I, --incremental:添加一个单独的设备到合适的阵列,并可能启动阵列
--auto-detect:请求内核启动任何自动检测到的阵列
-h, --help:帮助信息,用在以上选项后,则显示该选项信息
--help-options:显示更详细的帮助
-V, --version:打印mdadm的版本信息
-v, --verbose:显示细节
-b, --brief:较少的细节。用于 --detail 和 --examine 选项
-Q, --query:查看一个device,判断它为一个 md device 或是md 阵列的一部分
-D, --detail:打印一个或多个 md device 的详细信息
-E, --examine:打印 device 上的 md superblock 的内容
-c, --config= :指定配置文件,缺省为 /etc/mdadm.conf
-s, --scan:扫描配置文件或 /proc/mdstat以搜寻丢失的信息。配置文件/etc/mdadm.conf

   通常是/dev/下的硬盘。

2.         mdadm命令中不同的模式下有不同的命令用法,可查看相关的帮助文件。
[root@centos /]# mdadm --manage --h


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/19237/showart_312851.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP