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

Solstice DiskSuite または Solaris Volume Manager ソフトウェアのインストールと構成

この節では、Solstice DiskSuite または Solaris Volume Manager ソフトウェアをインストールするための情報と手順を紹介します。次に示す状況では、該当する手順を実行する必要がありません。

次の表に、 Sun Cluster 構成用の Solstice DiskSuite または Solaris Volume Manager ソフトウェアのインストールと構成において行う作業を示します。

表 3–1 Task Map: Solstice DiskSuite または Solaris Volume Manager ソフトウェアのインストールと構成

作業 

参照先 

1. Solstice DiskSuite または Solaris Volume Manager 構成のレイアウトの計画 

「ボリューム管理の計画」

2. (Solaris 8 のみ) Solstice DiskSuite ソフトウェアをインストール

「Solstice DiskSuite ソフトウェアをインストールする」

3. (Solaris 8 と Solaris 9 のみ) 構成に必要なメタデバイス名とディスクセットの数を計算し、/kernel/drv/md.conf ファイルを変更

「メタデバイス名またはボリューム名とディスクセットの数を算出する」

4. ローカルディスクに状態データベースの複製を作成 

「状態データベースの複製を作成するには」

5. (任意) ルートディスクのファイルシステムをミラー化 

「ルートディスクのミラー化」

ProcedureSolstice DiskSuite ソフトウェアをインストールする


注 –

次のような状況ではこの手順を実行しないでください。


クラスタ内の各ノードで次の作業を行います。

始める前に

次の作業を実行します。

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

  2. CD-ROM からインストールする場合は、ノードの CD-ROM ドライブに Solaris 8 Software 2 of 2 CD-ROM を挿入します。

    この手順では、ボリューム管理デーモン vold(1M) が実行されており、CD-ROM デバイスを管理するように構成されていることを想定しています。

  3. Solstice DiskSuite ソフトウェアパッケージをインストールします。

    このソフトウェアパッケージは、次の例に示す順序でインストールします。


    # cd /cdrom/sol_8_sparc_2/Solaris_8/EA/products/DiskSuite_4.2.1/sparc/Packagespkgadd -d . SUNWmdr SUNWmdu [SUNWmdx] optional-pkgs
    
    • すべての Solstice DiskSuite のインストールには、 SUNWmdr および SUNWmdu パッケージが必要です。

    • 64 ビット版の Solstice DiskSuite をインストールするには、SUNWmdx パッケージも必要です。

    • オプションのソフトウェアパッケージについては、Solstice DiskSuite のインストールマニュアルを参照してください。


    注 –

    Solstice DiskSuite ソフトウェアパッチをインストールする場合は、Solstice DiskSuite ソフトウェアをインストールした後に 再起動しないでください。


  4. CD-ROM からインストールした場合は、CD-ROM を取り出します。

  5. Solstice DiskSuite パッチをすべてインストールします。

    パッチの入手先とインストール方法については、『Sun Cluster 3.1 8/05 ご使用にあたって (Solaris OS 版)』「パッチと必須ファームウェアのレベル」を参照してください。

  6. クラスタのほかの各ノードで、手順 1から手順 5までを繰り返します。

  7. クラスタの 1 つのノードから、Solstice DiskSuite の広域デバイス名前空間を手作業で生成します。


    # scgdevs
    
次の手順

SunPlex Installer を使用して Solstice DiskSuite ソフトウェアをインストールした場合は、「ルートディスクのミラー化」に進みます。

クラスタが Solaris 10 OS 上で動作している場合は、「状態データベースの複製を作成するには」に進みます。

上記以外の場合は、「メタデバイス名またはボリューム名とディスクセットの数を算出する」に進みます。

注意事項

scgdevs コマンドは、「Could not open /dev/rdsk/c0t6d0s2 to verify device id, Device busy」のようなメッセージを返すことがあります。リストされたデバイスが CD-ROM デバイスの場合は、メッセージを無視しても問題ありません。

Procedureメタデバイス名またはボリューム名とディスクセットの数を算出する


注 –

次の状況では、この手順は実行しないでください。


この手順では、構成に必要とされる Solstice DiskSuite メタデバイス名または Solaris ボリュームマネージャー のボリューム名の数およびディスクセットを計算する方法について説明します。また、/kernel/drv/md.conf ファイルを変更して、これらの数を指定する方法についても説明します。


