Sun Cluster ソフトウェアのインストール (Solaris OS 版)

広域名前空間をミラー化する

次の手順を使用し、広域名前空間 /global/.devices/node@nodeid をミラー化します。

  1. 各クラスタのノードのスーパーユーザーになります。

  2. 広域名前空間を単一スライス (1 方向) 連結にします。

    ディスクスライスの物理ディスク名を使用します (cNtXdYsZ)。


    # metainit -f submirror1 1 1 diskslice
    

  3. 2 番目の連結を作成します。


    # metainit submirror2 1 1 submirror-diskslice
    

  4. 1 つのサブミラーを使用して 1 方向のミラーを作成します。


    # metainit mirror -m submirror1
    


    注 –

    このミラーのメタデバイス名またはボリューム名は、クラスタ全体で一意でなければなりません。


  5. 2 番目のサブミラーをこのミラーに接続します。

    このように接続することで、サブミラーの同期が開始されます。


    # metattach mirror submirror2
    

  6. /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

  7. クラスタ内の残りの各ノードに対して、手順 1 から 手順 6 までを繰り返します。

  8. 手順 5 で開始したミラーの同期が完了するまで待機します。

    metastat(1M) コマンドを使用して、ミラー状態を参照し、ミラーの同期が完了しているかどうかを確認します。


    # metastat mirror
    

  9. 広域名前空間のミラー化に使用したディスクが複数のノード (多重ポート) に物理的に接続されているかどうかを確認します。

    • 物理的に接続されていない場合は、手順 10 に進みます。

    • 物理的に接続されている場合は、次の手順を実行して、広域名前空間のミラー化に使用したディスクの raw ディスクデバイスグループの localonly プロパティを有効にします。 起動デバイスが複数のノードに接続されている場合に、その起動デバイスが不意にノードを使用できなくなるのを防ぐために、localonly プロパティは有効にしておいてください。

    1. 必要に応じて、scdidadm(1M) コマンドを使用し、raw ディスクデバイスグループのデバイス ID (DID) の完全なパス名を表示します。

      次の例では、raw ディスクデバイスグループ名 dsk/d2 は、出力の第 3 列の一部になっており、これが完全な DID パス名にあたります。


      # scdidadm -L
      …
      1         phys-schost-3:/dev/rdsk/c1t1d0     /dev/did/rdsk/d2
      

    2. raw ディスクデバイスグループのノードリストを表示します。

      次に出力例を示します。


      # scconf -pvv | grep dsk/d2
      Device group name:						dsk/d2
      …
        (dsk/d2) Device group node list:		phys-schost-1, phys-schost-3
      …

    3. ノードリストにノード名が複数含まれているかどうかを確認します。

      • 含まれている場合は、手順 d に進みます。

      • 含まれていない場合は、手順 e に進みます。

    4. raw ディスクデバイスグループのノードリストから、ディスクをミラー化したノード以外のすべてのノードを削除します。

      ディスクをミラー化したノードだけがノードリストに残るようにします。


      # scconf -r -D name=dsk/dN,nodelist=node
      
      -D name=dsk/dN

      raw ディスクデバイスグループのクラスタ固有の名前を指定します。

      nodelist=node

      ノードリストから削除するノードの名前を指定します。

    5. scconf(1M) コマンドを使用し、localonly プロパティを有効にします。

      localonly プロパティが有効になった時点で、raw ディスクデバイスグループはそのノードリスト内のノードだけに使用されるようになります。 これにより、起動デバイスが複数のノードに接続されている場合に、不意にノードがその起動デバイスから使用できなくなることが防止されます。


      # scconf -c -D name=rawdisk-groupname,localonly=true
      
      -D name=rawdisk-groupname

      raw ディスクデバイスグループの名前を指定します。

      localonly プロパティの詳細については、scconf_dg_rawdisk(1M) のマニュアルページを参照してください。

  10. マウント解除できないルート (/) 以外のファイルシステムをミラー化するかどうかを決定します。

  11. ユーザー定義ファイルシステムをミラー化するかどうかを決定します。

例 — 広域名前空間のミラー化

次の例に、パーティション c0t0d0s3 上のサブミラー d111 と パーティション c2t2d0s3 上のサブミラー d121 で構成されているミラー d101 を作成する方法を示します。 /global/.devices/node@1/etc/vfstab ファイルエントリは、ミラー名 d101 を使用するように更新されます。 ディスク c2t2d0 は多重ポートディスクなので、localonly プロパティが有効に設定されています。


(ミラーを作成します)
# metainit -f d111 1 1 c0t0d0s3
d111: 連結/ストライプがセットアップされます
# metainit d121 1 1 c2t2d0s3
d121: 連結/ストライプがセットアップされます
# metainit d101 -m d111
d101: ミラーがセットアップされます
# metattach d101 d121
d101: サブミラー d121 は接続中
 
(/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: ミラー
      サブミラー 0: d111
         状態: 正常
      サブミラー 1: d121
         状態: 再同期中
      再同期実行中: 15 % 完了
…
 
(ミラー化されたディスクの raw-disk デバイスグループのデバイス ID 名を確認します)
# scdidadm -L
…
1         phys-schost-3:/dev/rdsk/c2t2d0     /dev/did/rdsk/d2
 
(デバイスグループのノードリストを表示します)
# scconf -pvv | grep dsk/d2
デバイスグループ名:						dsk/d2
…
  (dsk/d2) デバイスグループのノードリスト:		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