マルチ・パーティション環境で DB2 Recovery Kit が正しく動作するには、以下の要件を 満たしている必要があります。
- NFS 階層のために追加のクラスタを使用できない場合、LifeKeeper for Linux DB2 Recovery Kit によって、NFS が保護しているファイル・システム上のアクティブ inode の数が制限されることを忘れないでください。したがって、この状態を避けるため、トップレベルのディレクトリーを保護し、完全修飾ディレクトリー名を使用して インスタンスのホーム・ディレクトリーをエクスポートすることをお勧めします。トップレベル・ディレクトリーは、ユーザが直接そこにディレクトリーを変更(すなわち cd <トップレベル・ディレクトリー> の実行)できないように、保護されます。
- 本書の「ソフトウェア要件」セクションで説明したように、IBM の最新 Fix Pack (EEE デプロイメントの場合)をインストールしていることを確認します。
- db2nodes.cfg ファイルのホスト名の値を、 hostname コマンドが返す値と同じにします。
例:
db2nodes.cfg ファイル:
0 server1.sc.steeleye.com 0
さらに、サーバーの/etc/hosts ファイルのホスト名の値も db2nodes.cfg ファイルのホスト名の値と同じにする必要があります。
また、サーバーの/etc/hosts ファイルに、そのファイルに含まれる各サーバー・エントリ のローカル・ホスト名と完全修飾ホスト名が両方記述されていることを確認する必要もあります。
例:
/etc/hosts ファイル
127.0.0.1 localhost localhost.localdomain
9.21.55.53 server1.sc.steeleye.com server1
- db2setup スクリプトを実行するときに、この時点で、DB2 Warehouse Control Database(DWCNTRL)または DB2 Sample Database の作成を 選択しないでください。 DB2 リ ソース階層を正しく作成するには、これらのデータベースを共有ファイル・システム上に作成する必要があります。db2setup スクリプト実行中に、どちらかのデータベースの作成を選択すると、データベースが共有ファイル・システムではなくホーム・ディレクトリーに作成されます。これらのデータベースを作成する場合は、 db2setup スクリプトでは作成せず、別の方法で共有ファイル・システムを指定して作成する必要があります。
Version 8.1 以降では、セットアップ・スクリプトの実行中に DB2 ツール・カタログが作成されないようにします。必要に応じて、このデータベースは共有ファイル・ システム上に置き、セットアップの完了後かつ階層の作成前に作成しなければなりません。
- アクティブ/アクティブ環境、つまりマルチ・パーティション・サーバー環境では、 設定内の各サーバーは、フェイルオーバー・シナリオですべてのデータベース・インスタンスを実行できる必要があります。特定のシステム・リソース下で可能な DB2 インスタンスまたはパーティション・サーバーの最大数の決定方法については、『IBM Getting Started Guide』を参照してください。
- 共有ファイル・システムを選択または作成して、そのファイル・システムをエクスポートします(つまり、/export/db2home)。このファイル・システムは DB2 インスタンスのホームとして使用されます。(注記:本要件のひとつの例外として、常に同一のサーバー上で動作しているパーティションがあります。そのケースにおいては、NFS のエクスポートは不要で、インスタンスのホームディレクトリーは、共有ストレージ上に配置することができます。)
- LifeKeeper NFS リソース階層を作成して、エクスポートしたファイル・システムを保護します。このファイル・システムは、NFS 階層に従属リソースとして含める必要があります。
- エクスポートされるサーバーも含めて、クラスタの各サーバーに共有ファイル・システムを NFS マウントします。マウント・オプションについては『DB2 Quickstart Guide』 を参照してください。DB2 インスタンスの作成時には、インスタンスのホーム・ディレクトリーは NFS でマウントしたファイル・システム上に配置する必要があります。 ファイル・システムのマウント時には、NFS 階層作成時に使用し、 LifeKeeper によって保護されている切り替え可能な IP アドレスを使用します。さらに、ホーム・ディレクトリーのマウント・ポイントを LifeKeeper クラスタの全サーバー の/etc/fstab ファイルで指定しておく必要があります。 構成内の各サーバーは、同一のマウント・ポイント(すなわち/db2/home)にファイル・システムをマウントする必要があります。
注記: DB2 リソース階層を作成する前に、NFS 階層を作成してテストすることをお勧めします。NFS 階層の作成とテストの詳細な手順については、LifeKeeper for Linux NFS Server Recovery Kit 管理ガイド を参照してください。
- 構成内の全サーバーについて、次の DB2 環境変数をインスタンスのパーティション総数と同じ値に設定します。 この環境変数を設定するには、インスタンス・オーナーとしてログオンして、db2set コマンドを発行します。この環境変数を調整することで、 考えられるすべてのフェイルオーバー・シナリオに対応できます。
db2set DB2_NUM_FAILOVER_NODES=<インスタンスのパーティション数>
- 以下の DB2 ユーティリティーを使用して、既存の DB2 インスタンスと DB2 管理サーバーをアップデートします。
db2iupdt および dasiupdt
- インスタンスのデータを管理するデータベース・パーティション・サーバーを持つクラスタの各サーバーに LifeKeeper DB2 階層を作成する必要があります。 データベースとテーブルスペースは、共有ファイル・システム上に存在する必要があります。データベース・パーティション・サーバーそれぞれと、 NFS のエクスポートされたホーム・ディレクトリーには別個の LUN が必要です。従属リソースには、実際のデータベ ースとテーブルスペースが配置されるファイル・システムが 格納されます。
- DB2 階層作成後に、保護されていない LifeKeeper ファイル・システム上にデータベ ースを作成する場合は、 そのファイル・システム用のリソース階層を作成して、 DB2 リソース階層の従属リソースにする必要があります。 この階層は、db2node.cfg ファイルによってサーバー上で実行されることが示されているすべてのパーティション・サーバーを保護します。
- フェイルオーバーが正しく実行されるようにするには、各データベース・パーティション・サーバーのファイル・システムに、 必ず固有の番号がつけられている必要があります。
例:
データベース・パーティション・サーバー node0 のマウント・ポイントは次のようにします。
/<FSROOT>/<db2 インスタンス名>/NODE0000
データベース・パーティション・サーバー node1 の マウント・ポイントは次のようにします。
/<FSROOT>/<db2 インスタンス名>/NODE0001
注記: この例では、2 台のパーティション・サーバーがあり、各サーバーのファイル・システムは別個の LUN にマウントされています。
- あるマシンで DB2 階層を正しく作成するには、そのマシンのすべてのデータベース・パーティション・サーバーが動作している必要があります。
- プライマリ・システムのデータベース・パーティション・サーバーが動作不能になると、サービスは定義済みのバックアップ・システムにフェイルオーバーされます 。バックアップ・システムのデータベース・サービスは、従属リソースがフェイルオーバーされ、データベース・パーティション・サーバーがサービスを開始すると直ちに利用可能に なります。以前に接続されていた DB2 クライアントは接続を解除されるため、バックアップ・サーバーに再接続する必要があります。 コミットされていない SQL 文はすべてロールバックされるため、再入力する必要があります。
このトピックへフィードバック