PowerGres Plus のスーパーユーザのユーザ名、ユーザID がサーバ間で異なると、共有ディスクに作成されたデータベースクラスタに PowerGres Plus からアクセスできなくなります。 そのため、すべてのサーバでスーパーユーザのユーザ名、ユーザID が同じにする必要があります。
PostgreSQL Plus Setup によってインスタンスを作成する際にスーパーユーザのユーザ名を指定できますが、 同じユーザ名でもサーバ間でユーザID が異なってしまうことや、 あるサーバで指定できたユーザID が他のサーバですでに使用されていることなどもあるため、 PowerGres Plus をインストールする前に、すべてのサーバでスーパーユーザをユーザ名、ユーザID が同じ状態になるように準備します。
また、スーパーユーザのホームディレクトリも作成してください。 これは PowerGres Plus の死活監視するために必要となります。
# useradd -u <uid> <username> -d <homedirectory> <uid> にはユーザID、<username> にはユーザ名、<homedirectory> には ホームディレクトリを指定します。
# id -u <username> <username> には既存ユーザのユーザ名を指定します。
プライマリサーバにおいて共有ディスクをマウントし、異なる共有ディスク上のファイルシステムに「データベース格納ディレクトリ」と「バックアップ格納ディレクトリ」を作成します。
# mount -t <type> -o rw <device> <directory> <type> には共有ディスクのファイルシステムタイプ、<device> にはデバイス、 <directory> にはマウントするディレクトリをそれぞれ指定します。
# mkdir <datadir>
ディレクトリの所有者を セットアップ前の準備で 用意した PowerGres Plusのスーパーユーザに変更します。
# chown <username> <datadir> <username> にはPowerGres Plus のスーパユーザ名を指定します。
# chmod 700 <datadir>
■重要
「データベース格納ディレクトリ」と「バックアップ格納ディレクトリ」は 異なる共有ディスク上のファイルシステムにそれぞれ作成する必要があります。 もし、同じ共有ディスク上のファイルシステムに作成した場合、ディスクに障害が発生した際にバックアップデータも破壊され、 復旧することができなくなる場合があります。
また、データのロード性能を引き出すため、テーブルスペースも異なる共有ディスク上の ファイルシステムに作成することを推奨します。 なお、その場合は別途、FileSystem リソース階層を作成する必要があります。
■注意
PowerGres Plus のスーパーユーザのユーザID がサーバ間で異なると、共有ディスクに作成されたデータベースクラスタに PowerGres Plus からアクセスできなくなります。 そのため、すべてのサーバでスーパユーザのユーザID が同じにする必要があります。
PowerGres Plus のセットアップはクラスタ内のプライマリサーバのみで行ってください。 すべてのサーバで PowerGres Plus をセットアップする必要はありません。
PowerGres Plus のセットアップでは、PostgreSQL Plus Setup で PowerGres Plus のインスタンスを作成します。 PostgreSQL Plus Setup は セットアップ前の準備で用意した PowerGres Plusのスーパーユーザ によって起動してください。
$ /usr/local/pgsqlplus/bin/pgx_setup &
PostgreSQL Plus Setup で設定する以下のことについては PostgreSQL Plus Administrator のセットアップ、リソース階層の作成において必要になるため、あらかじめメモしておいてください。
インスタンスの作成ついての詳細は、PowerGres Plus の「PostgreSQL Plus 管理者ガイド」の「2.2 インスタンスの作成」を参照してください。
上記において PowerGres Plus をセットアップしたことによって、プライマリサーバで PostgreSQL Plus Administrator を起動できるようになりました。 しかし、このままではクラスタ内のバックアップサーバで PostgreSQL Plus Administrator を起動できません。 クラスタ内のバックアップサーバで PostgreSQL Plus Administrator を起動するためには、 プライマリサーバの以下のファイルをすべてのバックアップサーバの同じディレクトリにコピーする必要があります。
/usr/local/pgsqlplus/package/pgxadmin/webapps/admin/<instancename>.html <instancename> には PostgreSQL Plus Setup で設定した インスタンス情報の「インスタンス名」を指定します。
これらのファイルをコピーすることによって、以下の URL から PostgreSQL Plus Administrator を起動できます。
http://<hostname>:13000/admin/<instancename>.html <hostname> には PostgreSQL Plus Administrator を起動するサーバのホスト名を 指定します。
■注意
PostgreSQL Plus Administrator は、PowerGres リソース階層を作成した後は、 それと従属関係にある File System リソース階層がサービス中であるサーバ、つまり、 「データベース格納ディレクトリ」が存在するファイルシステムがマウントされているサーバのみで、ログインできます。
なお、マウントされていないサーバでログインしようとした場合は、以下のメッセージが表示されますがエラーではありません。
PostgreSQL Plusの実行環境が壊れているため、 システムが正常に動作できません。 インスタンスの復旧を実施してください。
LifeKeeper for Linux のセットアップの内、コミュニケーションパスの作成などについては、LifeKeeper for Linux の「Online Product Manual」を参照してください。ここでは、PowerGres Plus を LifeKeeper for Linux の保護下に置くための手順について説明します。
PowerGres Plus を LifeKeeper for Linux の保護下に置くため、PowerGres リソース階層を作成します。 PowerGres リソース階層を作成することによって、以下のものが LifeKeeper for Linux の保護下に置かれます。
なお、PowerGres リソース階層を作成する際には、PowerGres Plus のインスタンスを停止しておく必要があります。
■重要
仮想 IP アドレスによって PowerGres Plus のインスタンスに接続するためには、 IP リソース階層を作成し、PowerGres リソース階層との従属関係を作成する必要があります。
PowerGres リソース階層を作成した後に「データベース格納ディレクトリ」「ポート番号」を変更するには、 PowerGres リソース階層をもう一度作成しなければなりません。 「ポート番号」については PostgreSQL Plus Administrator で変更できるようになっています。 なお、「ポート番号」を変更した場合は LifeKeeper for Linux によって PowerGres Plus のインスタンスを保護できなくなります。
LifeKeeper for Linux でリソースを作成します。 リソースを作成することによって LifeKeeper for Linux の保護下に置かれます。 なお、リソースの作成は root ユーザで行う必要があります。
# mount -t <type> -o rw <device> <directory> <type> には共有ディスクのファイルシステムタイプ、<device> にはデバイス、 <directory> にはマウントするディレクトリをそれぞれ指定します。
■注意
プライマリサーバでマウントを実行します。 クラスタを構成する他のマシンではマウントしていないことを確認してください。
# /opt/LifeKeeper/bin/lkGUIapp &
なお、LifeKeeper GUI の起動については「LifeKeeper for Linux 日本語マニュアル」を参照してください。
Create Resorce Wizard ダイアログボックスが表示されます。
なお、Switchback Type については「LifeKeeper for Linux 日本語マニュアル」を参照してください。
PowerGres リソース階層を作成する Server としてプライマリサーバを選択します。 ドロップダウンメニューにはクラスタ内のサーバがすべて含まれています。 Server には共有ディスクがマウントされているサーバを指定します。
Location of PowerGres Executables には、PowerGres の実行ファイルが含まれているディレクトリへのパスとして、 「/usr/local/pgsqlplus/bin」を指定します。
Port number for PowerGres service には、PowerGres Plus がクライアントからの接続を監視する TCP/IP ポート番号を指定します。
これは PostgreSQL Plus Setup で設定したインスタンスのオプション情報の「ポート番号」です。
このフィールドには、デフォルトのポート番号として、PostgreSQL Plus Setup で設定した
インスタンスのオプション情報の「ポート番号」が入力されています。
PowerGres リカバリーキットでは PowerGres Plus が起動していることを確認するため、 PowerGres Plus スーパユーザがローカルホスト (127.0.0.1) から template1 データベースに対して接続を行なっています。 ここでは、PowerGres Plus スーパユーザ名を入力してください。
これは PowerGres リソース階層に付けられるタグ名です。 デフォルトのタグ名として「pgplus-<datadir>」を選択するか、または独自のタグ名を入力します。 <datadir> には、PowerGres Plus data Directory が指定されます。
リソースの登録が完了すると、Database リソース階層を LifeKeeper for Linux の保護下に置くため、 クラスタ内のバックアップサーバへリソース階層を拡張する必要があります。
Target Server にはクラスタを構成するサーバを指定します。
最初にリソースを作成したときと同じ設定であれば [Accept Defaults]、そうでなければ [Next] をクリックします。
[Accept Defaults] をクリックしたときは、最初にリソースを作成したときと同じ設定でリソースが自動的に作成されます。
[Next] をクリックしたときは 5 から 10 と同じ手順でリソースを作成します。
ただし、Template Priority と Target Priority を設定することが異なります。
なお、Template Priority とTarget Priority については「LifeKeeper for Linux 日本語マニュアル」を参照してください。
ここでは [Accept Defaults] をクリックしたことを仮定します。 ウィンドウにはリソースを設定している状況が表示され、Extend custom/powergres Resource Hierarchy ダイアログボックスが表示されます。 ウィンドウにはリソースを拡張している状況が表示されます。
クラスタを構成するサーバがさらにあれば [Next Server]、そうでなければ [Finish] をクリックします。
[Next Server] をクリックしたときは 13 から 15 と同じ手順でリソースを拡張します。
[Finish] をクリックするとウィンドウにはリソースの拡張に成功したというメッセージが表示されます。
ダイアログボックスが閉じられます。
■注意
LifeKeeper for Linux の保護下に置かれた PowerGres Plus のインスタンスを停止させるときは、まず、 PowerGres リソース階層をサービス休止にする必要があります。 もし、PowerGres リソース階層がサービス休止でない場合は、 ローカルリカバリーによって PowerGres Plus のインスタンスが再起動してしまいます。 したがって、PostgreSQL Plus Administrator でインスタンスの停止を伴うような操作を行なう際には、 PowerGres リソース階層をサービス休止にする必要があります。
インスタンスの停止を伴う操作としては、以下のものがあります。
- 「インスタンスの操作」の「インスタンスの復旧」
- 「設定の変更」の「文字コードとロケールの変更」
- 「設定の変更」の「アプリケーションとの通信の設定」
- 「設定の変更」の「使用メモリの変更」
仮想 IP アドレスによって PowerGres Plus のインスタンスに接続するためには、IP リソース階層を作成し、 PowerGres リソース階層との従属関係を作成する必要があります。 ここで IP Resorce として設定したIP アドレスは、PowerGres Plus に接続するための仮想 IP アドレスとして使用されます。
IP リソースの作成については「LifeKeeper for Linux 日本語マニュアル」を参照してください。
PowerGres リソースと IP リソースを従属関係に関連付けます。 関連付けることによって仮想 IP アドレスで PowerGres Plus に接続することができます。 したがって、クライアントは PowerGres Plus が起動しているサーバを意識する必要がなくなります。
Parent Resource Tag には、リソースを関連付けるときに親になるリソースのタグを指定します。 ここでは PowerGres リソースのタグ を指定します。
Child Resource Tag には、リソースを関連付けるときに子になるリソースのタグを指定します。 ここでは IP リソースのタグ を指定します。
ダイアログボックスには、Parent Resource Tag と Child Resource Tag にそれぞれ指定したタグを、確認するメッセージが表示されます。
ダイアログボックスが閉じられます。
以上で、PowerGres Plus が LifeKeeper for Linux の保護下に置かれます。
下記の場合は、それぞれのディレクトリが存在するファイルシステムを LifeKeeper for Linux の保護下に置くため、 File System リソース階層を作成し、PowerGres リソース階層との従属関係を作成する必要があります。
テーブルスペースを複数のファイルシステムに作成した場合は、すべてのファイルシステムについて File System リソース階層を作成し、 PowerGres リソース階層との従属関係を作成する必要があります。
File System リソース階層の作成します。
PowerGres リソース階層との従属関係を作成します。
File System リソース階層を作成し、PowerGres リソース階層との従属関係を作成することによって、以下のようなリソース階層が作成されます。
なお、File System リソース階層の作成、PowerGres ソース階層との従属関係の作成についての詳細は、 LifeKeeper for Linux の「Online Product Manual」を参照してください。
Copyright © 2003-2008 SRA OSS, Inc. Japan