ヒント –

メタデバイス名またはボリューム名のデフォルトの数は、ディスクセットごとに 128 ですが、多くの構成ではこれ以上の数が必要になります。構成を実装する前にこの数を増やしておくと、後で管理時間の節約になります。

同時に、nmd フィールドおよび md_nsets フィールドには、できる限り小さい値を使用してください。デバイスを作成していなくても nmd および md_nsets によって指定された値に基づいて、可能性のあるすべてのデバイス分をメモリー構造上に確保します。最適なパフォーマンスを得るには、nmdmd_nsets の値を、使用するメタデバイスまたはボリュームの数よりもわずかに高く維持します。


始める前に

必要事項を記入した「ディスクデバイスグループ構成のワークシート」を用意します。

手順
  1. クラスタに必要なディスクセットの合計数を計算して、もう 1 つのディスクセットをプライベートディスク管理に追加します。

    クラスタは最大 32 個のディスクセットを持つことができます。一般的な使用のために 31 個 と、プライベートディスク管理のために 1 個です。ディスクセットのデフォルトの個数は 4 です。この値は、手順 3で、md_nsets フィールドに指定します。

  2. クラスタ内のディスクセットに必要なメタデバイス名またはボリューム名の最大数を計算します。

    各ディスクセットは、最大 8192 個のメタデバイス名またはボリューム名を持つことができます。この値は、手順 3 で、nmd フィールドに指定します。

    1. 各ディスクセットに必要なメタデバイス名またはボリューム名の数を計算します。

      ローカルのメタデバイスまたはボリュームを使用する場合は、広域デバイスファイルシステム /global/.devices/node@ nodeid がマウントされる、ローカルのメタデバイス名またはボリューム名のそれぞれがクラスタ全体で一意であり、クラスタ内にある任意のデバイス ID 名と同じ名前を使用していないことを確認します。


      ヒント –

      DID 名として排他的に使用する番号の範囲と、各ノードのローカルメタデバイス名またはボリューム名として排他的に使用する範囲を選択します。たとえば、DID は、d1 から d100 までの範囲の名前を使用します。ノード 1 上のローカルメタデバイスまたはボリュームは、d100 から d199 までの範囲の名前を使用します。また、ノード 2 上のローカルメタデバイスまたはボリュームは、d200 から d299 までの範囲の名前を使用します。


    2. ディスクセットに必要なメタデバイス名またはボリューム名の最大数を計算します。

      設定するメタデバイスまたはボリュームの個数は、「実際の量」ではなく、メタデバイス名またはボリューム名の「値」に基づいています。たとえば、メタデバイス名またはボリューム名が d950 から d1000 の場合、Solstice DiskSuite または Solaris Volume Manager ソフトウェアは、50 ではなく 1000 個の名前を必要とします。

  3. 各ノードでスーパーユーザーになり、/kernel/drv/md.conf ファイルを編集します。


    注意 – 注意 –

    すべてのクラスタノード (クラスタペアトポロジの場合はクラスタペア) の /kernel/drv/md.conf ファイルの内容は、それぞれのノードがサービスを提供するディスクセット数に関係なく、同一である必要があります。このガイドラインに従わないと、重大な Solstice DiskSuite または Solaris Volume Manager エラーが発生し、データが失われることがあります。


    1. md_nsets フィールドを、手順 1 で計算した値に設定します。

    2. nmd フィールドを、手順 2 で計算した値に設定します。

  4. 各ノードで再構成再起動を行います。


    # touch /reconfigure
    # shutdown -g0 -y -i6
    

    /kernel/drv/md.conf ファイルに対する変更は、再起動後に有効になります。

次の手順

ローカルの状態データベースの複製を作成します。「状態データベースの複製を作成するには」に進みます。

Procedure状態データベースの複製を作成するには


注 –

SunPlex Installer を使用して、Solstice DiskSuite ソフトウェアをインストールした場合は、この作業を行わないでください。代わりに、「ルートディスクのミラー化」に進みます。


