Linux学习-软件磁盘阵列的设定(mdadm)

Software RAID--磁盘阵列有硬件磁盘阵列和软件磁盘阵列,硬件磁盘阵列使用磁盘阵列卡来达成效果,使多个磁盘组成一个大的磁盘,对操做系统而言,只能看见这个大的磁盘却看不见那些小的磁盘,可是磁盘阵列卡造价昂贵,普通用户在学习过程当中没法实现硬件磁盘阵列;所以出现了用软件来实现磁盘阵列的功能,操做系统将多个小的磁盘组成一个大的虚拟磁盘,同时操做系统能够看得见每一个小的磁盘.bash



目录
ide

  • Software RAID的建立(mdadm --create | -C)
    学习

  • Software RAID仿真错误(mdadm --manage)测试

  • 如何开机挂载RAIDspa

  • 如何完全关闭RAID操作系统

  • 共享热备盘的实现orm

  • 案例it



****************** Software RAID的建立(mdadm --create|-C)********************
io

~]# mdadm -C -a yes /dev/md0 -n 2 -l 0 /dev/sdc /dev/sdd
~]# mdadm -C -a yes /dev/md1 -n 2 -l 1 /dev/sde /dev/sdf
~]# mdadm -C -a yes /dev/md1 -n 2 -l 1 -x 1 /dev/sd{e,f,g}

    -C 建立raidclass

    -a yes 自动建立后面接着的raid设备/dev/mdX

    -n (--raid-devices=) num   阵列中磁盘的数量

    -x (--spare-devices=) num  热备盘的数量

    -l (--level=) [015]        设定磁盘阵列的等级,一般为raid 0,raid 1,raid 5

    最后必须列出建立磁盘阵列用到的各个磁盘

~]# mdadm -D /dev/md0

    -D (--detail)  后面接设定的磁盘阵列装置名,查看raid信息


blob.png

另外 cat /proc/mdstat  能够查看所有的raid信息

blob.png


******************二 Software RAID仿真错误(mdadm --manage)******************

mdadm (--manage) /dev/md1 -f /dev/sdf  将md1中的sdf设置为坏的设备,--manage加不加无所谓,下同

mdadm (--manage) /dev/md1 -r /dev/sdf  将md1中的sdf从raid成员中删除

mdadm (--manage) /dev/md1 -a /dev/sdf  向md1中增长新成员sdf 

mdadm -G /dev/md1 -n 3 -a /dev/sdh     将raid1 md1的成员数量改成3,并加入新的成员(不是加为热备盘)

blob.png

blob.png

能够发现-a的做用是:

    会根据一开始建立RAID设定的raid-devices=num的值变化;

    若是RAID中本来的num个磁盘都无缺,-a只是增长热备盘

    若是RAID中能使用的磁盘数不足num,-a会补充组成raid-device


****************************三 如何开机挂载RAID***************************

和以前磁盘分区的挂载彻底同样,把RAID当作一个磁盘处理就是了

1 修改raid的配置文件/etc/mdadm.conf

mdadm -D -s > /etc/mdadm.conf

2 修改配置文件/etc/fstab(相信你们很熟悉了)

/dev/md0                /mnt/raid               ext4    defaults        1 2

将上面的一行加入该配置文件

3 挂载mount -a

重启以后查看

blob.png


****************************四 如何完全关闭RAID****************************

mdadm -S(--stop) /dev/md0      中止raid

mdadm -A /dev/md0 /dev/sdc /dev/sdd /dev/sde  开启raid

blob.png

mdadm -D -s  

blob.png

mdadm -D -s > /etc/mdadm.conf  将raid信息保存至该文件

mdadm -A -s    自动激活/etc/mdadm.conf中的全部raid设备

-------------------------------------------------------------------------------

完全关闭raid而且以后也不会再激活的方法:

    mdadm -S /dev/mdX

    将/etc/mdadm.conf中的内容去掉

    mdadm --zero-superblock /dev/sdM(RAID device)  关键


****************************五 共享热备盘的实现****************************

# 建立raid 1和raid 5,其中只有raid 5有热备盘
~]# mdadm -C --auto=yes /dev/md0 -n 2 -l 1 /dev/sd{c,d}
~]# mdadm -C --auto=yes /dev/md1 -n 3 -x 1 -l 5 /dev/sd{e..h}

实现/dev/md0 和/dev/md1 之间仅有的一个热备盘共同使用

①mdadm -D -s > /etc/mdadm.conf

②在须要共享的多组raid信息最后分别都写上spare-group=任意名

③而后再加一新行,顶头写MAILADDR .(必定要有空格)blob.png

④service mdmonitor start

⑤测试

   查看以前的两个RAID的状态

blob.png

# 损坏/dev/md0中的磁盘/dev/sdc(注意/dev/md0中并无热备盘)
~]# mdadm /dev/md0 -f /dev/sdc
mdadm: set /dev/sdc faulty in /dev/md0

blob.png

结果/dev/md1下的热备盘/dev/sdh自动替换/dev/md0下的损坏的/dev/sdc


************************************** 六 案例 **************************************

1:建立一个可用空间为1G的RAID1设备,文件系统为ext4,开机可自动挂载至/backup目录

新加入两个1G大小的硬盘
echo '- - -' > /sys/class/scsi_host/host0/scan
lsblk 或 cat /proc/partitions 或  ll /dev/sd*
mdadm --create --auto=yes /dev/md0 --level 1 -n 2 /dev/sd{c,d}
mdadm -D /dev/md0
mkfs.ext4 /dev/md0
blkid /dev/md0
mkdir /backup
mount /dev/md0/backup

2:建立由三块硬盘组成的可用空间为2G的RAID5设备,要求其chunk大小为256k,文件系统为ext4,开机可自动挂载至/mydata目录

新建立三个2G大小的硬盘
echo '- - -' > /sys/class/scsi_host/host0/scan
mdadm --create --auto=yes /dev/md1 --level=5 --chunk=256K -n 3 /dev/sd{e,f,g}
mkfs.ext4 /dev/md1
mkdir /mydata 
mount /dev/md1 /mydata
相关文章
相关标签/搜索