mdadm
옵션
옵션 | 설명 |
-C | 레이드를 생성하는 옵션 --create |
-l | -c 옵션과 같이 사용이 된다. 레이드의 레벨을 지정 0,1,2,3,4,5,6 10 등등 |
-n | 구성할 디바이스의 개수를 지정 -c와 쓰인다 |
-d | 지정한 RAID의 자세한 정보를 출력한다 |
-S | 레이드 배열을 해제하여 모든 자원을 해제한다 |
-Q | 지정한 RAID의 간단한 정보 출력 |
-f | 특정 장치에 오류를 발생 시킨다 |
-a | 작동중인 RAID의 디바이스를 추가로 연결 |
-r | RAID에서 디바이스를 제거 |
1.raid 1+0과 0+1의 차이점
안정성 측면
RAID 01은 디스크 0과 2가 동시에 망가질 경우 모든 디스크가 먹통이되지만 10은 0 과2가 동시에 망가져도 전체 디스크가 동작하는데 문제가 없다. 물론 10도 디스크 0과 1이 동시에 망가진다면 전체 디스크가 깨지지만 전체 디스크가 망가질 확률이 01보다 적으므로 안정성 측면에서 RAID 10이 좀더 좋다고 할 수 있다.
복구 측면
망가진 디스크의 복구과정 에서 01의 경우 디스크 0번이 망가진 경우 0번 디스크를 교체한후 재구성하게 되면 디스크 2, 3번으로 구성된 RAID 0 전체가 복사되지만 RAID 10의 경우 0번 디스크를 교체했다면 1번 디스크에서 복사를 하게되어 리소스의 비용이 훨씩 적게들어 시간이 단축된다.
2. RAID 1+0 만들기
[root@localhost ~]# lsblk #래이드로 묶을 재료를 준비 ada~e 을 만듬 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sdb 8:16 0 5G 0 disk sdc 8:32 0 5G 0 disk sdd 8:48 0 5G 0 disk sde 8:64 0 5G 0 disk sr0 11:0 1 8.6G 0 rom /run/media/root/AlmaLinux-9-2-x86_64-dvd [root@localhost ~]# mdadm -C /dev/md10 -l 10 -n 4 /dev/sd[b-e] mdadm: Defaulting to version 1.2 metadata #레이드를 10으로 한다. mdadm: array /dev/md10 started. b~e 를 재료로 만듭니다. # md10 레이드 10을 만듬 [root@localhost ~]# lsblk # 만들어진 정보 확인인 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 5G 0 disk sdb 8:16 0 5G 0 disk └─md10 9:10 0 10G 0 raid10 sdc 8:32 0 5G 0 disk └─md10 9:10 0 10G 0 raid10 sdd 8:48 0 5G 0 disk └─md10 9:10 0 10G 0 raid10 sde 8:64 0 5G 0 disk └─md10 9:10 0 10G 0 raid10 [root@localhost ~]# mdadm -D /dev/md10 . . . Number Major Minor RaidDevice State 0 8 16 0 active sync set-A /dev/sdb 1 8 32 1 active sync set-B /dev/sdc 2 8 48 2 active sync set-A /dev/sdd 3 8 64 3 active sync set-B /dev/sde #b와d를A로 c와d를B로 묶은뒤 레이드A,B를 Raid 0으로 묶는다. |
raid 오류
#스토리지 1개를 제거를 하고 리부트 [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 5G 0 disk sdb 8:16 0 5G 0 disk └─md127 9:127 0 10G 0 raid10 sdc 8:32 0 5G 0 disk #raid md10 이 md127이지만 └─md127 9:127 0 10G 0 raid10 raid10은 유지된다. sdd 8:48 0 5G 0 disk └─md127 9:127 0 10G 0 raid10 sr0 11:0 1 8.6G 0 rom /run/media/root/AlmaLinux-9-2-x86_64-dvd nvme0n1 259:0 0 200G 0 disk ├─nvme0n1p1 259:1 0 1G 0 part /boot └─nvme0n1p2 259:2 0 199G 0 part ├─almalinux-root │ 253:0 0 70G 0 lvm / ├─almalinux-swap │ 253:1 0 7.9G 0 lvm └─almalinux-home 253:2 0 121.1G 0 lvm /home [root@localhost /]# mount -t ext4 /dev/md127 /mnt [root@localhost /]# cd mnt [root@localhost mnt]# ls # 안에 파일들은 이상이 없다. 1 2 3 4 lost+found [root@localhost mnt]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 5G 0 disk sdb 8:16 0 5G 0 disk └─md127 9:127 0 10G 0 raid10 /mnt sdc 8:32 0 5G 0 disk └─md127 9:127 0 10G 0 raid10 /mnt sdd 8:48 0 5G 0 disk └─md127 9:127 0 10G 0 raid10 /mnt sr0 11:0 1 8.6G 0 rom /run/media/root/AlmaLinux-9-2-x86_64-dvd nvme0n1 259:0 0 200G 0 disk ├─nvme0n1p1 259:1 0 1G 0 part /boot └─nvme0n1p2 259:2 0 199G 0 part ├─almalinux-root │ 253:0 0 70G 0 lvm / ├─almalinux-swap │ 253:1 0 7.9G 0 lvm └─almalinux-home 253:2 0 121.1G 0 lvm /home [root@localhost mnt]# mdadm -a /dev/md127 /dev/sda #새로운 스토리지 추가가 mdadm: Cannot open /dev/sda: Device or resource busy [root@localhost mnt]# echo "- - -" > /sys/devices/pci0000\:00/0000\:00\:11.0/0000\:02\:04.0/host32/scsi_host/host32/scan [root@localhost mnt]# mdadm -a /dev/md127 /dev/sde mdadm: added /dev/sde [root@localhost mnt]# mdadm -D /deb/md127 mdadm: cannot open /deb/md127: No such file or directory [root@localhost mnt]# mdadm -D /dev/md127 /dev/md127: Version : 1.2 Creation Time : Fri May 19 16:04:18 2023 Raid Level : raid10 Array Size : 10475520 (9.99 GiB 10.73 GB) Used Dev Size : 5237760 (5.00 GiB 5.36 GB) Raid Devices : 4 Total Devices : 4 Persistence : Superblock is persistent Update Time : Fri May 19 16:12:14 2023 State : clean, degraded, recovering Active Devices : 3 Working Devices : 4 Failed Devices : 0 Spare Devices : 1 Layout : near=2 Chunk Size : 512K Consistency Policy : resync Rebuild Status : 68% complete # 리빌딩 Name : localhost.localdomain:10 (local to host localhost.localdomain) UUID : 3b0b26a8:fd6b2258:f39a694f:1f62309e Events : 42 Number Major Minor RaidDevice State 4 8 64 0 spare rebuilding /dev/sde 1 8 16 1 active sync set-B /dev/sdb 2 8 32 2 active sync set-A /dev/sdc 3 8 48 3 active sync set-B /dev/sdd [root@localhost mnt]# mdadm -D /dev/md127 /dev/md127: Version : 1.2 Creation Time : Fri May 19 16:04:18 2023 Raid Level : raid10 Array Size : 10475520 (9.99 GiB 10.73 GB) Used Dev Size : 5237760 (5.00 GiB 5.36 GB) Raid Devices : 4 Total Devices : 4 Persistence : Superblock is persistent Update Time : Fri May 19 16:12:23 2023 State : clean Active Devices : 4 Working Devices : 4 Failed Devices : 0 Spare Devices : 0 Layout : near=2 Chunk Size : 512K Consistency Policy : resync Name : localhost.localdomain:10 (local to host localhost.localdomain) UUID : 3b0b26a8:fd6b2258:f39a694f:1f62309e Events : 48 Number Major Minor RaidDevice State 4 8 64 0 active sync set-A /dev/sde 1 8 16 1 active sync set-B /dev/sdb 2 8 32 2 active sync set-A /dev/sdc 3 8 48 3 active sync set-B /dev/sdd [root@localhost mnt]# |
-S 레이드 해제한다 (재부팅시 재 연결)
[root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 5G 0 disk sdb 8:16 0 5G 0 disk └─md10 9:10 0 10G 0 raid10 sdc 8:32 0 5G 0 disk └─md10 9:10 0 10G 0 raid10 sdd 8:48 0 5G 0 disk └─md10 9:10 0 10G 0 raid10 sde 8:64 0 5G 0 disk └─md10 9:10 0 10G 0 raid10 sr0 11:0 1 8.6G 0 rom /run/media/root/AlmaLinux-9-2-x86_64-dvd nvme0n1 259:0 0 200G 0 disk ├─nvme0n1p1 259:1 0 1G 0 part /boot └─nvme0n1p2 259:2 0 199G 0 part ├─almalinux-root │ 253:0 0 70G 0 lvm / ├─almalinux-swapumoun │ 253:1 0 7.9G 0 lvm └─almalinux-home 253:2 0 121.1G 0 lvm /home [root@localhost ~]# mdadm -S /dev/md10 mdadm: stopped /dev/md10 [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 5G 0 disk sdb 8:16 0 5G 0 disk sdc 8:32 0 5G 0 disk sdd 8:48 0 5G 0 disk sde 8:64 0 5G 0 disk #완전히 제거 하기 위해서는 슈퍼블럭 을 사용해야 한다 [root@localhost ~]# mdadm --zero-superblock /dev/md10 |