LinuxServer RAIDについて その2
前回はXen上の仮想マシンに新たにディスクをアタッチしたので
今回はそのディスクを使用してRAIDを組んでいくことにする
mdadmを使用してソフトウェアRAIDを作成する
ソフトウェアRAIDはLinuxの mdadm コマンドを使用して作成していく。
RAID用パーティションの作成
初めに RAIDを作成したいパーティションを fdisk で作成する。
今回は以下のように /dev/xvdb1(1GB) と /dev/xvdc1(2GB) を用意した。
パーティションのサイズは異なっていても問題ない。
[root@gestos01 ~]# fdisk -l Disk /dev/xvda: 8388 MB, 8388608000 bytes 255 heads, 63 sectors/track, 1019 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/xvda1 * 1 13 104391 83 Linux /dev/xvda2 14 1019 8080695 8e Linux LVM Disk /dev/xvdb: 1074 MB, 1074790400 bytes 255 heads, 63 sectors/track, 130 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/xvdb1 1 130 1044193+ 83 Linux Disk /dev/xvdc: 2148 MB, 2148532224 bytes 255 heads, 63 sectors/track, 261 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/xvdc1 1 261 2096451 83 Linux
RAIDの作成
以下のコマンドでソフトウェアRAIDを作成する
この際に /dev/xvdb1 や /dev/xvdb2 をマウントをしているならアンマウントをしておく事
[root@gestos01 ~]# mdadm --create /dev/md0 --level=5 --raid-devices=2 /dev/xvd[bc]1 mdadm: /dev/xvdb1 appears to contain an ext2fs file system size=200780K mtime=Tue Mar 26 22:06:48 2013 mdadm: largest drive (/dev/xvdc1) exceed size (200704K) by more than 1% Continue creating array? Continue creating array? (y/n) Continue creating array? (y/n) y mdadm: array /dev/md0 started.
RAIDの状態確認
RAIDの状態の参照について以下のサイトを参考にした
http://www.obenri.com/_raid_build/after_install_raid.html#target_pictprocmdstat01
RAID5 アレイを構成するには時間がかかる。
だが今回は 1GB と 2GB 程度のパーティションなので数秒で完了した。
RAID アレイの状態は cat /proc/mdstat で確認できる。
以下はすでにRAIDの構成が完了した状態である。完了していなければ構成中のようなメッセージが表示される。
[root@gestos01 ~]# cat /proc/mdstat Personalities : [raid6] [raid5] [raid4] md0 : active raid5 xvdc1[1] xvdb1[0] 200704 blocks level 5, 64k chunk, algorithm 2 [2/2] [UU]
ちなみに fdiskコマンドで確認すると以下のように /dev/md0 が追加されていた。
ただ容量が 205MB にしかなっていないのが気になる(少ない気がするが)
[root@gestos01 ~]# fdisk -l Disk /dev/xvda: 8388 MB, 8388608000 bytes 255 heads, 63 sectors/track, 1019 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/xvda1 * 1 13 104391 83 Linux /dev/xvda2 14 1019 8080695 8e Linux LVM Disk /dev/md0: 205 MB, 205520896 bytes 2 heads, 4 sectors/track, 50176 cylinders Units = cylinders of 8 * 512 = 4096 bytes Disk /dev/md0 doesn't contain a valid partition table Disk /dev/xvdb: 1074 MB, 1074790400 bytes 255 heads, 63 sectors/track, 130 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/xvdb1 1 130 1044193+ 83 Linux Disk /dev/xvdc: 2148 MB, 2148532224 bytes 255 heads, 63 sectors/track, 261 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/xvdc1 1 261 2096451 83 Linux
以下のようにしても RAID関係の設定情報を確認できる
[root@gestos01 mnt]# mdadm --detail /dev/md0 /dev/md0: Version : 0.90 Creation Time : Thu Mar 28 18:27:00 2013 Raid Level : raid5 Array Size : 200704 (196.03 MiB 205.52 MB) Used Dev Size : 200704 (196.03 MiB 205.52 MB) Raid Devices : 2 Total Devices : 2 Preferred Minor : 0 Persistence : Superblock is persistent Update Time : Thu Mar 28 18:41:05 2013 State : clean Active Devices : 2 Working Devices : 2 Failed Devices : 0 Spare Devices : 0 Layout : left-symmetric Chunk Size : 64K UUID : 95cc06a0:83db7729:d2d0191a:334586d0 Events : 0.2 Number Major Minor RaidDevice State 0 202 17 0 active sync /dev/xvdb1 1 202 33 1 active sync /dev/xvdc1
今回はRAIDを実際に作成してみた。
次回はRAIDにファイルシステムを作成してみることにする