Advanced Operations Guide (v11)

Windows Server 2008 用 Microsoft フェイルオーバー クラスタリング

このセクションは、フェイルオーバー クラスタリングのインストールと設定についてはよく理解しており、Pervasive PSQL サービスを追加するための情報のみが必要であることを前提に説明します。

フェイルオーバー クラスタリング技術に詳しくない場合は、フェイルオーバー クラスタリングのセットアップ方法について Microsoft のドキュメントを参照してください。

作業手順

このセクションは、どのようにしてフェイルオーバー クラスタリングに Pervasive PSQL サービスを追加していくと良いか、という形式で構成されています。

フェイルオーバー クラスタリングが正常に機能しているか確認する

Pervasive PSQL サービスをに追加する前に、フェイルオーバー クラスタリングが正常に機能していることが必須です。フェイルオーバー クラスタリングのセットアップ方法については、Microsoft のドキュメントを参照してください。


メモ

フェイルオーバー クラスタリングが適切に設定されていないと、Pervasive PSQL サービスを正しく動作させることはできません。


クラスター サービスの必須コンポーネントを追加する

Pervasive PSQL サービスを追加する前に、まず、いくつかの必須コンポーネントが確立されている必要があります。

  1. オペレーティング システムからフェイルオーバー クラスター管理コンソールを起動します。
  2. [サービスとアプリケーション]を右クリックし、[その他の操作]、[空のサービスまたはアプリケーションの作成]の順にクリックします。
    "新しいサービスまたはアプリケーション" を何か意味のある名前に変更します。説明のため、このセクションでは "Pervasive PSQL クラスター" という名前に変更するものとします。
  3. "Pervasive PSQL クラスター" を右クリックしてから、[記憶域の追加]をクリックします。
    Pervasive PSQL データを置きたい物理ディスクを選択します。ディスクの状態はそれがオンラインであることを示します。
  4. "Pervasive PSQL クラスター" を右クリックしてから、[リソースの追加]および[クライアント アクセス ポイント]をクリックします。
    クライアント アクセス ポイントのウィザードを完了します。Pervasive PSQL クライアントがクラスターへの接続に使用するマシンのネットワーク名と IP アドレスを指定します。
    追加したネットワーク名を右クリックし、[リソースをオンラインにする]をクリックします。
  5. "Pervasive PSQL クラスター" を右クリックしてから、[共有フォルダーの追加]をクリックします。
    共有フォルダーの準備ウィザードを完了します。
  6. Pervasive PSQL クライアントから、クライアント アクセス ポイントへ ping が通ることを確認します。また、共有名を参照できることを確認します。
    たとえば、クライアント アクセス ポイントに "MyServer"、共有名に "Data_Share" という名前を付けた場合、MyServer へ ping が通り、¥¥MyServer¥Data_Share を参照できる必要があります。
  7. "Pervasive PSQL クラスター" を右クリックしてから、[このサービスまたはアプリケーションを別のノードに移動]をクリックします。クラスターの中から別のノードをクリックします。
    フェイルオーバーが完了し、すべてのリソースが利用可能になっていることを確認します。この操作を再度行い、また元のノードにフェイルオーバーします。

Pervasive PSQL をクラスター ノードにインストールする

Pervasive PSQL サーバーを各クラスター ノードにインストールします。各インストールで同一のオプションを選択します。クラスター共有記憶域には Pervasive PSQL をインストールしないでください。クラスター共有記憶域は、Pervasive PSQL データベースが存在する場所です。


注意

最低限の構成を満たすマシンで Xtreme I/O(略称 XIO )という Pervasive PSQL コンポーネントが利用できます。

Pervasive PSQL をクラスター環境で使用する場合は、Xtreme I/O をインストールしてはいけません(マシンがフェイルオーバーによってオンライン化し、アクセスできない共有記憶域をそのままにしておくと、インストールされている XIO を含むノードがハングすることがあります)。


Pervasive PSQL サービスを停止する

各ノードのサービス コンソールから、次の順序で Pervasive PSQL サービスを停止します。

セットアップ タイプを手動に変更する

インストール後、トランザクショナルおよびリレーショナル サービスは共にオペレーティング システムの起動時に自動的に開始されるよう設定されます。ただし、クラスタリングでは、フェイルオーバー クラスタリング コンソールがサービスの開始と終了(オンラインまたはオフラインにする)を制御します。

