次の手順を使用し、広域名前空間 /global/.devices/node@nodeid/ をミラー化します。
各クラスタのノードのスーパーユーザーになります。
広域名前空間スライスを単一スライス (1 方向) 連結にします。
ディスクスライスの物理ディスク名を使用します (cNtXdY sZ)。
# metainit -f submirror1 1 1 diskslice |
2 番目の連結を作成します。
# metainit submirror2 1 1 submirror-diskslice |
1 つのサブミラーを使用して 1 方向のミラーを作成します。
# metainit mirror -m submirror1 |
広域デバイスファイルシステム /global/.devices/node@nodeid がマウントされるミラーのメタデバイス名またはボリューム名は、クラスタ全体で一意である必要があります。
2 番目のサブミラーをこのミラーに接続します。
このように接続することで、サブミラーの同期が開始されます。
# metattach mirror submirror2 |
/global/.devices/node@nodeid ファイルシステム用に /etc/vfstab ファイルエントリを編集します。
device to mount と device to fsck の列にある名前をミラー名で置換します。
# vi /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # /dev/md/dsk/mirror /dev/md/rdsk/mirror /global/.devices/node@nodeid ufs 2 no global |
手順 5で開始したミラーの同期が完了するまで待機します。
metastat(1M) コマンドを使用して、ミラー状態を参照し、ミラーの同期が完了していることを確認します。
# metastat mirror |
広域名前空間のミラー化に使用されるディスクが複数のノードに接続されている (多重ホスト化されている) 場合は、localonly プロパティーを有効にします。
以下の手順を実行して、広域名前空間のミラー化に使用するディスクの raw ディスクデバイスグループの localonly プロパティーを有効にします。起動デバイスが複数のノードに接続されている場合に、その起動デバイスが不意にノードを使用できなくなるのを防ぐために、localonly プロパティーは有効にしておいてください。
必要に応じて、scdidadm(1M) コマンドを使用し、raw ディスクデバイスグループのデバイス ID (DID) の完全なパス名を表示します。
次の例では、raw ディスクデバイスグループ名 dsk/d2 は、出力の第 3 列の一部になっており、これが完全な DID パス名にあたります。
# scdidadm -L … 1 phys-schost-3:/dev/rdsk/c1t1d0 /dev/did/rdsk/d2 |
raw ディスクデバイスグループのノードリストを表示します。
次に出力例を示します。
# scconf -pvv | grep dsk/d2 Device group name: dsk/d2 … (dsk/d2) Device group node list: phys-schost-1, phys-schost-3 … |
ノードリストに複数のノード名が含まれる場合、ディスクをミラー化したノードを除くすべてのノードをノードリストから削除します。
ディスクをミラー化したノードだけが raw ディスクデバイスグループのノードリストに残るはずです。
# scconf -r -D name=dsk/dN,nodelist=node |
raw ディスクデバイスグループのクラスタ固有の名前を指定します。
ノードリストから削除するノードの名前を指定します。
localonly プロパティーを有効にします。
localonly プロパティーが有効になった時点で、raw ディスクデバイスグループはそのノードリスト内のノードだけに使用されるようになります。これにより、起動デバイスが複数のノードに接続されている場合に、不意にノードがその起動デバイスから使用できなくなることが防止されます。
# scconf -c -D name=rawdisk-groupname,localonly=true |
raw ディスクデバイスグループの名前を指定します。
localonly プロパティーの詳細については、scconf_dg_rawdisk(1M) のマニュアルページを参照してください。
次の例に、パーティション c0t0d0s3 上のサブミラー d111 と パーティション c2t2d0s3 上のサブミラー d121 で構成されているミラー d101 を作成する方法を示します。/global/.devices/node@1 の /etc/vfstab ファイルエントリは、ミラー名 d101 を使用するように更新されます。デバイス c2t2d0 は多重ホストディスクなので、localonly プロパティーが有効に設定されています。
(ミラーを作成します) # metainit -f d111 1 1 c0t0d0s3 d111: Concat/Stripe is setup # metainit d121 1 1 c2t2d0s3 d121: Concat/Stripe is setup # metainit d101 -m d111 d101: Mirror is setup # metattach d101 d121 d101: Submirror d121 is attached (/etc/vfstab ファイルを編集します) # vi /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # /dev/md/dsk/d101 /dev/md/rdsk/d101 /global/.devices/node@1 ufs 2 no global (同期の状態を表示します) # metastat d101 d101: Mirror Submirror 0: d111 State: Okay Submirror 1: d121 State: Resyncing Resync in progress: 15 % done … (ミラー化したディスクの raw ディスクデバイスグループのデバイス ID 名を確認します) # scdidadm -L … 1 phys-schost-3:/dev/rdsk/c2t2d0 /dev/did/rdsk/d2 (デバイスグループのノードリストを表示します) # scconf -pvv | grep dsk/d2 Device group name: dsk/d2 … (dsk/d2) Device group node list: phys-schost-1, phys-schost-3 … (ノードリストから phys-schost-3 を削除します) # scconf -r -D name=dsk/d2,nodelist=phys-schost-3 (localonly プロパティーを有効にします) # scconf -c -D name=dsk/d2,localonly=true |
ルート (/) 以外で、マウント解除できないファイルシステムをミラー化する場合は、「マウント解除できないルート (/) 以外のファイルシステムをミラー化する」に進みます。
ユーザー定義のファイルシステムをミラー化する場合は、「マウント解除できるファイルシステムをミラー化する」に進みます。
上記以外の場合は、 「クラスタ内でのディスクセットの作成」に進んで、ディスクセットを作成します。
このミラー化のいくつかの手順において、「metainit: dg-schost-1: d1s0: not a metadevice」のようなエラーメッセージが出力されることがあります。このようなエラーメッセージは危険ではなく、無視してもかまいません。