この章では、「ボリューム管理の計画」の計画情報に基づいて、VERITAS Volume Manager (VxVM) 用のローカルディスクと多重ホストディスクをインストールして構成する手順を示します。詳細については、VxVM のマニュアルを参照してください。
この章の内容は、次のとおりです。
この節では、VxVM ソフトウェアを Sun Cluster 構成上でインストール、構成するための情報と手順を紹介します。
次の表に、 Sun Cluster 構成用の VxVM ソフトウェアのインストールと構成において行う作業を示します。
表 4–1 SPARC: Task Map: VxVM ソフトウェアのインストールと構成
作業 |
参照先 |
---|---|
1. VxVM 構成のレイアウトを計画 | |
2. 各ノード上のルートディスクグループをどのように作成するかを決定VxVM 4.0 以降、ルートディスクグループの作成は任意です。 | |
3. VxVM ソフトウェアをインストール |
「SPARC: VERITAS Volume Manager ソフトウェアをインストールする」 VxVM インストールマニュアル |
4. 必要に応じて、ルートディスクグループを作成。ルートディスクをカプセル化しても、ルートディスクグループをローカルのルート以外のディスクに作成してもかまいません。 | |
5. (省略可能) カプセル化したルートディスクをミラー化 | |
6. ディスクグループを作成 |
VxVM 4.0 以降、ルートディスクグループの作成は任意です。ルートディスクグループを作成する予定がない場合は、「SPARC: VERITAS Volume Manager ソフトウェアをインストールする」に進みます。
VxVM 3.5 では、 VxVM をインストールしたあとに、各クラスタノードでルートディスクグループを作成する必要があります。このルートディスクグループは、VxVM が構成情報を格納するときに使用され、次の制限があります。
ノードのルートディスクグループへのアクセスは、そのノードだけに限定する必要があります。
遠隔ノードは、別のノードのルートディスクグループに格納されたデータにはアクセスできません。
scconf(1M) コマンドを使用してルートディスクグループをディスクデバイスグループとして登録しないでください。
可能であれば、非共有ディスク上の各ノードごとにルートディスクグループを構成します。
Sun Cluster ソフトウェアでは、次のルートディスクグループの構成方法がサポートされています。
ノードのルートディスクのカプセル化 – この方法では、ルートディスクをミラー化することによって、ルートディスクが破壊または損傷した場合に、代替の起動方法を提供できます。ルートディスクをカプセル化するには、2 つの空きディスクスライスのほかに、可能であれば、ディスクの始点または終端に空きシリンダが必要です。
ローカルのルート以外のディスクの使用 – この方法は、ルートディスクをカプセル化するための代替方法を提供します。ノードのルートディスクがカプセル化されていると、カプセル化されていない場合と比べ、後の作業 (Solaris OS のアップグレードや障害復旧作業など) が複雑になる可能性があります。このような複雑さを避けるために、ローカルのルート以外のディスクを初期化またはカプセル化してルートディスクグループとして使用できます。
ローカルのルート以外のディスクで作成されたルートディスクグループはそのノード専用であり、汎用的にアクセスすることも高可用ディスクグループとして使用することもできません。ルートディスクと同様に、ルート以外のディスクをカプセル化する場合も、 2 つの空きディスクスライスのほかに、ディスクの始点または終端に空きシリンダが必要です。
詳細については、 VxVM のインストールマニュアルを参照してください。
この手順では、VERITAS Volume Manager (VxVM) ソフトウェアをインストールするノードごとに実行して、VxVM をインストールします。VxVM は、クラスタのすべてのノードにインストールしても、VxVM が管理する記憶装置が物理的に接続されているノードだけにインストールしてもかまいません。
次の作業を実行します。
クラスタ内にあるすべてのノードがクラスタモードで動作していることを確認します。
インストールに必要な VERITAS Volume Manager (VxVM) ライセンスキーを取得します。
VxVM インストールマニュアルを用意します。
VxVM をインストールするクラスタノードでスーパーユーザーになります。
ノードの CD-ROM ドライブに VxVM CD-ROM を挿入します。
VxVM 4.1 では、VxVM インストールマニュアルの手順に従って、VxVM のソフトウェアとライセンスをインストールして構成します。
VxVM 4.1 では、scvxinstall コマンドは VxVM のパッケージとライセンスのインストールを行わずに、必要なインストール後の作業を実行します。
scvxinstall ユーティリティーを非対話式モードで実行します。
VxVM 4.0 以前では、次のコマンドを使用します。
# scvxinstall -i -L {license | none} |
VxVM をインストールしますが、ルートディスクのカプセル化は行いません。
特定のライセンスをインストールします。none 引数は、ライセンスキーが追加されないことを指定します。
VxVM 4.1 では、次のコマンドを使用します。
# scvxinstall -i |
VxVM 4.1 では、VxVM がインストールされているが、ルートディスクがカプセル化されていないことを確認します。
scvxinstall ユーティリティーはまた、クラスタ規模の vxio ドライブメジャー番号を選択して構成します。詳細については、scvxinstall(1M) のマニュアルページを参照してください。
VxVM クラスタ機能を有効にする予定の場合、クラスタ機能ライセンスキーを指定していない場合は、これを指定します。
ライセンスの追加方法については、VxVM のマニュアルを参照してください。
(省略可能) VxVM GUI をインストールします。
VxVM GUI のインストールの詳細については、VxVM のマニュアルを参照してください。
CD-ROM を取り出します。
すべての VxVM パッチをインストールします。
パッチの入手先とインストール方法については、『Sun Cluster 3.1 8/05 ご使用にあたって (Solaris OS 版)』の「パッチと必須ファームウェアのレベル」を参照してください。
(省略可能) VxVM 4.0 以前では、VxVM のマニュアルページをクラスタノードに置かない場合、マニュアルページパッケージを削除します。
# pkgrm VRTSvmman |
手順 1 から 手順 9 までを繰り返して、VxVM を追加のノードにインストールします。
VxVM クラスタ機能を有効にする予定の場合は、クラスタ内にあるすべてのノードに VxVM をインストールする必要があります。
VxVM で 1 つ以上のノードをインストールしない場合は、VxVM 以外の各ノード上で/etc/name_to_major ファイルを変更します。
VxVM をインストールしたノード上で、vxio メジャー番号の設定を調べます。
# grep vxio /etc/name_to_major |
VxVM をインストールしないノードでスーパーユーザーになります。
/etc/name_to_major ファイルを編集して、vxio メジャー番号を NNN (手順 a で調べた番号) に設定するエントリを追加します。
# vi /etc/name_to_major vxio NNN |
vxio エントリを初期化します。
# drvconfig -b -i vxio -m NNN |
VxVM をインストールしないほかのすべてのノードで、手順 a から手順 d までを繰り返します。
この作業が終了したとき、クラスタ内にある各ノードで /etc/name_to_major ファイルの vxio エントリが同じである必要があります。
ルートディスクグループを作成する場合は、「SPARC: ルートディスクをカプセル化する」または 「SPARC: ルート以外のディスクにルートディスクグループを作成する」に進みます。
それ以外の場合は、手順 13 に進みます。
VxVM 3.5 では、ルートディスクグループを作成する必要があります。VxVM 4.0 以降では、ルートディスクグループの作成は任意です。
VxVM をインストールした各ノードを再起動します。
# shutdown -g0 -y -i6 |
ルートディスクグループを作成する場合は、「SPARC: ルートディスクをカプセル化する」または 「SPARC: ルート以外のディスクにルートディスクグループを作成する」に進みます。
それ以外の場合は、ディスクグループを作成します。「SPARC: クラスタへのディスクグループの作成」に進みます。
この手順は、ルートディスクをカプセル化することによって、ルートディスクグループを作成するときに実行します。VxVM 3.5 では、ルートディスクは必須です。VxVM 4.0 以降では、ルートディスクグループは任意です。詳細については、 VxVM のマニュアルを参照してください。
ルートディスクグループをルート以外のディスクに作成する場合は、代わりに、「SPARC: ルート以外のディスクにルートディスクグループを作成する」の手順を実行します。
「SPARC: VERITAS Volume Manager ソフトウェアをインストールする」で説明されているとおりに、VxVM をインストールしていることを確認します。
VxVM をインストールしたノードでスーパーユーザーになります。
ルートディスクをカプセル化します。
# scvxinstall -e |
ルートディスクをカプセル化します。
詳細については、scvxinstall(1M) のマニュアルページを参照してください。
この作業を、VxVM をインストールしたほかの各ノードで繰り返します。
カプセル化したルートディスクをミラー化する場合は、 「SPARC: カプセル化されたルートディスクをミラー化する」に進みます。
それ以外の場合は、「SPARC: クラスタへのディスクグループの作成」に進みます。
次の手順で、ローカルのルート以外のディスクをカプセル化または初期化することによってルートディスクグループを作成します。VxVM 4.0 以降、ルートディスクグループの作成は任意です。
ルートディスクグループをルートディスクに作成する場合は、代わりに、「SPARC: ルートディスクをカプセル化する」の手順を実行します。
ディスクをカプセル化する場合は、各ディスクに 0 シリンダのスライスが少なくとも 2 つあることを確認します。必要に応じて、format(1M) コマンドを使用して、各 VxVM スライスに 0 シリンダを割り当てます。
ノードのスーパーユーザーになります。
vxinstall ユーティリティーを起動します。
# vxinstall |
プロンプトが表示されたら、次のようにします。
VxVM クラスタ機能を有効にする場合は、クラスタ機能のライセンスキーを指定します。
Custom Installation を選択します。
起動ディスクはカプセル化しません。
ルートディスクグループに追加する任意のディスクを選択します。
自動再起動は行いません。
作成したルートディスクグループに、複数のノードに接続する 1 つ以上のディスクがある場合は、localonly プロパティーを有効にします。
以下のコマンドを使用して、ルートディスクグループ内の共有ディスクごとに localonly プロパティーを有効にします。
# scconf -c -D name=dsk/dN,localonly=true |
localonly プロパティーが有効になった時点で、raw ディスクデバイスグループはそのノードリスト内のノードだけに使用されるようになります。これにより、ルートディスクグループが使用しているディスクが複数のノードに接続されている場合に、不意にノードがそのディスクから使用できなくなる状態を防止できます。
localonly プロパティーの詳細については、scconf_dg_rawdisk(1M) のマニュアルページを参照してください。
# scswitch -S -h from-node |
すべてのリソースグループとデバイスグループを退避させます。
リソースグループまたはデバイスグループを移動させるノード名を指定します。
ノードを再起動します。
# shutdown -g0 -y -i6 |
vxdiskadm コマンドを使用してルートディスクグループに多重ディスクを追加します。
多重ディスクがあると、ルートディスクグループはディスク障害に対処しやすくなります。手順については、VxVM のマニュアルを参照してください。
ディスクグループを作成します。「SPARC: クラスタへのディスクグループの作成」に進みます。
VxVM をインストールしてルートディスクをカプセル化した後で、カプセル化されたルートディスクをミラー化するノードごとにこの作業を行なってください。
「SPARC: ルートディスクをカプセル化する」で説明されているとおりに、ルートディスクをカプセル化していることを確認します。
カプセル化したルートディスクをミラー化します。
VxVM のマニュアルの手順に従います。可用性を最大限に高め、管理を容易にするには、ローカルディスクをミラーとして使用してください。詳細なガイドラインについては、「ルートディスクのミラー化」を参照してください。
ルートディスクのミラー化に定足数デバイスを使用することは避けてください。ルートディスクのミラー化に定足数デバイスを使用すると、一定の条件下でルートディスクミラーからノードを起動できない可能性があります。
DID マッピングを表示します。
# scdidadm -L |
DID マッピングで、ルートディスクのミラー化に使用されているディスクを確認します。
ルートディスクミラーのデバイス ID 名から raw ディスクデバイスグループ名を特定します。
raw ディスクデバイスグループの名前は、dsk/dN という規則に従っています (N は番号)。次の scdidadm の出力例で、強調表示されているのが raw ディスクデバイスグループ名です。
N node:/dev/rdsk/cNtXdY /dev/did/rdsk/dN |
raw ディスクデバイスグループのノードリストを表示します。
# scconf -pvv | grep dsk/dN Device group name: dsk/dN … (dsk/dN) 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=dsk/dN,localonly=true |
localonly プロパティーの詳細については、scconf_dg_rawdisk(1M) のマニュアルページを参照してください。
カプセル化されたルートディスクをミラー化するクラスタノードごとにこの作業を繰り返します。
次の例は、ノード phys-schost-1 のルートディスクに作成されたミラーを示しています。このミラーは、ディスク c1t1d0 (raw ディスクデバイスグループ名は dsk/d2 ) で作成されています。ディスク c1t1d0 は多重ホストディスクであるため、ノード phys-schost-3 がディスクのノードリストから削除され、localonly プロパティーが有効に設定されています。
(DID マッピングを表示します) # scdidadm -L … 2 phys-schost-1:/dev/rdsk/c1t1d0 /dev/did/rdsk/d2 2 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 … (ノードリストから phys-schost-3 を削除します) # scconf -r -D name=dsk/d2,nodelist=phys-schost-3 (localonly プロパティーを有効にします) # scconf -c -D name=dsk/d2,localonly=true |
ディスクグループを作成します。「SPARC: クラスタへのディスクグループの作成」に進みます。
この節では、VxVM ディスクグループをクラスタに作成する方法について説明します。
次の表に、VxVM ディスクグループを Sun Cluster 構成用に作成するときに実行する作業を示します。
表 4–2 SPARC: Task Map: VxVM ディスクグループの作成
作業 |
参照先 |
---|---|
1. ディスクグループとボリュームを作成 | |
2. 必要であれば、新しいマイナー番号を割り当ててディスクデバイスグループ間のマイナー番号の衝突を解決 | |
3. ディスクグループとボリュームを確認 |
次の手順で、VxVM ディスクグループとボリュームを作成します。
ディスクグループをディスクデバイスグループとしてクラスタに登録した後には、VxVM コマンドを使用してVxVM ディスクグループをインポートまたはデポートしないでください。ディスクグループのインポートやデポートは、すべて Sun Cluster ソフトウェアで処理できます。Sun Cluster ディスクデバイスグループを管理する手順については、『Sun Cluster のシステム管理 (Solaris OS 版)』の「ディスクデバイスグループの管理」を参照してください。
この手順は、追加するディスクグループを構成するディスクに物理的に接続されているノードから実行します。
次の作業を実行します。
ストレージディスクドライブのマッピングを行います。記憶装置の初期設置を実行する場合は、『Sun Cluster Hardware Administration Collection』の該当するマニュアルを参照してください。
次の構成計画ワークシートに必要事項を記入します。
計画のガイドラインについては、「ボリューム管理の計画」を参照してください。
ルートディスクグループを作成していない場合は、「SPARC: VERITAS Volume Manager ソフトウェアをインストールする」の 手順 13 で説明されているとおりに、VxVM をインストールした各ノードを再起動していることを確認します。
ディスクグループを所有するノードでスーパーユーザーになります。
VxVM ディスクグループとボリュームを作成します。
Oracle Real Application Clusters をインストールしている場合は、『VERITAS Volume Manager Administrator's Reference Guide』で説明されているとおりに、VxVM のクラスタ機能を使用して、共有 VxVM ディスクグループを作成します。このソフトウェアをインストールしない場合は、VxVM のマニュアルで説明されている標準の手順を使用して VxVM ディスクグループを作成してください。
ダーティーリージョンログ (DRL) を使用すると、ノードに障害が発生した場合のボリューム回復時間を短縮できます。ただし、DRL を使用すると I/O スループットが低下することがあります。
VxVM クラスタ機能が有効に設定されていない場合は、ディスクグループを Sun Cluster ディスクデバイスグループとして登録してください。
VxVM クラスタ機能が有効に設定されている場合は、共有ディスクグループを Sun Cluster ディスクデバイスグループとして登録しないでください。代わりに、「SPARC: ディスクグループの構成を確認する」に進みます。
「SPARC: ディスクグループの構成を確認する」に進みます。
デバイスグループの登録の失敗 – ディスクデバイスグループを登録するときに、scconf: Failed to add device group - in use というエラーメッセージが表示された場合は、そのディスクデバイスグループに新しいマイナー番号を割り当てます。「SPARC: ディスクデバイスグループに新しいマイナー番号を割り当てる」の手順を使用します。この手順を使用すると、既存のディスクデバイスグループが使用しているマイナー番号とは衝突しない、新しいマイナー番号を割り当てることができます。
スタックオーバーフロー –ディスクデバイスグループをオンラインにするときに、スタックオーバーフローが発生した場合、スレッドスタックサイズのデフォルト値が十分でない可能性があります。各ノードで、/etc/system ファイルに set cl_comm:rm_thread_stacksize=0xsize というエントリを追加します (size はデフォルト値 8000 よりも大きな数です)。
構成の変更 – VxVM ディスクグループまたはボリュームに関する構成情報を変更した場合は、scsetup ユーティリティーを使用して、構成の変更を登録する必要があります。登録が必要な構成変更とは、ボリュームの追加または削除や、既存ボリュームのグループ、所有者、またはアクセス権の変更です。構成の変更をディスクデバイスグループに登録する手順については、『Sun Cluster のシステム管理 (Solaris OS 版)』の「ディスクデバイスグループの管理」を参照してください。
マイナー番号が他のディスクグループと衝突してディスクデバイスグループの登録が失敗する場合、新しいディスクグループに未使用の新しいマイナー番号を割り当てる必要があります。この作業を実行して、ディスクグループにマイナー番号を割り当てなおしてください。
各クラスタのノードのスーパーユーザーになります。
使用中のマイナー番号を確認します。
# ls -l /global/.devices/node@1/dev/vx/dsk/* |
1000 の倍数で使用されていない値を、ディスクグループのベースとなるマイナー番号として選択します。
ディスクグループにベースとなるマイナー番号を割り当てます。
# vxdg reminor diskgroup base-minor-number |
次の例では、マイナー番号 16000 から 16002 と 4000 から 4001 を使用しています。この vxdg reminor コマンドは、新しいディスクデバイスグループに、5000 をベースとするマイナー番号を割り当てます。
# ls -l /global/.devices/node@1/dev/vx/dsk/* /global/.devices/node@1/dev/vx/dsk/dg1 brw------- 1 root root 56,16000 Oct 7 11:32 dg1v1 brw------- 1 root root 56,16001 Oct 7 11:32 dg1v2 brw------- 1 root root 56,16002 Oct 7 11:32 dg1v3 /global/.devices/node@1/dev/vx/dsk/dg2 brw------- 1 root root 56,4000 Oct 7 11:32 dg2v1 brw------- 1 root root 56,4001 Oct 7 11:32 dg2v2 # vxdg reminor dg3 5000 |
このディスクグループを Sun Cluster ディスクデバイスグループとして登録します。「SPARC: ディスクグループの作成と登録を行う」に進みます。
この作業はクラスタの各ノード上で行なってください。
ルートディスクグループにローカルディスクだけが含まれていること、およびディスクグループが現在の主ノードだけにインポートされていることを確認します。
# vxdisk list |
# vxprint |
すべてのディスクデバイスグループが Sun Cluster ディスクデバイスグループとして登録されており、オンラインであることを確認します。
# scstat -D |
「クラスタの構成」に進みます。
この節では、Sun Cluster 構成のルートディスクのカプセル化を解除する方法について説明します。
この作業は、ルートディスクのカプセル化を解除する場合に行なってください。
次の作業を実行します。
ルートディスク上に、Solaris ルートファイルシステムだけが存在することを確認してください。Solaris ルートファイルシステムとは、ルート (/)、スワップ、広域デバイス名前空間、/usr、/var、/opt、/home です。
Solaris ルートファイルシステム以外のファイルシステムがルートディスクに存在する場合は、それらのファイルシステムをバックアップしたあとで、ルートディスクから削除します。
カプセル化を解除するノード上でスーパーユーザーになります。
すべてのリソースグループとデバイスグループをノードから移動させます。
# scswitch -S -h from-node |
すべてのリソースグループとデバイスグループを退避させます。
リソースグループまたはデバイスグループを移動させるノード名を指定します。
# clinfo -n |
このノードの広域デバイスファイルシステムのマウントを解除します (N は、手順 3 で戻されたノード ID 番号です)。
# umount /global/.devices/node@N |
/etc/vfstab ファイルを表示し、どの VxVM ボリュームが広域デバイスファイルシステムに対応しているかを確認します。
# vi /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # #NOTE: volume rootdiskxNvol (/global/.devices/node@N) encapsulated #partition cNtXdYsZ |
ルートディスクグループから、広域デバイスファイルシステムに対応する VxVM ボリュームを削除します。
# vxedit -g rootdiskgroup -rf rm rootdiskxNvol |
広域デバイスファイルシステムには、広域デバイス用のデバイスエントリ以外のデータを格納しないでください。VxVM ボリュームを削除すると、広域デバイスファイルシステム内のデータはすべて削除されます。ルートディスクのカプセル化を解除した後は、広域デバイスエントリに関連するデータだけが復元されます。
ルートディスクのカプセル化を解除します。
コマンドからのシャットダウン要求を受け付けないでください。
# /etc/vx/bin/vxunroot |
詳細については、VxVM のマニュアルを参照してください。
format(1M) コマンドを使用して、512M バイトのパーティションをルートディスクに追加して、広域デバイスファイルシステム用に使用できるようにします。
/etc/vfstab ファイルに指定されているように、ルートディスクのカプセル化の解除が行われる前に広域デバイスファイルシステムに割り当てられたものと同じスライスを使用してください。
手順 8 で作成したパーティションにファイルシステムを設定します。
# newfs /dev/rdsk/cNtXdYsZ |
ルートディスクの DID 名を確認します。
# scdidadm -l cNtXdY 1 phys-schost-1:/dev/rdsk/cNtXdY /dev/did/rdsk/dN |
/etc/vfstab ファイルで、広域デバイスファイルシステムのエントリにあるパス名を、手順 10 で特定した DID パスに置き換えます。
元のエントリの例を次に示します。
# vi /etc/vfstab /dev/vx/dsk/rootdiskxNvol /dev/vx/rdsk/rootdiskxNvol /global/.devices/node@N ufs 2 no global |
DID パスを使用する変更後のエントリの例を次に示します。
/dev/did/dsk/dNsX /dev/did/rdsk/dNsX /global/.devices/node@N ufs 2 no global |
広域デバイスファイルシステムをマウントします。
# mount /global/.devices/node@N |
クラスタの任意のノードから、任意の raw ディスクと Solstice DiskSuite または Solaris Volume Manager デバイス用のデバイスノードを使用して広域デバイスファイルシステムを生成し直します。
# scgdevs |
次の再起動時に VxVM デバイスが作成し直されます。
ノードを再起動します。
# reboot |
クラスタの各ノードでこの手順を繰り返し、それらのノードのルートディスクのカプセル化を解除します。