【AWS】EBSでRAID1+0をやってみたメモ ~後編:EBSのアタッチからRAID構築~
ども。前回はRAIDってなんぞや?について書きましたが、今回は実際にAWS触ってRAIDを組んで行きたいと思います。
EC2インスタンス作成
なにはともあれ、AWSコンソールにログインしてEC2インスタンス(仮想サーバ)を作成。ここら辺の手順は端折ります。今回のOSははAmazon Linuxを指定。
作成前のディスク状態をlsblkコマンドで確認。ディスクはxvdaのみ存在します。
EBS作成
EBS(Amazon Elastic Blok Store)とは何かと言うと、要は外部ディスクですね。EC2インスタンスに対してAWSコンソール上で簡単にアタッチ(接続)/デタッチ(切断)できるとのこと。
EC2インスタンス作成時に、複数EBS作ることもできるのですが、今回は後から作成してみました。
N個のボリュームをクリック
ボリュームの作成をクリック
サイズを1GiBに変更し、ボリュームの作成をクリック
※ 注意!EBSサイズの合計が30GiBを超えると無料枠外となり料金が発生します。
できました。これを後3回繰り返します。
EBSアタッチ(接続)
では、作成したEBSをEC2インスタンスに接続します。
対象のEBSを選択後、右クリックし「ボリュームのアタッチ」をクリック
インスタンス欄にて作成したEC2インスタンス名を選択しアタッチをクリック
これを、作成したEBS全てに行います。
再度lsblkコマンドで確認
ディスクが増えました!
mdadmコマンドインストール
以下コマンドでRAID管理用のコマンドをインストール…と思ったら既にAmazon Linuxには入っていました。昨日Red Hatで試したときは入ってなかったんですがね。ない場合は適時入れましょう。
sudo yum -y install mdadm
RAID1(ミラーリング)設定
では、ようやくRAIDを組んでいきます。まずは以下コマンドでEBSを2づつミラーリングしていきます。今回は、/dev/xvdgと/dev/xvdiでミラーリング。
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/xvdg /dev/xvdi
ブートデバイスとして適してないです的なメッセージが出ますが、ブートデバイスでは無いので「y」を入力すると作成できました。続いて残りの/dev/xvdhと/dev/xvdfも同じコマンドでミラーします。
sudo mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/xvdh /dev/xvdf
lsblkコマンド実行結果。それぞれのディスクがmd0,md1に属してます。
「/proc/mdstat」ファイルをcatするとRAID情報が見れます。
これで、それぞれのディスクでRAID1が組めました。
RAID0(ストライピング)設定
では最後に作成したRAID1のデバイスである「/dev/md0(xvdgとxvdiのペア)」と「/dev/md1(xvdfとxvdhのペア)」でRAID0(ストライピング)を組みます。
sudo mdadm --create /dev/md2 --level=0 --raid-devices=2 /dev/md1 /dev/md0
md0とmd1はRAIDアレイですよとのメッセージが出てきたのでyを入力。無事作成できました。
mdstatファイルは以下のようになりました。md0とmd1でRAID0が組めていることが確認できます。
ファイルシステム作成
作成したRAID0のディスクを実際に使っていきます。
sudo mkfs -t ext4 /dev/md2
マウントしてサイズ確認1GiBのEBS4本をRAID1+0したので、サイズは2.0Gになりましたね。
というわけで、RAID1+0できました。眠いので自動マウント設定と、パフォーマンスチェックはまた後日に行いたいと思います。