クラスタ内の各ノード上で次の手順を実行します。

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

  2. 各クラスタノードの 1 つ以上のローカルデバイス上で状態データベースレプリカを作成します。

    使用するスライスを指定するには、デバイス ID 名 (dN) ではなく、物理名 (cNtXdY sZ) を使用してください。


    # metadb -af slice-1 slice-2 slice-3
    

    ヒント –

    Solstice DiskSuite または Solaris Volume Manager ソフトウェアの実行に必要な状態データを保護するには、各ノードごとに少なくとも 3 つの複製を作成します。また、複数のデバイスに複製を配置することによって、いずれかのデバイスに障害が発生した場合に対する保護も提供できます。


    詳細については、metadb(1M) のマニュアルページと Solstice DiskSuite または Solaris Volume Manager のマニュアルを参照してください。

  3. 複製を検査します。


    # metadb
    

    metadb コマンドは複製の一覧を表示します。


例 3–1 状態データベースの複製の作成

次の例は、3 つの Solstice DiskSuite 状態データベースの複製を示しています。各複製は、異なるデバイス上に作成されています。Solaris ボリュームマネージャー の場合は、複製サイズが大きくなります。


# metadb -af c0t0d0s7 c0t1d0s7 c1t0d0s7
# metadb
フラグ        最初のブロック   ブロック数
  a       u       16          1034         /dev/dsk/c0t0d0s7
  a       u       16          1034         /dev/dsk/c0t1d0s7
  a       u       16          1034         /dev/dsk/c1t0d0s7

次の手順

ルートディスク上のファイルシステムをミラー化するには、「ルートディスクのミラー化」に進みます。

それ以外の場合は、 「クラスタ内でのディスクセットの作成」に進んで、Solstice DiskSuite または Solaris Volume Manager ディスクセットを作成します。

ルートディスクのミラー化

ルートディスクをミラー化することによって、システムディスクの障害のためにクラスタノード自体が停止することを防止します。ルートディスクには、4 種類のファイルシステムを配置できます。ファイルシステムは、各種類ごとに異なる方法でミラー化します。

各のファイルシステムは、以下の手順でミラー化します。


注意 – 注意 –

ローカルディスクをミラー化する場合は、ディスク名を指定する際にパスに /dev/global を使用しないでください。クラスタファイルシステム以外にこのパスを指定すると、システムを起動できなくなります。


Procedureルート (/) ファイルシステムをミラー化する

次の手順を使用し、ルート (/) ファイルシステムをミラー化します。

手順
  1. ノードのスーパーユーザーになります。

  2. ルートスライスを単一スライス (1 方向) 連結にします。

    ルートディスクスライスの物理ディスク名を指定します (cNtXdYsZ)。


    # metainit -f submirror1 1 1 root-disk-slice
    
  3. 2 番目の連結を作成します。


    # metainit submirror2 1 1 submirror-disk-slice
    
  4. 1 つのサブミラーを使用して 1 方向のミラーを作成します。


    # metainit mirror -m submirror1
    

    注 –

    このデバイスが広域デバイスファイルシステム /global/.devices/node@nodeid をマウントするのに使用されるローカルのデバイスである場合、このミラーのメタデバイス名またはボリューム名は、クラスタ全体で一意である必要があります。


  5. metaroot(1M) コマンドを実行します。

    このコマンドは、ルート (/) ファイルシステムがメタデバイスまたはボリュームに配置された状態でシステムを起動できるように、/etc/vfstab および /etc/system ファイルを編集します。


    # metaroot mirror
    
  6. lockfs(1M) コマンドを実行します。

    このコマンドを実行すると、マウントされているすべての UFS ファイルシステム上で、すべてのトランザクションがログからフラッシュされ、マスターファイルシステムに書き込まれます。


    # lockfs -fa
    
  7. リソースグループまたはデバイスグループをノードから移動させます。


    # scswitch -S -h from-node
    
    -S

    すべてのリソースグループとデバイスグループを退避させます。

    -h from-node

    リソースグループまたはデバイスグループを移動させるノード名を指定します。

  8. ノードを再起動します。

    このコマンドは、新しくミラー化されたルート (/) ファイルシステムを再マウントします。


    # shutdown -g0 -y -i6
    
  9. metattach(1M) コマンドを使用して、2 番目のサブミラーをこのミラーに接続します。


    # metattach mirror submirror2
    
  10. ルートディスクのミラー化に使用されるディスクが 1 つ以上のノードに物理的に接続されている (多重ホスト化されている) 場合は、localonly プロパティーを有効にします。

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

    1. 必要に応じて、scdidadm(1M) -L コマンドを使用し、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. ノードリストに複数のノード名が含まれる場合、ルートディスクをミラー化したノードを除くすべてのノードをノードリストから削除します。

      ルートディスクをミラー化したノードだけが raw ディスクデバイスグループのノードリストに残るはずです。


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

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

      nodelist=node

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

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

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


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

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

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

  11. 将来使用する場合に備えて、代替起動パスを記録しておきます。

    主起動デバイスで起動に失敗した場合は、この代替起動デバイスから起動できます。代替起動デバイスの詳細については、『Solstice DiskSuite 4.2.1 ユーザーズガイド』の第 7 章、『Solaris ボリュームマネージャの管理』、または『Solaris ボリュームマネージャの管理』「RAID-1 ボリュームの作成」を参照してください。


    # ls -l /dev/rdsk/root-disk-slice
    
  12. クラスタ内の残りの各ノードで、手順 1 から手順 11 までを繰り返します。

    広域デバイスファイルシステム /global/.devices/node@nodeid がマウントされるミラーのメタデバイス名またはボリューム名はそれぞれ、クラスタ全体で一意になるようにします。


