|
|
ブートとディスク管理 No. 492 ソフトウェアRAID1の構築
Turbolinux 7 Serverを使用したソフトウェアRAID1の構築手順と、ディスク障害からの
復旧方法を説明します。
RAID1とは複数台のハードディスクのそれぞれに同じ情報を書き込み、ディスク
の冗長化を図るものであり、最低2台のハードディスクを必要とします。
例として2台のハードディスクを使用し、パーティションは以下のように構成します。
【パーティション構成】
・ディスク1(/dev/hda)
/dev/hda1 /boot 64MB
/dev/hda2 / 3GB
/dev/hda3 swap 256MB
・ディスク2(/dev/hdd)
/dev/hdd1 /boot 64MB
/dev/hdd2 / 3GB
ソフトウェアRAIDを構成する際には複数のディスクデバイスをまとめる必要があり、
それらのデバイスが "md" という仮想デバイスとして作成されます。
・仮想デバイス(/dev/md)
/dev/md0 各ディスクの "/boot" に対応
/dev/md1 各ディスクの "/" に対応
【RAID構築手順】
RAID1の構築は、Turbolinuxをインストール時に "TFDisk" から行うことができます。
(1)
・/bootパーティションのRAID化
TFDiskの画面にて、2台のハードディスクそれぞれで "パーティションの追加"
ボタンを選択し、
パーティションタイプ:Linux RAID
容量 :64(MB)
を作成する。その後、"ソフトウェアRAIDの作成" ボタンを選択し以下の選択を行う
ことにより、md0仮想デバイスが作成される。
RAIDタイプ :RAID1
ブロック :/dev/hda1、/dev/hdd1 にチェック
ファイルシステム:ext2
マウントポイント:/boot
(2)
・/パーティションのRAID化
(1)と同様の方法でディスク容量3GBの "Linux RAID"パーティションをそれぞれの
ディスクに作成し、マウントポイントを "/" とする。
(3)
・swapパーティションの作成
swapパーティションはRAID化してもあまり意味がないため、 "/dev/hda" のディスク
にのみ作成する。
(4)
・LILOのインストール
"/dev/md0のブートパーティションの最初のセクタ" にインストールを行う。
以上の設定で、インストールの際にRAID構成を構築する設定は終了です。
上記項目以外の設定箇所は通常のインストールと同じように進めて下さい。
なお、起動ディスクは必ず作成しておいて下さい。
※Turbolinux 7 Serverをインストールした時点での initscripts パッケージには
終了処理に問題がありますので、以下のサイトより最新版の initscripts
(initscripts-7.0.0-18.i586.rpm 以上)をダウンロードしてご使用下さい。
http://www.turbolinux.co.jp/update/
【RAID確認方法】
RAID構成されたディスクの正常性を確認するにはコマンドラインより以下の
コマンドを入力して下さい。
# more /proc/mdstat
正常に動作している場合、次のような表示が出力されます。
---------------------------------------------------------------------
Personalities : [raid1]
read_ahead 1024 sectors
md1 : active raid1 ide/host0/bus0/target0/lun0/part2[1] ide/host0/bus1/target1
/lun0/part2[0]
3068288 blocks [2/2] [UU]
md0 : active raid1 ide/host0/bus0/target0/lun0/part1[1] ide/host0/bus1/target1
/lun0/part1[0]
64128 blocks [2/2] [UU]
---------------------------------------------------------------------
ディスク障害が起こった際には、"[2/2] [UU]" の表示が "[2/1] [_U]" もしくは
"[2/1] [U_]" の表示に変化します。
また、ディスクをRAID構成にすることにより "/etc/raidtab" ファイルが作成
されます。ファイルの内容は次のコマンドで確認できます。
# more /etc/raidtab
ファイルの内容は次のようになります。
---------------------------------------------------------------------
raiddev /dev/md0 <--仮想デバイスの指定
raid-level 1 <--RAIDの種別
nr-raid-disks 2
chunk-size 64k
persistent-superblock 1
#nr-spare-disks 0
device /dev/hdd1 <--ディスク2の指定
raid-disk 0
device /dev/hda1 <--ディスク1の指定
raid-disk 1
raiddev /dev/md1
raid-level 1
nr-raid-disks 2
chunk-size 64k
persistent-superblock 1
#nr-spare-disks 0
device /dev/hdd2
raid-disk 0
device /dev/hda2
raid-disk 1
---------------------------------------------------------------------
【ディスク障害からの復旧方法】
例として、/dev/hdaとして認識されているディスクが故障した際の復旧方法を
以下に示します。
(1)
OSをシャットダウンし、故障しているハードディスクを取り外します。
その後、新しいハードディスクを取り付け、OSを起動します。
正常にOSが起動しない場合には起動ディスクを用いて起動して下さい。
(2)
fdiskコマンドを使用して、新しく取り付けたハードディスクに故障した
ディスクと同じパーティションを作成します。
# fdisk /dev/hda
(3)
RAID構成を復旧させる。
# raidhotadd /dev/md0 /dev/hda1
# raidhotadd /dev/md1 /dev/hda2
(4)
RAID構成が正常に復旧しているか確認します。
# more /proc/mdstat
(5)
swap領域を有効にします。
# mkswap /dev/hda3
# swapon /dev/hda3
(6)
liloのインストールを行います。
# /sbin/lilo
今回はswap領域を含むハードディスクが故障した際の復旧方法を説明しましたが、
swap領域を含まないディスクが壊れた場合には、作業項目(2)のfdiskでのswap領域
作成と、(5)の作業を省いて下さい。
また、作業項目(3)を以下のようにコマンド入力して下さい。
# raidhotadd /dev/md0 /dev/hdd1
# raidhotadd /dev/md1 /dev/hdd2
以上でディスク障害からの復旧方法は終了です。
以上、ディスクのRAID構築方法及び、ディスク障害からの復旧方法を述べましたが、
RAIDはデータの完全性に対する保証ではなく、ディスク故障時にデータを守って
くれるものです(RAID1以上)。従って、誤って削除してしまったデータまたは内部・
外部からの侵入者により故意に削除されたデータは復旧しません。
上記問題に対応するためには、テープバックアップ装置等を用いて、一定期間毎に
データバックアップを行うことをおすすめします。
RAID 関連文書 対象製品
Last modified : Fri Apr 19 JST 2002 # 4
|
Copyright © Turbolinux, Inc..All Right Reserved.