各ノードのサービス コンソールから、それぞれの Pervasive PSQL サービスを右クリックし、そのサービスのスタートアップの種類を[手動]に設定します。

クラスターで、トランザクショナル サービスは常に必要です。リレーショナル サービスは選択可能です。ただし、クラスターにトランザクショナル サービスのみを追加したとしても、リレーショナル サービスのスタートアップ設定を手動に変更する必要があります。

Pervasive PSQL 用のクラスター リソースを追加する

次の作業は、Pervasive PSQL 用のクラスター リソースを作成することです。クラスター リソースとして、Pervasive PSQL トランザクショナル サービスは常に必要です。このセクションでは、リレーショナル サービスも必要であると仮定します。


メモ

クラスター ノードが優先サーバーにフェイルバックした場合、Pervasive PSQL クライアントはデータベース エンジンとの接続を失います。自動再接続は行われません。アプリケーションでクライアントを Pervasive PSQL データベースに再接続するか、アプリケーションを再起動する必要があります。Pervasive PSQL で[自動再接続の有効化]がオンに設定されていても、自動的に再接続されません。

Pervasive PSQL は、フェイルバックが起きた場合、トランザクション状態を維持しません。トランザクションの状態は、優先サーバーに引き継がれません。トランザクションは、トランザクション開始前の状態に自動的にロール バックします。


以下の手順は、クラスター内の 1 つのノードでのみ行います。その後、この情報をクラスター内のほかのノードへ移行します。

  1. オペレーティング システムからフェイルオーバー クラスター管理コンソールを起動します。
  2. "Pervasive PSQL クラスター" を右クリックしてから、[リソースの追加]および[汎用サービス]をクリックします。
    新しいリソースのウィザードを完了します。[サービスの選択]の場合、"Pervasive PSQL Transactional Engine" を選択します。
  3. 手順 2 を繰り返し、サービスとして "Pervasive PSQL Relational Engine" を選択します。

Pervasive PSQL Transactional Engine サービスのプロパティを設定します。

  1. "Pervasive PSQL Transactional Engine" を右クリックして、[プロパティ]をクリックします。
  2. 依存関係]タブをクリックし、[依存関係を追加するには、ここをクリックしてください]をクリックします。
  3. FileServer リソースを選択し、[適用]をクリックします。
    たとえば、次のようになります。



  4. 全般]タブをクリックし、[ネットワーク名をコンピューター名として使う]オプションがチェックされていることを確認してください。
    たとえば、次のようになります。



  5. レジストリ レプリケーション]タブをクリックし、キーとして Software¥Pervasive Software を追加します。
    たとえば、次のようになります。



  6. OK]をクリックして、プロパティを閉じます。

Pervasive PSQL Relational Engine サービスのプロパティを設定します。

  1. "Pervasive PSQL Relational Engine" を右クリックして、[プロパティ]をクリックします。
  2. 依存関係]タブをクリックし、[依存関係を追加するには、ここをクリックしてください]をクリックします。
  3. "Pervasive PSQL Transactional Engine" を選択して、[適用]をクリックします。
    たとえば、次のようになります。



  4. 全般]タブをクリックし、[ネットワーク名をコンピューター名として使う]オプションがチェックされていることを確認してください。
  5. レジストリ レプリケーション]タブをクリックします。
    データ ソース名(DSN)の操作方法を決定します。
    必要なら ODBC キーを指定することができます。 ただし、これは、そのクラスター ノードにインストールされているすべての ODBC データ ソースおよび ODBC プロバイダーに影響します。 Pervasive PSQL は、そのクラスター ノードにインストールされている唯一の ODBC プロバイダーではないかも知れません。Pervasive PSQL が唯一の ODBC プロバイダーであれば、クラスター内で識別されるすべての Pervasive PSQL データ ソース名(DSN)が、すべてのクラスター ノードで使用できることを確実にする速い方法です。
    ODBC キーを指定しない場合は、各ノードがアクティブになったときに、各クラスター ノードで個々の DSN を設定する必要があります。各ノードでの DSN を指定するを参照してください。
    DSN の取り扱い方を以下の中から 1 つ決定してください。
  6. OK]をクリックして、プロパティを閉じます。