例 3–2 ルート (/) ファイルシステムのミラー化

次の例に、パーティション c0t0d0s0 上のサブミラー d10 とパーティション c2t2d0s0 上のサブミラー d20 で構成されているノード phys-schost-1 上に、ミラー d0 を作成する方法を示します。デバイス c2t2d0 は多重ホストディスクなので、localonly プロパティーが有効に設定されています。


(ミラーを作成します)
# metainit -f d10 1 1 c0t0d0s0
d11: Concat/Stripe is setup
# metainit d20 1 1 c2t2d0s0
d12: Concat/Stripe is setup
# metainit d0 -m d10
d10: Mirror is setup
# metaroot d0
# lockfs -fa
 
(phys-schost-1 からリソースグループとデバイスグループを移動します)
# scswitch -S -h phys-schost-1
 
(ノードを再起動します)
# shutdown -g0 -y -i6
 
(2 番目のサブミラーを接続します)
# metattach d0 d20
d0: Submirror d20 is attached
 
(デバイスグループのノードリストを表示します)
# 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
 
(代替起動パスを記録します)
# ls -l /dev/rdsk/c2t2d0s0
lrwxrwxrwx  1 root     root          57 Apr 25 20:11 /dev/rdsk/c2t2d0s0 
–> ../../devices/node@1/pci@1f,0/pci@1/scsi@3,1/disk@2,0:a,raw

次の手順

広域名前空間 /global/.devices/node@nodeid をミラー化する場合は、「広域名前空間をミラー化する」に進みます。

マウント解除できないファイルシステムをミラー化する場合は、「マウント解除できないルート (/) 以外のファイルシステムをミラー化する」に進みます。

ユーザー定義のファイルシステムをミラー化する場合は、「マウント解除できるファイルシステムをミラー化する」に進みます。

上記以外の場合は、 「クラスタ内でのディスクセットの作成」に進んで、ディスクセットを作成します。

注意事項

このミラー化のいくつかの手順において、「metainit: dg-schost-1: d1s0: not a metadevice」のようなエラーメッセージが出力されることがあります。このようなエラーメッセージは危険ではなく、無視してもかまいません。

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

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

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

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

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


    # metainit -f submirror1 1 1 diskslice
    
  3. 2 番目の連結を作成します。


    # metainit submirror2 1 1 submirror-diskslice
    
  4. 1 つのサブミラーを使用して 1 方向のミラーを作成します。


    # metainit mirror -m submirror1
    

    注 –

    広域デバイスファイルシステム /global/.devices/node@nodeid がマウントされるミラーのメタデバイス名またはボリューム名は、クラスタ全体で一意である必要があります。


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

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


    # metattach mirror submirror2
    
  6. /global/.devices/node@nodeid ファイルシステム用に /etc/vfstab ファイルエントリを編集します。

    device to mountdevice 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. 広域名前空間のミラー化に使用されるディスクが複数のノードに接続されている (多重ホスト化されている) 場合は、localonly プロパティーを有効にします。

    以下の手順を実行して、広域名前空間のミラー化に使用するディスクの 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. ノードリストに複数のノード名が含まれる場合、ディスクをミラー化したノードを除くすべてのノードをノードリストから削除します。

      ディスクをミラー化したノードだけが raw ディスクデバイスグループのノードリストに残るはずです。


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

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

      nodelist=node

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

    4. localonly プロパティーを有効にします。

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


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

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

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


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

