FrontPage 新規 一覧 検索 ヘルプ ログイン

Solaris10 for SPARC Ver.02 〜VolumeManager編〜の変更点

+!!!Solaris10 for SPARC Ver.02 〜VolumeManager編〜
+{{category Solaris}}
+
+----
+
+以前 Solstice DiskSuite と呼ばれていた何かは
+VolumeManagerとしてOSに統合された。
+
+そもそもDiskSuiteとはなんぞやとか、
+どんなことができんねんとかそーいったあたりの話は
+[Sunのofficial document|http://docs.sun.com/app/docs/doc/816-4520?l=ja]
+を読んでもらうとして、
+ここではよくあるパターンのディスク2台をmirroringして使うときに
+実際に行った作業をメモしておく。
+
+----
+
+18GBディスク2本をswapまで含めてさっくりとmirroringする方向で。
+
+ c0t0d0                   c0t1d0
+   s0 -----  d0(/)    ----- s0
+   s1 ----- d1(swap)  ----- s1
+   s3 ----- d3(/var)  ----- s3
+   s4 ----- d4(/usr)  ----- s4
+   s5 ----- d5(/home) ----- s5
+   s6 ----- unassigned ---- s6
+   s7 -----  metadb   ----- s7
+
+何がやりたいかはわかるよな、これで。わかんないやつはやめとけ(ぉ
+
+とりあえず c0t0d0 にさっくりとOSをインストールしてから
+formatコマンド で c0t1d0 に c0t0d0 と全く同じようにsliceを切る。詳細略。
+1本目のディスクにmetadb用のsliceを確保しておくのを忘れないように。
+多分12cylもあれば足りると思う。
+具体的にはこんな感じ
+ Part      Tag    Flag     Cylinders        Size            Blocks
+   0       root    wm       0 -  499        1.00GB    (500/0/0)   2100000
+   1       swap    wu     500 - 1499        2.00GB    (1000/0/0)  4200000
+   2     backup    wm       0 - 8465       16.95GB    (8466/0/0) 35557200
+   3        var    wm    1500 - 1999        1.00GB    (500/0/0)   2100000
+   4        usr    wm    2000 - 4999        6.01GB    (3000/0/0) 12600000
+   5       home    wm    5000 - 8441        6.89GB    (3442/0/0) 14456400
+   6 unassigned    wm       0               0         (0/0/0)           0
+   7 unassigned    wm    8442 - 8465       49.22MB    (24/0/0)     100800
+
+sliceの場所も気にしておこう。
+VolumeManagerでは0cylからはじまっているsliceは
+0cylからはじまっているsliceとしかmirrorできない。
+c0t0d0でs0をディスクの先頭から確保したら、c0t1d0でもそうしないといけない。
+まぁ何も考えずにまったく同じ構成にしておけ。
+
+----
+
+とりあえず metadb を作成する。
+c0t0d0s7とc0t1d0s7の両方にそれぞれ3つずつ。
+詳しいおぷそんは man metadb すれ。
+ # metadb -a -f -c 3 c0t0d0s7 c0t1d0s7
+んで、とりあえずちゃんとできたか確認しておく。
+ # metadb
+         flags           first blk       block count
+      a        u         16              8192            /dev/dsk/c0t0d0s7
+      a        u         8208            8192            /dev/dsk/c0t0d0s7
+      a        u         16400           8192            /dev/dsk/c0t0d0s7
+      a        u         16              8192            /dev/dsk/c0t1d0s7
+      a        u         8208            8192            /dev/dsk/c0t1d0s7
+      a        u         16400           8192            /dev/dsk/c0t1d0s7
+合計6つ。
+
+----
+
+んで、rootのmirroringをば。
+まずは今まさに動いているrootのfilesystemをd10に、
+mirror先にする予定の場所をd20に。
+ # metainit -f d10 1 1 c0t0d0s0
+ # metainit d20 1 1 c0t1d0s0
+マウント予定のd0をmirrorとしてセットアップ。
+ # metainit d0 -m d10
+んでおまじない。rootだし。
+ # metaroot d0
+/etc/vfstabを見て、ちゃんと /dev/dsk/md/d0 
+をmountするようになっているかを確認しておく。
+
+あとはrebootしてから
+ # metattach d0 d20
+して、Resyncが完了するのを待てばよろしい。
+
+----
+
+他のぱーてぃそんも基本的には同じ。
+metainitでmeta deviceを作成して、
+metainitでmeta deviceをmirrorとしてセットアップして
+/etc/vfstab を手動で書き換えてrebootしてmetattachしておしまい。
+
+具体的にはこんな感じ。
+ # metainit -f d11 1 1 c0t0d0s1
+ # metainit d21 1 1 c0t1d0s1
+ # metainit d1 -m d11
+ # vi /etc/vfstab
+ # reboot
+ # metattach d1 d21
+
+d3もd4もd5も同様の手順を繰り返せばいい。
+
+----
+
+あとは定期的にmetastatを実行して、
+State が Needs maintenance になってないかを確認しておけ。
+
+おしまい。