Solaris10:ミラー作成

提供:KinusatiWiki
移動: 案内, 検索

目次

ミラーの組み方

Solaris10 8/05でミラーを構成する。 ZFSですべてミラー化したいが、不可能であるためSDSでのミラーおよびZFSでのミラーを構成する

構成は以下の通り。

ミラー構成
デバイス マウントポイント デバイス1 デバイス2 サイズ
d0 / /dev/dsk/c0d0s0 /dev/dsk/c1d0s0 100GB
d1 swap /dev/dsk/c0d0s1 /dev/dsk/c1d0s1 8GB
metadb -(metadb用途) /dev/dsk/c0d0s3 /dev/dsk/c1d0s3 100MB
zfs /zmirror /dev/dsk/c0d0s4 /dev/dsk/c1d0s4

SDS を利用したディスクミラー

ディスク間のパーティション構成同期

ミラーを行うためには、ディスク間で同一パーティション構成である必要があるため、 prtvtocおよびfmthardコマンドを利用してパーティション構成を同期する。

# prtvtoc /dev/rdsk/c0d0s2 | fmthard -s - /dev/rdsk/c1d0s2 
fmthard:  New volume table of contents now in place.

metadbの作成

SDSを利用するため、metadbを作成する

# metadb -a -f -c 8 c0d0s3 c1d0s3

root デバイスのmdデバイス化

rootパーティションに対してのmdデバイスを作成する。

# metainit -f d10 1 1 c0d0s0
d10: Concat/Stripe is setup
# metainit -f d20 1 1 c1d0s0
d20: Concat/Stripe is setup

metarootコマンドを実行し/etc/vfstab, /etc/systemを書き換える。コマンド実行後は2ファイルを確認する。

# metainit d0 -m d10
# metaroot d0

lockfs実行後、再起動を行う

# lockfs -fa
# init 6

d0とd20を接続する。State: ResyncingがState: Okayになったらミラー完了。

# metattch d0 d20
# metastat
d0: Mirror
    Submirror 0: d10
      State: Okay
    Submirror 1: d20
      State: Resyncing
    Resync in progress: 3 % done
    Pass: 1
    Read option: roundrobin (default)
    Write option: parallel (default)
    Size: 209728575 blocks (100 GB)

d10: Submirror of d0
    State: Okay
    Size: 209728575 blocks (100 GB)
    Stripe 0:
        Device   Start Block  Dbase        State Reloc Hot Spare
        c0d0s0          0     No            Okay   Yes


d20: Submirror of d0
    State: Resyncing
    Size: 209728575 blocks (100 GB)
    Stripe 0:
        Device   Start Block  Dbase        State Reloc Hot Spare
        c1d0s0          0     No            Okay   Yes

swapパーティションでのmirror

swapパーティションについてmirrorを構成する。

# metainit -f d11 1 1 c0d0s1
d11: Concat/Stripe is setup
# metainit -f d21 1 1 c1d0s1
d21: Concat/Stripe is setup

swapパーティションをmirrorにする

# metainit d1 -m d11
# metattach d1 d21

/etc/vfstabを書き換え、mdデバイスを利用するように変更する

/dev/md/dsk/d1  -       -       swap    -       no      -

再起動する。

# init 6

zfsでのミラー

mirror属性のzmirrorを作成し、状態を確認する。強制モードじゃないと作成できないため、-fオプションを付加。

# zpool create -f zmirror mirror c0d0s4 c1d0s4
# zpool list
NAME                    SIZE    USED   AVAIL    CAP  HEALTH     ALTROOT
zmirror                 356G     90K    356G     0%  ONLINE     -
# df /zmirror
/zmirror           (zmirror           ):733647427 blocks 733647427 files
# zpool status
  pool: zmirror
 state: ONLINE
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        zmirror     ONLINE       0     0     0
          mirror    ONLINE       0     0     0
            c0d0s4  ONLINE       0     0     0
            c1d0s4  ONLINE       0     0     0

errors: No known data errors
個人用ツール