RAID磁盘阵列的搭建(以raid0、raid1、raid5、raid10为例)

时间:2023-03-09 12:56:20
RAID磁盘阵列的搭建(以raid0、raid1、raid5、raid10为例)

mdadm工具的使用

-C或--creat

建立一个新阵列

-r

移除设备

-A

激活磁盘阵列

-l 或--level=

设定磁盘阵列的级别

-D或--detail

打印阵列设备的详细信息

-n或--raid-devices=

指定阵列成员(分区/磁盘)的数量

-s或--scan

扫描配置文件或/proc/mdstat得到阵列缺失信息

-x--spare-devicds=

指定阵列中备用盘的数量

-f

将设备状态定为故障

-c或--chunk=

设定阵列的块chunk大小 ,单位为KB

-a或--add

添加设备到阵列

-G或--grow

改变阵列大小或形态

-v

  --verbose 显示详细信息

 

 

a. RAID0 的搭建步骤:RAID0就是条带化。

1. 添加两块硬盘 并查看。

ls /dec/sd*

2  检测是否配置raid:

mdadm -E /dev/sd[b-c]

3. 给两块磁盘进行分区。 fdisk /dev/sdb   fdisk /dev/sdc  注意这个地方-t  ,fd, 将分区类型设置为fd。

4. 创建raid0  : mdadm -C -v /dev/md0 -l 0 -n /dev/sdb1 /dev/sdc1

5.  检查raid0是否搭建成功:

cat /proc/mdstat.

md0 : active raid0 sdc1[1] sdb1[0]

41908224 blocks super 1.2 512k chunks

unused devices: <none>

6. 生成配置文件。 mdadm -Dsv > /etc/mdadm.conf.

ARRAY /dev/md0 level=raid0 num-devices=2 metadata=1.2 name=xiaolyu:0 UUID=b024dbae:1dc6321e:c9bbd987:c687bcc2

devices=/dev/sdb1,/dev/sdc1

7.  对创建的raid0进行分区, 并且给分区所有的空间。

fdisk /dev/md0

8.  对分区进行格式化 并挂载。

格式化: mkfs -t xfs /dev/md0p1

创建挂载点: mkdir /raid0

挂载: mount    /dev/md0p1  /raid0.

9  设置开机自动挂载。

umount /raid0

vim /etc/fstab

tail -1 /etc/fstab

/dev/md0p1 /raid0  xfs  defaults 0 0

10 . 使用raid0 .

cp  -rf  /mnt/Packages  /raid0 .

du -sh /mnt/Packages

du -sh /raid0/Packages

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

b. RAID1的搭建方法: RAID1 就是镜像化。

1. 添加两块硬盘 并查看。

ls /dec/sd*

2  检测是否配置raid:

mdadm -E /dev/sd[b-c]

3. 给两块磁盘进行分区。 fdisk /dev/sdb   fdisk /dev/sdc  中间切换成fd。

4. 创建raid1  : mdadm -C -v /dev/md1 -l 1 -n /dev/sd[b-c]1

5.  检查raid1是否搭建成功:

cat /proc/mdstat.

md1 : active raid1 sdc1[1] sdb1[0]

41908224 blocks super 1.2 512k chunks

unused devices: <none>

6. 生成配置文件。 mdadm -Dsv > /etc/mdadm.conf.

ARRAY /dev/md1 level=raid1 num-devices=2 metadata=1.2 name=xiaolyu:1 UUID=7a4491ed:905f9a8c:c3b428ce:6259a532

devices=/dev/sdb1,/dev/sdc1

7.  对创建的raid0进行分区, 并且给分区所有的空间。

fdisk /dev/md1

8.  对分区进行格式化 并挂载。

格式化: mkfs -t xfs /dev/md1p1

创建挂载点: mkdir /raid1

挂载: mount    /dev/md1p1  /raid1.

9  设置开机自动挂载。

umount /raid1

vim /etc/fstab

tail -1 /etc/fstab

/dev/md1p1 /raid1  xfs  defaults 0 0

10 . df -h 验证

11 . 使用raid1 .

touch  /raid1/test.txt

echo "hello world" >> /raid1/test.ttxt

cat /raid1/test.txt 。

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

C. raid5 的创建过程:

1.  添加5块硬盘并查看。

ls  /dev/sd*

