RAID 1 を構成する2025/01/06 |
稼働中のシステムに ディスク 2 台を増設して RAID 1 を構成します。 |
|
[1] | 当例では、以下のような構成のシステムに、新たに [sdb], [sdc] を追加して RAID 1 を構成します。 |
[root@dlp ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/cs-root 71G 3.2G 68G 5% / devtmpfs 4.0M 0 4.0M 0% /dev tmpfs 7.7G 0 7.7G 0% /dev/shm tmpfs 3.1G 8.7M 3.1G 1% /run tmpfs 1.0M 0 1.0M 0% /run/credentials/systemd-journald.service /dev/vda2 960M 406M 555M 43% /boot tmpfs 1.0M 0 1.0M 0% /run/credentials/getty@tty1.service tmpfs 1.0M 0 1.0M 0% /run/credentials/serial-getty@ttyS0.service tmpfs 1.6G 4.0K 1.6G 1% /run/user/0 |
[2] | 増設した 2 台のディスクにパーティションを作成し、RAID フラグをセットしておきます。 |
[root@dlp ~]# parted --script /dev/sdb "mklabel gpt" [root@dlp ~]# parted --script /dev/sdc "mklabel gpt" [root@dlp ~]# parted --script /dev/sdb "mkpart primary 0% 100%" [root@dlp ~]# parted --script /dev/sdc "mkpart primary 0% 100%" [root@dlp ~]# parted --script /dev/sdb "set 1 raid on" [root@dlp ~]# parted --script /dev/sdc "set 1 raid on"
|
[3] | RAID 1 を構成します。 |
[root@dlp ~]# mdadm --create /dev/md0 --level=raid1 --raid-devices=2 /dev/sdb1 /dev/sdc1
mdadm: Note: this array has metadata at the start and
may not be suitable as a boot device. If you plan to
store '/boot' on this device please ensure that
your boot-loader understands md/v1.x metadata, or use
--metadata=0.90
Continue creating array [y/N]? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
# 状態確認 ( [UU] となっていれば OK ) [root@dlp ~]# cat /proc/mdstat Personalities : [raid1] md0 : active raid1 sdc1[1] sdb1[0] 167638016 blocks super 1.2 [2/2] [UU] [=>...................] resync = 6.3% (10603904/167638016) finish=12.6min speed=206316K/sec bitmap: 2/2 pages [8KB], 65536KB chunk unused devices: <none> # 同期が完了すると以下のようなステータスになる # 以上で RAID 1 設定完了 [root@dlp ~]# cat /proc/mdstat Personalities : [raid1] md0 : active raid1 sdc1[1] sdb1[0] 167638016 blocks super 1.2 [2/2] [UU] bitmap: 0/2 pages [0KB], 65536KB chunk unused devices: <none> |
[4] | RAID デバイスへのファイルシステムの作成とシステムへのマウントは通常通りです。 |
# 例として xfs でフォーマットして /mnt にマウント [root@dlp ~]# mkfs.xfs /dev/md0 meta-data=/dev/md0 isize=512 agcount=4, agsize=10477376 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=1 = reflink=1 bigtime=1 inobtcount=1 nrext64=1 = exchange=0 data = bsize=4096 blocks=41909504, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1, parent=0 log =internal log bsize=4096 blocks=20463, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 Discarding blocks...Done.[root@dlp ~]# mount /dev/md0 /mnt [root@dlp ~]# df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/cs-root xfs 71G 3.2G 68G 5% / devtmpfs devtmpfs 4.0M 0 4.0M 0% /dev tmpfs tmpfs 7.7G 0 7.7G 0% /dev/shm tmpfs tmpfs 3.1G 8.7M 3.1G 1% /run tmpfs tmpfs 1.0M 0 1.0M 0% /run/credentials/systemd-journald.service /dev/vda2 xfs 960M 406M 555M 43% /boot tmpfs tmpfs 1.0M 0 1.0M 0% /run/credentials/getty@tty1.service tmpfs tmpfs 1.0M 0 1.0M 0% /run/credentials/serial-getty@ttyS0.service tmpfs tmpfs 1.6G 4.0K 1.6G 1% /run/user/0 /dev/md0 xfs 160G 3.1G 157G 2% /mnt # fstab に記載する場合は # md*** の名前はハードウェア構成の変更等により変わるため UUID で記載する [root@dlp ~]# blkid | grep md /dev/md0: UUID="97cea3bc-8b10-4c71-957c-a8d75a5dc7ff" BLOCK_SIZE="512" TYPE="xfs"
[root@dlp ~]#
vi /etc/fstab # 調べた UUID で記述
UUID=4f905149-bcf9-42c1-8c98-7a4f0e4095af / xfs defaults 0 0
UUID=4162725a-1d28-42a8-93ce-9138431b6bd8 /boot xfs defaults 0 0
UUID=57dcca14-dd42-4233-9a7c-d7ed916ec366 none swap defaults 0 0
UUID=97cea3bc-8b10-4c71-957c-a8d75a5dc7ff /mnt xfs defaults 0 0
# 以上で md*** の名前が変わった場合も正常にマウントされる [root@dlp ~]# df -hT /mnt Filesystem Type Size Used Avail Use% Mounted on /dev/md127 xfs 160G 3.1G 157G 2% /mnt |
[5] | いずれか一方のディスクが故障した場合は、以下のようにして RAID ARRAY を再構成できます。 |
# 異常発生時にはステータスが以下のようになる [root@dlp ~]# cat /proc/mdstat Personalities : [raid1] md0 : active (auto-read-only) raid1 sdb1[0] 167638016 blocks super 1.2 [2/1] [U_] bitmap: 0/2 pages [0KB], 65536KB chunk unused devices: <none> # 故障ディスクを新しいディスクと交換して [2] の手順でパーティション作成する # その後は以下のように RAID ARRAY に追加する [root@dlp ~]# mdadm --manage /dev/md0 --add /dev/sdc1
mdadm: added /dev/sdc1
[root@dlp ~]# cat /proc/mdstat Personalities : [raid1] md0 : active raid1 sdc1[1] sdb1[0] 167638016 blocks super 1.2 [2/2] [UU] [=>...................] resync = 6.3% (10603904/167638016) finish=12.6min speed=206316K/sec bitmap: 2/2 pages [8KB], 65536KB chunk unused devices: <none> |
|