両方のリソースをオンラインにする

依存関係があるため、リソースは以下の順序でオンラインにしてください(逆に、リソースを停止する必要がある場合は、逆の順序で停止してください)。

  1. "Pervasive PSQL Transactional Engine" を右クリックして、[このリソースをオンラインにする]をクリックします。
  2. "Pervasive PSQL Relational Engine" を右クリックして、[このリソースをオンラインにする]をクリックします。

共有記憶域にディレクトリをコピーする

共有ディスクには、Pervasive PSQL をインストールしたアクティブ ノード上にあるアプリケーション データ領域のディレクトリとファイルが必要です。デフォルトで、アプリケーション データ領域は非表示になっているので注意してください。次のコマンドを実行すれば、この場所にアクセスできます。

(アプリケーション データの場所は、オペレーティング システムによって異なります。『Getting Started with Pervasive PSQL』の Pervasive PSQL ファイルがインストールされる場所を参照してください)。

  1. 共有ディスク上に、必要なファイル用のディレクトリを作成します。
    説明のため、このセクションではこのディレクトリに "PVSW_Admin" という名前を付けました。
  2. Pervasive PSQL をインストールしたアクティブ ノード上に %allusersprofile%¥Pervasive Software¥PSQL から以下のものをコピーします。

    名前
    ディレクトリ
    ファイル
    DBNAMES.CFG
     
    Yes
    defaultdb
    Yes
     
    Demodata
    Yes
     
    tempdb
    Yes
     
    Transaction Logs
    Yes
     

  3. Pervasive System Analyzer ユーティリティを使用してトランザクショナル テストまたはリレーショナル テストを行う予定であれば、%allusersprofile%¥Pervasive Software¥PSQL¥Samples ディレクトリも共有ディスクへコピーする必要があります。
    Samples ディレクトリは、Pervasive System Analyzer を使用する場合にのみ必要です。

    メモ

    Pervasive PSQL トランザクショナルおよびリレーショナル サービスは、通常ローカル システム アカウント下で実行されます。ローカル システム アカウントには必ず共有ディスクへの読み取り/書き込み権限を持たせる必要があります。


PCC を使用してデータベース エンジンを構成する

次の作業は、Pervasive PSQL Control Center(PCC)を使用してデータベース エンジンを構成することです。このエンジン設定はレジストリに追加されます。クラスター内の 1 つのアクティブ ノードでエンジンを構成する必要があります。次に障害を発生させてクラスター内の次のノードに設定を移行します。

  1. Pervasive PSQL をインストールしてたアクティブ ノードで Pervasive PSQL Control Center(PCC)を起動します。
  2. Pervasive PSQL エクスプローラーで、Pervasive PSQL をインストールした(エンジン下の)サーバー名を右クリックし、次に[プロパティー]をクリックします。
  3. 左側の一覧から[ディレクトリ]をクリックします。
  4. トランザクション ログのディレクトリ]に、Transaction Logs ディレクトリをコピーしたい共有ディスク上の場所を入力します。
  5. DBNames 設定ファイルのディレクトリ]に、DBNAMES.CFG ファイルをコピーする共有ディスク上の場所を入力します。
    設定したプロパティは、次のようなものになります。



  6. OK]をクリックします。
  7. サービスを再開始するよう指示されたら[いいえ]をクリックします。
    サービスを再開始はフェイルオーバー クラスター管理コンソールから行うことにします。
  8. フェイルオーバー クラスター管理コンソールで、"Pervasive PSQL Relational Engine" を右クリックし、[このリソースをオフラインにする]をクリックします。
  9. "Pervasive PSQL Transactional Engine" を右クリックして、[このリソースをオフラインにする]をクリックします。
  10. "Pervasive PSQL Transactional Engine" を右クリックして、[このリソースをオンラインにする]をクリックします。
  11. "Pervasive PSQL Relational Engine" を右クリックして、[このリソースをオンラインする]をクリックします。
    これで Pervasive PSQL サービスは再開始され、PCC を使ったエンジンの構成が完了します。
  12. PCC の Pervasive PSQL エクスプローラーで、([データベース]ノード下の)DEFAULTDB を右クリックし、[プロパティー]をクリックします。
  13. ディレクトリ]をクリックします。
  14. 辞書のロケーション]に、DEFAULTDB ディレクトリをコピーする共有ディスク上の場所を入力します。
  15. データ ディレクトリ]については、[新規]をクリックし、DEFAULTDB ディレクトリをコピーする共有ディスク上の場所を入力します。次に[削除]をクリックしてデフォルトのデータ ディレクトリを削除します。
    設定したプロパティは、次のようなものになります。



  16. OK]をクリックして設定を適用します。
  17. DEMODATA および TEMPDB データベースに対しても、手順 12 から 16 を繰り返し、[辞書のロケーション]および[データ ディレクトリ]に共有ディスク上の場所を指定します。
  18. PCC を終了します。

