CentOS7のソフトウェアRAID(md)で構成したRAID6のストレージアレイを、
そのまま別のLinuxOS(CentOS7)でマウントできるか検証してみた。
QNAPやLinkStationなど、mdを利用したNASの筐体/電源故障時、有効かと思われる。
物理的に検証したい所だけど、パーツがないので仮想マシン(VirtualBox)で検証した。
検証VM構成
- raid-test0 …以降「VM0」と呼ぶ
HDD0(10GB) : LVM(単一ディスク:システム用)
HDD1-4(8GBx4): RAID6(ソフトウェアRAID:データ用)
OS: CentOS7- raid-test1 …以降「VM1」と呼ぶ
HDD0(10GB) : LVM(単一ディスク:システム用)
OS: CentOS7
検証の流れ
- VM0で構成したRAID6アレイに1MBのダミーファイルを100個生成、MD5とファイルサイズを記録。
- VM0を停止しVirtualBoxのマネージャからRAID6のVMディスクx4をVM0から解放し、VM1に追加。
- VM1を起動し、RAID構成確認、簡易読み書きテスト、および工程1.とのファイル差分チェック。
- (追加検証1) 2.の工程で、VM1に対してVMディスクx4のうち2台のみ追加した時の動作確認と、縮退モードでのアレイ立ち上げ。
検証1
VM0で構成したRAID6アレイに1MBのダミーファイルを100個生成、MD5とファイルサイズを記録。
まずは、VM0の初期状態
# mdadm --detail /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Wed Feb 25 09:42:40 2015
Raid Level : raid6
Array Size : 16765952 (15.99 GiB 17.17 GB)
Used Dev Size : 8382976 (7.99 GiB 8.58 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistentUpdate Time : Wed Feb 25 09:44:39 2015
State : active
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0Layout : left-symmetric
Chunk Size : 512KName : raid-test0:0 (local to host raid-test0)
UUID : 5631fad3:0ec41ac1:b6234c79:ab094b44
Events : 18Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 8 33 1 active sync /dev/sdc1
2 8 49 2 active sync /dev/sdd1
3 8 65 3 active sync /dev/sde1
このmd0を/mnt/md0にマウントし、そこに1MBのダミーファイルを100個作成。
# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/mapper/centos-root 8.5G 1.2G 7.4G 14% /
devtmpfs 492M 0 492M 0% /dev
tmpfs 498M 0 498M 0% /dev/shm
tmpfs 498M 6.6M 491M 2% /run
tmpfs 498M 0 498M 0% /sys/fs/cgroup
/dev/sda1 497M 96M 402M 20% /boot
/dev/md0 16G 45M 15G 1% /mnt/md0
# for i in {1..100};do dd if=/dev/zero of=/mnt/md0/file$i bs=1M;done
生成されているか確認。
# ll/ /mnt/md0/
合計 1024016
-rw-r--r--. 1 root root 10485760 2月 25 09:52 file1
-rw-r--r--. 1 root root 10485760 2月 25 09:52 file10
-rw-r--r--. 1 root root 10485760 2月 25 09:52 file100
.....
.....
ファイル数も100で無事生成されてそう。
# find /mnt/md0/ -type f | wc -l
100
MD5確認、あとの工程の差分チェックで利用。
# md5sum /mnt/md0/file*
f1c9645dbc14efddc7d8a322685f26eb /mnt/md0/file1
f1c9645dbc14efddc7d8a322685f26eb /mnt/md0/file100
100ファイル全て同じMD5値、アレイ障害でファイルに変化があれば、値も変化するはず。
念のため、ファイルサイズも確認。
# du /mnt/md0 -b
16384 /mnt/md0/lost+found
1048596480 /mnt/md0
長くなったので、検証2は次回の記事で。