02-RAID

1、RAID类型

  • 概述:
名称 名称 最少磁盘 利用率 特点
RAID0 条带集 2 100% 读写快、不容错
RAID1 镜像集 2 50% 容错
RAID5 带奇偶校验的条带集 3 (n-1)/n 读写快、容错(坏1块)
RAID6 带双校验的条带集 4 (n-2)/n 读写快、容错(坏2块)
RAID10 —— 4 50% 读写快、容错
RAID50 —— 6 (n-2)/n 读写快、容错
RAID60 —— 8 (n-4)/n 读写快、容错

1.1 RAID0

条带集,将数据分别向两个磁盘同时写入,以提高读写的速度。
RAID0

如上图,要写入abcdef,则会将abc写入磁盘1(我就是举个例子,这一部分数据不一定是abc,条带有自己的算法),将其他部分写入磁盘2。

  • 优点:同时写入两块盘,读写速度提高。
  • 缺点:没有冗余,有坏盘数据丢失。

1.2 RAID1

镜像集,将数据做冗余分别存入两块磁盘
RAID1

1.3 RAID10

所谓10 ,就是同组内做 RAID1(镜像集),各组间做 RAID0(条带集)。如图:
image.png

  • 优点: 如果第一块盘已经损坏,只要第二块盘不损坏,第三、第四块还可以任意坏一块。即还有2/3的盘可以再损坏一块。

1.4 RAID 01

看了上文 RAID10的原理后,我们可以推知,RAID01是不合理的。
RAID01

说明:
同组内做条带集,各组间做镜像集。
我们可以看到,即使组间做了镜像集,但是组的条带集是以自己的方式分配数据的,也就是说第一块盘在阵列中不会有相同数据的磁盘。

  • 缺点:第一块盘损坏之后,第三、第四块盘都不能损坏,否则数据将丢失。此时仅第二块盘可以损坏,即还有1/3的盘可以损坏一块。明显没有RAID10 安全性高。

1.5 RAID 5

最少三块盘,做条带集写入数据的同时,有一块盘存入校验值。如图:
RAID5

说明:
第一块盘存入数据A,第二块盘存入数据B,第三块盘存入A、B两个数据计算出的校验值P1。如果A数据丢失,根据B和P1可计算出A。

2. 创建RAID5示例

2.1 准备硬盘

3块磁盘 +1块热备

2.2 创建RAID

1)安装mdadm

# yum -y install mdadm

2)创建RAID5

创建一个md0的设备

# mdadm -C /dev/md0 -l5 -n3 -x1 /dev/vd{b,c,d,e}

说明:

  • -C 表示创建
  • -l 指定RAID类型
  • -n 成员数
  • -x 热备数
  • -a 加热备
  • -G 热备变成员

3)设置开机启动

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

4)查看

# mdadm -D /dev/md0

2.3 模拟硬盘损坏,使用热备

1)模拟硬盘损坏

# mdadm /dev/md0 -f /dev/vdb -r /dev/vdb

说明:

  • -f 表示损坏
  • -r 表示移除

2)热备使用

# mdadm -G -n3 /dev/md0

3)坏盘修好后添加为热备

# mdadm /dev/md0 -a /dev/vdb 

4. 查看RAID

4.1 查看proc下RAID信息

[root@gpu-133-3 md]# cat /proc/mdstat
Personalities : [raid10]
md126 : active raid10 sdb[3] sdc[2] sdd[1] sde[0]
      890809344 blocks super external:/md127/0 64K chunks 2 near-copies [4/4] [UUUU]

md127 : inactive sde[3](S) sdd[2](S) sdb[1](S) sdc[0](S)
      20804 blocks super external:imsm

unused devices: <none>

说明,如上图可见

  • md126 设备是raid10,有4块磁盘组成 sdb[3] sdc[2] sdd[1] sde[0]b
  • md127 是不活动的

4.2 查看 dev下设备

[root@gpu-133-3 dev]# ll /dev|grep md
lrwxrwxrwx  1 root root          25 Apr 25 22:20 initctl -> /run/systemd/initctl/fifo
drwxr-xr-x  2 root root         140 Apr 25 22:20 md
brw-rw----  1 root disk      9, 126 Apr 25 22:20 md126
brw-rw----  1 root disk    259,   0 Apr 25 22:20 md126p1
brw-rw----  1 root disk    259,   1 Apr 25 22:20 md126p2
brw-rw----  1 root disk    259,   2 Apr 25 22:20 md126p3
brw-rw----  1 root disk      9, 127 Apr 25 22:20 md127

说明:
上图可见,dev 下有
md126p1md126p2 md126p3 三个md126的设备
md127是不活动的

  • 另外,md下有这几个设备的软连接
[root@gpu-133-3 md]# ll
total 0
lrwxrwxrwx 1 root root  8 Apr 25 22:20 imsm0 -> ../md127
lrwxrwxrwx 1 root root  8 Apr 25 22:20 Volume0 -> ../md126
lrwxrwxrwx 1 root root 10 Apr 25 22:20 Volume0p1 -> ../md126p1
lrwxrwxrwx 1 root root 10 Apr 25 22:20 Volume0p2 -> ../md126p2
lrwxrwxrwx 1 root root 10 Apr 25 22:20 Volume0p3 -> ../md126p3

5. 删除RAID方法

1)删除成员
raid成员逐一用-f -r删除

# mdadm /dev/md0 -f /dev/vdb -r /dev/vdb

2)删除RAID信息
在/etc/mdadm.cof 中删除信息
3)重启系统

6. RAID设备的使用

6.1 用RAID设备创建PV

# pvcreate /dev/md0

6.2 直接挂载RAID设备

见本文集《格式化、分区》,设备只要替换成/dev/md0 即可。


posted on 2021-09-16 10:42  运维开发玄德公  阅读(33)  评论(0编辑  收藏  举报  来源

导航