raid5
1.首先添加4快硬盘 大小为都为1g,分别为sdb,sdc,sdd,sde
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 17.8G 0 part /
sdb 8:16 0 1G 0 disk
sdc 8:32 0 1G 0 disk
sdd 8:48 0 1G 0 disk
sde 8:64 0 1G 0 disk
sr0 11:0 1 4.2G 0 rom
2.创建raid5
创建之前 先学习一些 参数
mdadm 用于管理Linux系统中的软件RAID硬盘阵列
参数 | 作用 |
---|---|
-a | 检测设备名称 |
-n | 指定设备数量 |
-l | 指定RAID级别 |
-C | 创建 |
-v | 显示过程 |
-f | 模拟设备损坏 |
-r | 移除设备 |
-Q | 查看摘要信息 |
-D | 查看详细信息 |
-S | 停止RAID磁盘阵列 |
3.创建 md0
[root@localhost ~]# mdadm -C /dev/md0 -l 5 -n 3 /dev/sd{b,c,d}
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@localhost ~]# cat /proc/mdstat #查看数据同步情况
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdd[3] sdc[1] sdb[0]
2093056 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
unused devices: <none>
4.查看md0 的详细信息
[root@localhost ~]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Tue Oct 23 04:30:05 2018
Raid Level : raid5
Array Size : 2093056 (2044.00 MiB 2143.29 MB)
Used Dev Size : 1046528 (1022.00 MiB 1071.64 MB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent
Update Time : Tue Oct 23 04:30:11 2018
State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Consistency Policy : resync
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : 15f623d1:dada1ec7:f6b5783e:632dfdf8
Events : 18
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
1 8 32 1 active sync /dev/sdc
3 8 48 2 active sync /dev/sdd
5.查看 md0 uuid 的信息
[root@localhost ~]# mdadm -Ds /dev/md0
ARRAY /dev/md0 metadata=1.2 name=localhost.localdomain:0 UUID=05edfb62:67000a51:575ef59e:1af636cc
6.配置md0配置文件
[root@localhost ~]# vi /etc/mdadm.conf
device /dev/sdb /dev/sdc /dev/sdd
ARRAY /dev/md0 level=raid5 num-devices=3 UUID=05edfb62:67000a51:575ef59e:1af636cc
~
注意 这里的 uuid 配置 信息 与查到的匹配 要不 启动 停止后启动不起来了呢!!!!!!
7.停用 md0
[root@localhost ~]# mdadm -S /dev//md0
mdadm: stopped /dev//md0
根据配置文件启动md0
[root@localhost ~]# mdadm -As /dev/md0
mdadm: /dev/md0 has been started with 3 drives.
lvm
1.创建物理卷
[root@localhost ~]# pvcreate /dev/md0
Physical volume "/dev/md0" successfully created.
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md0 lvm2 --- <2.00g <2.00g
2.创建卷组
[root@localhost ~]# vgcreate myvg /dev/md0
Volume group "myvg" successfully created
[root@localhost ~]# vgs
VG #PV #LV #SN Attr VSize VFree
myvg 1 0 0 wz--n- 1.99g 1.99g
3.创建逻辑卷
[root@localhost ~]# lvcreate -L 1500M -n lv1 myvg
Logical volume "lv1" created.
[root@localhost ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv1 myvg -wi-a----- 1.46g
4.格式化逻辑卷
[root@localhost ~]# mkfs.ext4 /dev/myvg/lv1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=128 blocks, Stripe width=256 blocks
96000 inodes, 384000 blocks
19200 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=394264576
12 block groups
32768 blocks per group, 32768 fragments per group
8000 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
5.挂载逻辑卷
[root@localhost /]# mkdir /lvm
[root@localhost /]# mount /dev/myvg/lv1 /lvm
6.在逻辑卷里面写一点东西
[root@localhost lvm]# dd if=/dev/zero of=/lvm/file count=1 bs=500M
1+0 records in
1+0 records out
524288000 bytes (524 MB) copied, 3.72588 s, 141 MB/s
7.模拟硬盘损坏
[root@localhost lvm]# mdadm /dev/md0 -f /dev/sdb
mdadm: set /dev/sdb faulty in /dev/md0
8.查看md0 的信息 看出来 了 sdb损坏
[root@localhost lvm]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Tue Oct 23 05:10:20 2018
Raid Level : raid5
Array Size : 2093056 (2044.00 MiB 2143.29 MB)
Used Dev Size : 1046528 (1022.00 MiB 1071.64 MB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent
Update Time : Tue Oct 23 05:39:20 2018
State : clean, degraded
Active Devices : 2
Working Devices : 2
Failed Devices : 1
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Consistency Policy : resync
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : 05edfb62:67000a51:575ef59e:1af636cc
Events : 22
Number Major Minor RaidDevice State
- 0 0 0 removed
1 8 32 1 active sync /dev/sdc
3 8 48 2 active sync /dev/sdd
0 8 16 - faulty /dev/sdb
9.移除损坏的盘
[root@localhost lvm]# mdadm /dev/md0 -r /dev/sdb
mdadm: hot removed /dev/sdb from /dev/md0
10.查看阵列情况
[root@localhost lvm]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdd[3] sdc[1]
2093056 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [_UU]
unused devices: <none>
11.添加一块新的硬盘上去
[root@localhost lvm]# mdadm /dev/md0 -a /dev/sde
mdadm: added /dev/sde
10.查看日志
[root@localhost lvm]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sde[4] sdd[3] sdc[1]
2093056 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
unused devices: <none>
可以出 sde 已经更换上去了 这人应该有的同步的 校验 恢复数据的 过程,但是 数据量 大小,很快 就恢复了,所以看不到了。
补充:
后面 我换了 三个 20 g的磁盘做实验 然后 就可以明确的看出 磁盘 校验数据的过程了
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdd[3] sdc[1] sdb[0]
41908224 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]
[=>...................] recovery = 9.5% (2001024/20954112) finish=1.4min speed=222336K/sec
unused devices: <none>
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdd[3] sdc[1] sdb[0]
41908224 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]
[===>.................] recovery = 19.1% (4020616/20954112) finish=1.3min speed=201030K/sec
unused devices: <none>
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdd[3] sdc[1] sdb[0]
41908224 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]
[======>..............] recovery = 31.5% (6606720/20954112) finish=1.1min speed=206460K/sec
unused devices: <none>
从百分之 9.5 19.1 31.5 慢慢在 校验