/dev/sda      /dev/sdb   /dev/sdc  /dev/sdd   /dev/sde   /dev/sdf

2. 查看磁盘是否已经配置raid了。

mdadm -E /dev/sd[b-f]

如果没有检测到如何超级块,意味着没有配置raid。

3. 对新添加的5块硬盘进行分区,并将分区类型设置为fd.

fdisk  /dev/sdb   -t    fd   w

fdisk  /dev/sdc   -t    fd   w

fdisk  /dev/sdd  -t    fd   w

fdisk  /dev/sde  -t    fd  w

fdisk  /dev/sdf  -t    fd  w

4. 创建raid5 .

mdadm -C -v /dev/md5  -l 5  -n 4 -x 1 /dev/sd[b-f]

5. 查看阵列信息。

mdadm -D /de/md5.

mdadm -Dsv /dev/md5.

6.  格式化并挂载。

mkfs -t xfs -f /dev/md5

创建挂载点: mkdir  /raid5.

挂载md5 :  mount /dev/md5  /raid5

查看是否挂载成功: df -h | tail -l 或者 df -h .

查看md5文件系统的类型。blkid  /dev/md5.

7. 创建测试文件。

touch  /raid5/test.txt .

echo "hello world "  >> /raid5/test.txt.

8 .  生成配置文件。

mdadm -Dsv > /etc/mdadm.conf.

9.  设置开机自动挂载:

umount  /raid5.

echo " /dev/md5  /raid5 /  xfs  defaults 0 0 " >> /etc/fstab

mount -av

df-h 查看是否挂载成功。 

10 . 查看raid5的状态。

cat  /proc/mdstat

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

说明raid5,我有一块热备盘,所以当有一块磁盘损坏后,数据的读写也不受影响,而且还可以将这块坏的硬盘恢复。

  1. 模拟/dev/sdb1磁盘损坏。

    cat /raid5/test.txt

hello world .

mdadm  /dev/md5 -f /dev/sdb1

cat /raid5/test.txt

hello world

说明:坏一块磁盘时,读写数据不受影响。

2 . 修复并添加/dev/sdb1 .

mdadm --zero-superblock   --force  /dev/sdb1

umount /raid5

mdadm -S /dev/md5

mdadm -As

mdadm: /dev/md5 has been started with 3 drives (out of 4) and 1 rebuilding.

[root@xiaolyu ~]# mdadm  /dev/md5 --add /dev/sdb1

mdadm: added /dev/sdb1

mdadm -D /dev/md5查看一下:ok成功了。

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

D:raid10的创建过程:

RAID 10 可以被称为1 + 0或0 +1。它将做镜像+条带两个工作。在 RAID 10 中首先做镜像然后做条带。

在 RAID 01 上首先做条带,然后做镜像。RAID 10 比 01 好。

1. 先做两个raid1 . 分别为md1 和md11.

2. 再用这两个raid1,做成开一个raid0. 即OK!

因为前面的raid0 和raid1 的创建过程比较详细,这里仅简要给出步骤:

1. 添加4块一样大小的硬盘并查看。  ls /dev/sd* | grep sd[b-e]

/dev/sdb /dev/sdc /dev/sdd /dev/sde.

2. 给四块硬盘分区,每一块都给出全部的空间。

fdisk  /dev/sdb   -t    fd   w

fdisk  /dev/sdc  -t    fd   w

fdisk  /dev/sdd  -t    fd  w

fdisk  /dev/sde  -t    fd  w

3.  创建两个raid1。

mdadm -C -v /dev/md1 -l 1 -n 2 /dev/sd[b-c]1

mdadm -C -v /dev/md11 -l 1 -n 2 /dev/sd[d-e]1

4. 创建raid0

mdadm -C -v /dev/md10 -l 0 -n 2 /dev/md1 /dev/md11

5. 查看raid0的状态。

cat /proc/mdstat .

6.  格式化 挂载

mkfs -t xfs -f /dev/md10

创建挂载点: /raid10

挂载: /dev/md10  /raid10

检测挂载是否成功。 df -h | grep /raid10

7, 设置开机自动挂载:

umount  /raid10

在/etc/fstab 最后添加这样一行:

/dev/md10 /raid10  xfs  defaults 0 0

mount -av

8. 生成配置文件。

mdadm -Dsv >/etc/mdadm.conf