次の例に、パーティション 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」のようなエラーメッセージが出力されることがあります。このようなエラーメッセージは危険ではなく、無視してもかまいません。

Procedureマウント解除できないルート (/) 以外のファイルシステムをミラー化する

次の手順を使用し、/usr/optswap などの、通常のシステム使用時にはマウント解除できないルート (/) 以外のファイルシステムをミラー化します。

手順
  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. ミラー化するマウント解除できない残りの各ファイルシステムで、手順 1 から手順 4 までを繰り返します。

  6. 各ノードで 、ミラー化したマウント解除できない各ファイルシステムの /etc/vfstab ファイルエントリを編集します。

    device to mountdevice 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 /filesystem ufs 2 no global
  7. リソースグループまたはデバイスグループをノードから移動させます。


    # scswitch -S -h from-node
    
    -S

    すべてのリソースグループとデバイスグループを退避させます。

    -h from-node

    リソースグループまたはデバイスグループを移動させるノード名を指定します。

  8. ノードを再起動します。


    # shutdown -g0 -y -i6
    
  9. 2 番目のサブミラーを各ミラーに接続します。

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


    # metattach mirror submirror2
    
  10. 手順 9で開始したミラーの同期が完了するまで待機します。

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


    # metastat mirror
    
  11. マウント解除できないファイルシステムをミラー化するのに使用されるディスクが複数のノードに物理的に接続されている (つまり、多重ホストされている) 場合は、localonly プロパティーを有効にします。

    以下の手順を実行して、マウントできないファイルシステムのミラー化に使用するディスクの raw ディスクデバイスグループの localonly プロパティーを有効にします。起動デバイスが複数のノードに接続されている場合に、その起動デバイスが不意にノードを使用できなくなるのを防ぐために、localonly プロパティーは有効にしておいてください。

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

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


      # 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. ノードリストに複数のノード名が含まれる場合、ルートディスクをミラー化したノードを除くすべてのノードをノードリストから削除します。

      ルートディスクをミラー化したノードだけが raw ディスクデバイスグループのノードリストに残るはずです。


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

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

      nodelist=node

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

    4. localonly プロパティーを有効にします。

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


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

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

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


例 3–4 マウント解除できないファイルシステムのミラー化

次の例に、ノード phys-schost-1 上にミラー d1 を作成し、c0t0d0s1 上に存在する /usr をミラー化するための方法を示します。ミラー d1 は、パーティション c0t0d0s1 上のサブミラー d11 とパーティション c2t2d0s1 上のサブミラー d21 で構成されています。/usr/etc/vfstab ファイルエントリは、ミラー名 d1 を使用するように更新されます。デバイス c2t2d0 は多重ホストディスクなので、localonly プロパティーが有効に設定されています。


(ミラーを作成します。)
# metainit -f d11 1 1 c0t0d0s1
d11: Concat/Stripe is setup
# metainit d21 1 1 c2t2d0s1
d21: Concat/Stripe is setup
# metainit d1 -m d11
d1: Mirror is setup
 
