Solaris DISK ミラー作成

Solaris DISK ミラー

(1) meadb作成領域の確保
metadbと呼ばれるRAID情報の状態データベースを作る必要があり、
これは独立したスライスに作らないとダメです。
既にスライスを全部使ってる場合はスライス構成の切り直しとか
metadb領域を考えたスライスにしてOS再インストールになるので
ご注意。たいていはswapを切り出すとかでしのぎます。

Solaris10ではformatコマンドでいじろうとするときに
/etc/vfstabに使う用に記述があったら、そこの箇所は
操作できないので注意必要


(2) ミラー先HDDのパーティションを切る
formatコマンドでちまちま合わせてもいいですけど、
ミラー元、ミラー先のディスク容量とか全く同じものであれば

# prtvtoc -s /dev/rdsk/c0t0d0s2 > /tmp/disk0
# fmthard -s /tmp/disk0 /dev/rdsk/c1t0d0s2


(3) metadbの作成
metadbを作ります。Diskあたり2個ずつでもいいけど
3個ずつがおすすめ。理由は深く語らない。

# metadb -a -f -c 3 /dev/dsk/c0t0d0s3
# metadb -a -c 3 /dev/dsk/c1t0d0s3

# metadb で作成できたか確認。


(4) md.tabの変更
metainitコマンドだけで直接metaデバイスの作成実行しても
いいですけど、後のメンテナンスの為に/etc/lvm/md.tabに
どういう構成にするのか記述しとくのがベター。

・・・/etc/lvm/md.tab抜粋・・・
# root mirror
d10 1 1 /dev/dsk/c0t0d0s0
d20 1 1 /dev/dsk/c1t0d0s0
d0 -m d10
# swap mirror
d11 1 1 /dev/dsk/c0t0d0s1
d21 1 1 /dev/dsk/c1t0d0s1
d1 -m d11
# /export/home mirror
d17 1 1 /dev/dsk/c0t0d0s7
d27 1 1 /dev/dsk/c1t0d0s7
d7 -m d17


(5) 重要ファイルのバックアップ
/etc/systmと/etc/vfstabは書き替わっちゃうので
コピーして取っておきます。

# cp -p /etc/system /etc/system_ORG
# cp -p /etc/vfstab /etc/vfstab_ORG


(6) metaデバイスの作成
普通の物理パーティションを仮想のデバイスに割り当てる感じ

# metainit d20
# merainit d21
# metainit d27

マウントしてところは -fつけないとダメ
# metainit -f d10
# metainit -f d11
# metainit -f d17

確認はmetastatコマンド。
いまのところ全部、連結/ストライプデバイスなはず。



(7) 片面ミラーの構築

# metainit d0
# metainit d1
# metainit d7


確認はmetastatコマンド。
d0のミラー構成の一部としてd10がいる感じになってるはずです。


(8) metaデバイスでbootできるように細工

# metaroot d0

/etc/vfstabのroot部分(c0t0d0s0)が書き替わってますので
c0t0d0s1とc0t0d0s7もそれぞれd1、d7でマウントするように
記述変更。fsckのデバイスの変更もお忘れなく。


(9) 片面ミラーでbootしてみる。
# init 6 してみましょう。
再起動してdfコマンドで確認したら各パーティションのデバイス
/dev/md/dsk/d0が/(root)、/dev/md/dsk/d7が/export/home、
になってるはず。
swapコマンドで確認したら/dev/md/dsk/d1がswapのはず

(10)ミラーを組む

# metattach d0 d20
# metattach d1 d21
# metattach d7 d27

確認はmetastatコマンド。それぞれで再同期中ってなります。
この再同期が全部終わって正常に変わればミラー完成。
再同期中にリブートしてもいいけど、最初から同期やり直しに
なるのでattachかけたら放置するのがよいかと。


(11)あと細々した作業
coreダンプを取るところのデバイスが変わってるので
# dumpadm -d swap としましょう。

SPARCマシンであればOBPのboot-deviceを2つのHDDのどちらでも
起動できるように変更しといたほうがいいでしょう。

x86マシンだとミラー先HDDに対してGrubのインストールが必要。
Solaris10でも古いのだったらpbootのインストール必要)
ミラー先HDDから起動するためのGrubメニューの追記も必要かな