LifeKeeper for Linux v6 Update4 メンテナンスリリース2に含まれている、PostgreSQL RecoveryKit 6.4.0-2 より、Postgres Plus Advanced Server 8.3(Enterprise DB)をリソースとして保護することが可能です。
この文書では、Postgres Plus Advanced Server 8.3を、PostgreSQL RecoveryKit(6.4.0-2)で保護する場合のポイントをご案内します。
なお、PostgreSQL RecoveryKitの一般的な使用方法については、以下PostgreSQL RecoveryKit AdministrationGuideでご確認ください。
http://jpdocs.us.sios.com/
1.Postgres Plus Advanced Server 8.3のインストール時のポイント
Postgres Plus Advanced Server 8.3のインストールを行う際の注意点をご紹介します。
1-1.”Configuration Mode”の選択
“Configuration Mode”画面(下図参照)にて、「Oracle-compatible」か「PostgreSQL-compatible」のいずれかを選択することが出来ます。
ここで「PostgreSQL-compatible」を選択した場合は、インストール完了後に”edb”というデータベースを作成してください。このデータベースを作成しておかないと、LifeKeeperでのリソース作成に失敗します。詳細は下記の”2-2.「PostgreSQL-compatible」モードでインストールした場合の対処”をご参照ください。なお、「Oracle-compatible」を選択した場合は、特別な操作は不要です。
1-2.インストールパスとデータの配置
“Postgres Plus Advanced Server 8.3″のインストール先(Destination Directory)は、各ノードのローカルディスク、共有ディスクのいずれでも構いません。但し、データベースと(Data Destination Directory)とWAL(Write-Ahead Log(WAL) Directory)は、共有ディスク(またはSDR領域)に配置しなければなりません。
1-3.”Advanced Options”画面の”Run database at system startup”設定
この設定はオフにしてください。起動と停止はLifeKeeperから制御します。
2.インストール後の作業について
インストール完了後、LifeKeeperで保護するにあたって必要となるPostgres Plus Advanced Server 8.3の操作をご案内します。
2-1.pg_hba.confファイルの編集
データベースユーザ名が”enterprisedb”である場合、Lifekeeperはこのユーザを使用して、データベースの制御を行います。そのため、pg_hba.confにてローカルの”enterprisedb”のアクセスをtrustしておく必要があります。以下はpg_hba.confに記述するエントリのサンプルです。
==============
Local all enterprisedb trust
==============
2-2.「PostgreSQL-compatible」モードでインストールした場合の対処
LifeKeeperは、Postgres Plus Advanced Server 8.3の監視において、edb-psqlを使用してデータベースに接続し、応答を確認しておりますが、このとき接続するデータベース名を指定していません。
edb-psqlでは、接続するデータベース名の指定が無い場合、”edb”というデータベースに接続を試みますが、PostgreSQL-compatibleでインストールした場合は、このデータベースは自動的には作成されないようです。この状態では、LifeKeeperがDBに接続確認を行った際に失敗します。
そのため、インストール完了後に”edb”というDBを作成しておいてください。
3.LifeKeeper側の設定変更
Postgres Plus Advanced Server 8.3は、PostgreSQLとは監視対象プロセスや、実行バイナリの名前が異なるため、以下のパラメータを/etc/defaul/LifeKeeperに追記する必要があります。なお、この設定は即座に反映されます。LifeKeeperの再起動などは不要です。
==============
LKPGSQL_CLIENT=edb-psql
LKPGSQL_CUSTOMDAEMON=edb-postgres
==============
※上記の設定は全てのクラスタノードで行ってください。
4.リソースの作成
LifeKeeper GUI管理画面より、リソース作成を行ってください。GUI上の手順は通常のPostgreSQLのリソース作成と同様です。
以上。