(/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/d1 /dev/md/rdsk/d1 /usr ufs  2       no global
 
(phys-schost-1 からリソースグループとデバイスグループを移動します。)
# scswitch -S -h phys-schost-1
 
(ノードを再起動します。)
# shutdown -g0 -y -i6
 
(2 番目のサブミラーを接続します。)
# metattach d1 d21
d1: Submirror d21 is attached
 
(同期の状態を表示します。)
# metastat d1
d1: Mirror
      Submirror 0: d11
         State: Okay
      Submirror 1: d21
         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」のようなエラーメッセージが出力されることがあります。このようなエラーメッセージは危険ではなく、無視してもかまいません。

Procedureマウント解除できるファイルシステムをミラー化する

次の手順を使用し、マウント解除できるユーザー定義ファイルシステムをミラー化します。この手順では、ノードを再起動する必要はありません。

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

  2. ミラー化するファイルシステムをマウント解除します。

    そのファイルシステム上で実行中のプロセスがないことを確認します。


    # umount /mount-point
    

    詳細については、umount(1M) のマニュアルページと『Solaris のシステム管理 (デバイスとファイルシステム)』の第 18 章「ファイルシステムのマウントとマウント解除 (手順)」を参照してください。

  3. マウント解除できるユーザー定義ファイルシステムが存在するスライスを、単一スライス(1 方向) 連結にします。

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


    # metainit -f submirror1 1 1 diskslice
    
  4. 2 番目の連結を作成します。


    # metainit submirror2 1 1 submirror-diskslice
    
  5. 1 つのサブミラーを使用して 1 方向のミラーを作成します。


    # metainit mirror -m submirror1
    

    注 –

    このミラーのメタデバイス名またはボリューム名は、クラスタ全体で一意である必要はありません。


  6. ミラー化するマウント可能な各ファイルシステムで、手順 1 から手順 5 までを繰り返します。

  7. 各ノードで 、ミラー化したマウント解除できる各ファイルシステムの /etc/vfstab ファイルエントリを編集します。

    device to mountdevice 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 /filesystem ufs 2 no global
  8. 2 番目のサブミラーをこのミラーに接続します。

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


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

    metastat(1M) コマンドを使用し、ミラー化の状態を参照します。


    # metastat mirror
    
  10. ユーザー定義のファイルシステムのミラー化に使用されるディスクが複数のノードに物理的に接続されている (多重ホスト化されている) 場合は、localonly プロパティーを有効にします。

    以下の手順を実行して、ユーザー定義のファイルシステムのミラー化に使用するディスクの raw-disk デバイスグループの localonly プロパティーを有効にします。起動デバイスが複数のノードに接続されている場合に、その起動デバイスが不意にノードを使用できなくなるのを防ぐために、localonly プロパティーは有効にしておいてください。

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

      次の例では、raw ディスクデバイスグループ名 dsk/d4 は、出力の第 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. ノードリストに複数のノード名が含まれる場合、ルートディスクをミラー化したノードを除くすべてのノードをノードリストから削除します。

      ルートディスクをミラー化したノードだけが raw ディスクデバイスグループのノードリストに残るはずです。


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

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

      nodelist=node

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

    4. localonly プロパティーを有効にします。

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


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

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

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

  11. ミラー化したファイルシステムをマウントします。


    # mount /mount-point
    

    詳細については、mount(1M) のマニュアルページと『Solaris のシステム管理 (デバイスとファイルシステム)』の第 18 章「ファイルシステムのマウントとマウント解除 (手順)」を参照してください。


例 3–5 マウント解除できるファイルシステムのミラー化

次の例に、ミラー d4 を作成し、c0t0d0s4 上に存在する /export をミラー化する方法を示します。ミラー d4 は、パーティション c0t0d0s4 上のサブミラー d14 とパーティション c2t2d0s4 上のサブミラー d24 で構成されています。/export/etc/vfstab ファイルエントリは、ミラー名 d4 を使用するように更新されます。デバイス c2t2d0 は多重ホストディスクなので、localonly プロパティーが有効に設定されています。


(ファイルシステムをマウント解除します)
# umount /export
 
(ミラーを作成します)
# metainit -f d14 1 1 c0t0d0s4
d14: Concat/Stripe is setup
# metainit d24 1 1 c2t2d0s4
d24: Concat/Stripe is setup
# metainit d4 -m d14
d4: Mirror is setup
 
(/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/d4 /dev/md/rdsk/d4 /export ufs 2 no    global
 
(2 番目のサブミラーを接続します)
# metattach d4 d24
d4: Submirror d24 is attached
 
(同期の状態を表示します)
# metastat d4
d4: Mirror
       Submirror 0: d14
          State: Okay
       Submirror 1: d24
          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 
 
(ファイルシステムをマウントします)
# mount /export

次の手順

ディスクセットを作成する必要がある場合は、次のうちの 1 つに進みます。

必要十分なディスクセットを持っている場合は、次のうちの 1 つに進みます。

注意事項

このミラー化のいくつかの手順において、「metainit: dg-schost-1: d1s0: not a metadevice」のようなエラーメッセージが出力されることがあります。このようなエラーメッセージは危険ではなく、無視してもかまいません。