データベース エンジンの設定を移行する

次の作業は、データベース エンジンの設定をクラスター内のほかのノードへ移行します。

  1. フェイルオーバー クラスター管理コンソールで、"Pervasive PSQL クラスター" を右クリックしてから、[このサービスまたはアプリケーションを別のノードに移動]をクリックします。
  2. クラスターの中から別のノードをクリックします。
    フェイルオーバーが完了し、すべてのリソースが利用可能になっていることを確認します。
  3. 元のノードにフェイルオーバーするまで、対象のノードごとに手順 1 および 2 を完了させます。

これで、Pervasive PSQL はインストールされ、フェイルオーバー クラスター用に構成されます。次に作業は、データ ソース名(DSN)の操作方法に応じて省略することもできます。

各ノードでの DSN を指定する

この作業は、レジストリ レプリケーションでレジストリ キー ODBC¥ODBC.INI を指定しなかった場合のみ必要です。Pervasive PSQL Relational Engine サービスのプロパティを設定します。を参照してください。レジストリ キー ODBC を追加した場合は、この作業は必要ありません。

1 つのクラスター ノードに DSN を作成し、障害を発生し、同じ DSN をスタンバイ ノードに作成することが必要です。これを、すべてのクラスター ノードに DSN が含まれるまで繰り返します。


メモ

この作業を行う前に、PCC を使用してデータベース エンジンを構成しておく必要があります。PCC を使用してデータベース エンジンを構成するを参照してください。


  1. 実稼動クラスター ノードで、ODBC アドミニストレーターを開きます。
  2. システム DSN]タブをクリックし、[追加]をクリックします。
    データ ソースの新規作成]ダイアログ ボックスが表示されます。
  3. リストで Pervasive ODBC Engine Interface をクリックします。
  4. 完了]をクリックします。エンジン DSN セットアップのダイアログ ボックスが表示されます。
  5. 作成]をクリックし、データベース名を指定します。
  6. データベース名]に、Pervasive PSQL データベースの名前を入力します。
  7. 辞書のロケーション]には、データベース ファイルが存在する共有ディスク上の場所を入力または参照して指定します。これは、DDF ファイルの場所です。
  8. OK]をクリックして、エンジン DSN セットアップのダイアログ ボックスに戻ります。
  9. データ ソース名]に、データベースを参照するのに使用する名前を入力し、[OK]をクリックします。
  10. クラスタリングに関連するすべての Pervasive PSQL データベースについて、それぞれ手順 1 から手順 9 を繰り返します。
  11. フェイルオーバー クラスター管理コンソールで、"Pervasive PSQL クラスター" を右クリックしてから、[このサービスまたはアプリケーションを別のノードに移動]をクリックします。
  12. クラスターの中から別のノードをクリックします。
    フェイルオーバーが完了し、すべてのリソースが利用可能になっていることを確認します。
  13. 新しいノードについてもそれぞれ手順 1 から 4 を繰り返します。
  14. データベース名]のリストで、目的のデータベース名を選択します。
    リストには、手順 1 から 10 で追加した名前がすべて含まれています。それは、これらの手順により共有ディスク上の dbnames.cfg が更新されているためです。
  15. 手順 6 から 10 を繰り返し、そのデータベース名がほかのノード上でのデータベース名と必ず一致するようにします。
  16. DSN を設定する必要があるクラスターの各ノードについて、手順 11 から 15 を繰り返します。

サーバー クラスタリング

Windows Server 2003 用の Microsoft Cluster Service