rPowerGres Plus HA 運用マニュアル
Version 2.1

• SRA、PowerGres は、株式会社 SRA の商標または登録商標です。

• SteelEye、LifeKeeper は、米国 SteeleEye Technology, Inc. の商標または登録商標です。

• Linux は、Linus Torvalds の米国およびその他の国における商標または登録商標です。

• その他、本マニュアル中で記載している会社名、商品名は一般に各社の商標または登録商標です。なお、本マニュアル中では、TM マークおよび rマークは明記していません。

目次
1

はじめに

2

2

運用手順

2

注意事項 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

基本的な操作

2

3.1

LifeKeeper GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

3.2

マニュアルの参照 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4モニタリング5

4.1

状態の確認 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5

4.2

ログの表示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

4.3

SNMP トラップ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

メンテナンス

11

5.1

LifeKeeper の起動と停止 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

5.2

LifeKeeper GUI Server の起動と停止 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

5.3

フェイルオーバーの確認 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

5.4

スイッチオーバーの確認 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

5.5

PowerGres のメンテナンス（PowerGres の停止が必要なもの） . . . . . . . . . . . . . . . . .

13

FAQ

14

2.1
3

4

5

6

1

1 はじめに本マニュアルは PowerGres Plus HA の日常的な運用について記述したものです。より詳しい説明が必要なときにはそれぞれのマニュアルを参照してください。マニュアルの参照については 3.2 を参照してください。

2 運用手順
2.1 注意事項
2.1.1 PostgreSQL Plus Administrator のみでの起動/停止操作禁止
PowerGres Plus HA では、Web インタフェースにより PostgreSQL の動作をコントロールできる、GUI
ツール (PostgreSQL Plus Administrator) が付属しております。このツールは、HA 構成に対応していない
為、起動/停止操作が正常に動作いたしません。

LifeKeeper for Linux の保護下に置かれた PowerGres Plus のインスタンスを停止させるときは、まず、PowerGres Plus Database リソース階層をサービス停止にする必要があります。もし、PowerGres Plus
Database リソース階層がサービス停止でない場合は、ローカルリカバリーによって PowerGres Plus のインスタンスが再起動してしまいます。
従って、PostgreSQL Plus Administrator でインスタンスの停止を伴うような操作を行う際には、PowerGres

Plus Database リソース階層をサービス停止にする必要があります。インスタンスの停止を伴う操作としては以下のものがあります。

•「データベースの詳細設定」の「バックアップの設定」•「データベースの詳細設定」の「テンポラリログ量の変更」•「データベースの詳細設定」の「アプリケーションとの通信の設定」
2.1.2 pg ctl コマンドによる起動/停止の禁止
PostgreSQL に標準添付されているコマンド 「pg ctl」 は、PostgreSQL の起動/ 停止を行うことができます。PowerGres Plus HA では、LifeKeeper により PowerGres Plus の起動/停止をコントロールしている為、「pg ctl」コマンドでは正常な動作を期待できません。データベースの起動/停止の操作を行う際は、LifeKeeper GUI ウインドウより操作を行ってください。

3 基本的な操作
3.1 LifeKeeper GUI
3.1.1 LifeKeeper GUI の起動
LifeKeeper GUI を起動するとダイアログが表示されます。Server Name、Login、Password にそれぞれログインするサーバ名、ユーザ名、パスワードを入力し、OK をクリックすると LifeKeeper GUI にログインすることができます。

2

■コマンドラインからの起動¨§

コマンドラインから LifeKeeper GUI を起動するには以下のように lkGUIapp コマンドを実行します。

¥¦$ /opt/LifeKeeper/bin/lkGUIapp &■Web ブラウザからの起動

Web ブラウザから LifeKeeper GUI を起動するには以下の URL にアクセスします。server name にはサーバ名を指定します。

http://server name:81/

3.1.2 LifeKeeper GUI の画面構成
LifeKeeper GUI にログインすると以下のような画面が表示されます。

LifeKeeper GUI の画面では以下のようにリソース階層やサーバ、リソースの状態を確認することができます。
■リソース階層の状態

3

■サーバの状態■リソースの状態

3.2 マニュアルの参照
3.2.1 LifeKeeper のマニュアル
LifeKeeper のマニュアルには「LifeKeeper on Linux 日本語マニュアル」CD-ROM に含まれる PDF ファ
イル (「Release Notes」、「Planning and Instllation Guide」、「IP Recovery Kit Administration Guide」)とオンラインマニュアルがあります。
■man

LifeKeeper のコマンドのマニュアルを参照するにはコマンドラインから以下のように man コマンドを実行¨

します。name にはマニュアルを参照するコマンド名を指定します。

§

¨

§

# man -M /opt/LifeKeeper/man name
例えば、lkstart コマンドのマニュアルを参照するには以下のように man コマンドを実行します。

# man -M /opt/LifeKeeper/man lkstart

4

¥
¦
¥
¦

■Online Product Manual「Online Product Manual」を参照するには Web ブラウザから以下の URL にアクセスします。server nameにはサーバ名を指定します。

http://server name:81/help/lksstart.htm
また、LifeKeeper GUI のメニューから Help、Contents を選択することによって「Online Product

Manual」を参照することもできます。
3.2.2 PowerGres のマニュアル
PowerGres のマニュアルには「PowerGres Plus HA」CD-ROM に含まれる PDF ファイル (「PowerGres
Plus HA マニュアル」) があります。

4 モニタリング
4.1 状態の確認
4.1.1 正常な状態■LifeKeeper GUI からの確認

1. サーバの状態がプライマリサーバ、バックアップサーバともに Alive となっている。
2. コミュニケーションパスの状態がすべて Alive となっている。
（a）メニューから Edit、Server、Properties... を選択するとダイアログが表示されます。
（b）タブから CommPaths を選択するとコミュニケーションパスの状態が表示されます。

（c）OK をクリックするとダイアログが閉じられます。

3. リソース階層の状態がすべて ISP (In-Service, Protected) となっている。

5

4. すべてのリソースの状態がいずれかのサーバで ISP (In-Service, Protected) となっている。
■コマンドラインからの確認¨

コマンドラインから正常な状態を確認するには以下のように lcdstatus コマ¥

ンドを実行します。

§¦# /opt/LifeKeeper/bin/lcdstatus -q• プライマリサーバで lcdstatus コマンドを実行するとリソースの状態が ISP (In-Service, Protected)となっている。

• バックアップサーバで lcdstatus コマンドを実行するとリソースの状態が OSU (Out-of-Service,
Unimpaired) となっている。

• コミュニケーションパスの状態が ALIVE となっている。
4.1.2 エラーの表示例■コミュニケーションパスのエラー■ネットワークのエラー

6

■サーバのエラー

7

4.2 ログの表示
4.2.1 LifeKeeper のログの表示
LifeKeeper では 6 種類のログが記録されます。
log

このログには LifeKeeper が保護しているアプリケーションやリソースに関する情報が含まれます。ア
プリケーションの remove および restore スクリプトによって出力される情報、LifeKeeper の停止や起動、サービスの起動やフェイルオーバーなど、LifeKeeper のほとんどのイベントがこのログに記録されます。

LCD このログには LCD についての情報が含まれます。LifeKeeper データベースやその状態の変化に関する情報がこのログに記録されます。

LCM このログには LCM についての情報が含まれます。TCP コミュニケーションパスのイベントや状態の変化がこのログに記録されます。

TTYLCM このログには TTYLCM についての情報が含まれます。TTY コミュニケーションパスのイベン
トや状態の変化がこのログに記録されます。

remote exec このログにはすべてのリモートな LifeKeeper のリクエストが記録されます。
GUI

このログには LifeKeeper GUI についての情報が含まれます。

SNMP このログには SNMP トラップについての情報が含まれます。
■LifeKeeper GUI からの表示

1. LifeKeeper GUI を起動し、ログインします。
¨§¥# /opt/LifeKeeper/bin/lkGUIapp &2. メニューから Edit、Server、View Logs... を選択するとダイアログが表示されます。
3. Server からログを表示するサーバを選択します。
4. Log Type からログの種類を選択します。
5. Log Size からログのサイズを選択します。
6. OK をクリックするとダイアログが閉じられます。

8¦

■コマンドラインからの表示

LifeKeeper のログはパイプと循環ファイルによって実装されているため、テキストエディタから読み込むことができません。コマンドラインからログを表示するには root ユーザで以下のように lk log コマンドを実行します。lk log コマンドはログを表示するためのコマンドです。log にはログの種類 (log、LCD、LCM、

TTYLCM、remote exec、GUI、SNMP のいずれか) を指定します。
¨§¨# /opt/LifeKeeper/bin/lk_log log¦

例えば、log という種類のログを /tmp/lk.log ファイルに出力するには以下のように lk log コマンドを実

行します。

§

¥

# /opt/LifeKeeper/bin/lk_log log > /tmp/lk.log
なお、/tmp/lk.log ファイルはテキストエディタから読み込むことができます。

■ログの表示例
コミュニケーションパスの障害

COMMUNICATION TO srapc2051 BY 192.168.11.1/192.168.11.2 FAILED AT: 木 10 月 21
20:46:52 JST 2004
ネットワークの障害

9¥¦LifeKeeper: pingfail: Local recovery failed for IP instance ip-133.137.45.71/opt/LifeKeeper/bin/recover: recovery failed after event "ip,pingfail" using
recovery at resource "ip-133.137.45.71" on failing resource"ip-133.137.45.71"***ERROR*** recover[655,recover.C] 木 10 月 21 20:48:34 JST 2004: all attempts at
local recovery have failed after event "ip,pingfail" occurred toresource "ip-133.137.45.71"
共有ディスクの障害***ERROR*** ccissdev[237,ccissdev.C] 木 10 月 21 21:14:35 JST 2004: cannot open
device "/dev/cciss/c0d6": No such device or address
PowerGres の障害
RECOVERY class=powergres event=recover name=powergres-/share/data STARTING AT:
木 10 月 21 21:20:24 JST 2004

/opt/LifeKeeper/bin/recover: resource "powergres-/share/data" with id"powergres-/share/data" has experienced failure event"powergres,recover"/opt/LifeKeeper/bin/recover: attempting recovery using resource"powergres-/share/data" after failure by event "powergres,recover" on
resource "powergres-/share/data"

4.3 SNMP トラップ
LifeKeeper では SNMP トラップによってサービスの起動やフェイルオーバーなどのイベントを送信することができます。

1. lk configsnmp コマンドによってイベントを送信するサーバの IP アドレスを設定します。ip にはイ¨

ベントを受信するサーバの IP アドレスを指定します。

§# /opt/LifeKeeper/bin/lk_configsnmp ip

2. /etc/snmp/snmp.conf ファイルに以下の記述を追加します。

¥¦

defCommunity public
3. イベントを受信するサーバで以下のように snmptrapd コマンドを実行します。
¨§# snmptrapd -P

10

¥
¦

4. LifeKeeper GUI からイベントを発生させ、イベントを受信するサーバでログが標準出力に出力されることを確認します。
なお、SNMP トラップによるイベントの送信については「Online Product Manual」の「Overview of

LifeKeeper Event Forwarding via SNMP」も参照してください。「Online Product Manual」のタブからContents を選択し、Configuring LifeKeeper、LifeKeeper Event Forwarding via SNMP、Overview
of LifeKeeper Event Forwarding via SNMP を選択すれば参照することができます。
■LifeKeeper イベントテーブル

LifeKeeper イベント

トラップ番号

オブジェクト ID

LifeKeeper Startup Complete

100.1.3.6.1.4.1.7359.1.0.100

LifeKeeper Shutdown Initiated101.1.3.6.1.4.1.7359.1.0.101

LifeKeeper Shutdown Complete

102.1.3.6.1.4.1.7359.1.0.102

LifeKeeper Manual Switchover Initiated on Server

110.1.3.6.1.4.1.7359.1.0.110

LifeKeeper Manual Switchover Complete - recovered list

111

.1.3.6.1.4.1.7359.1.0.111

LifeKeeper Manual Switchover Complete - failed list

112

.1.3.6.1.4.1.7359.1.0.112

LifeKeeper Node Failure Detected for Server120.1.3.6.1.4.1.7359.1.0.120

LifeKeeper Node Recovery Complete for Server - recovered list

121

.1.3.6.1.4.1.7359.1.0.121

LifeKeeper Node Recovery Complete for Server - failed list

122

.1.3.6.1.4.1.7359.1.0.122

LifeKeeper Resource Recovery Initiated130.1.3.6.1.4.1.7359.1.0.130

LifeKeeper Resource Recovery Failed

131.1.3.6.1.4.1.7359.1.0.131

LifeKeeper Resource Recovery Complete

132.1.3.6.1.4.1.7359.1.0.132

LifeKeeper Communications Path Up

140.1.3.6.1.4.1.7359.1.0.140

LifeKeeper Communications Path Down

141

.1.3.6.1.4.1.7359.1.0.141

5 メンテナンス
5.1 LifeKeeper の起動と停止
5.1.1 LifeKeeper の起動
LifeKeeper を起動するには root ユーザで以下のように lkstart コマンドを実行します。なお、LifeKeeper¨

は LifeKeeper GUI を起動するときにはすでに起動していなければなりません。

§¥¦# /opt/LifeKeeper/bin/lkstart

5.1.2 LifeKeeper の停止
LifeKeeper を停止するには root ユーザで以下のように lkstop コマンドを実行します。このコマンドを¨

実行すると LifeKeeper に保護されていたリソースのサービスも停止します。

§¥¦# /opt/LifeKeeper/bin/lkstop

11lkstop コマンドにはいくつかのオプションがあります。
-f

LifeKeeper に保護されているリソースのサービスを停止しません。

-n

LifeKeeper に保護されているリソースのサービスをバックアップサーバにフェイルオーバーさせます。
なお、-r および -f オプションとともに使用することはできません。

-rシステムを再起動したときに LifeKeeper を起動します。このオプションを指定しなければシステムを再起動したときに LifeKeeper は停止したままになります。

例えば、LifeKeeper に保護されているリソースのサービスをバックアップサーバにフェイルオーバーさせ、LifeKeeper を停止するには以下のように lkstop コマンドを実行します。
¨§# /opt/LifeKeeper/bin/lkstop -n¥¦

5.2 LifeKeeper GUI Server の起動と停止
LifeKeeper GUI を起動するにはそれぞれのサーバで LifeKeeper GUI Server が起動していなければなりません。

¨

LifeKeeper GUI Server を起動するには root ユーザで以下のようにコマンドを実行します。

¨

LifeKeeper GUI Server を停止するには root ユーザで以下のようにコマンドを実行します。

§§# /opt/LifeKeeper/bin/lkGUIserver start

¥
¦
¥
¦

# /opt/LifeKeeper/bin/lkGUIserver stop

5.3 フェイルオーバーの確認
プライマリサーバを停止することによってすべてのリソースがバックアップサーバにフェイルオーバーすることを確認します。なお、システムの停止によるフェイルオーバーを確認するにはプライマリサーバの Shutdown Strategy を Switchover Resources に設定しなければなりません。プライマリサーバのShutdown Strategy を Switchover Resources に設定するには LifeKeeper GUI から以下のように行います。

1. LifeKeeper GUI を起動し、ログインします。
¨§¥# /opt/LifeKeeper/bin/lkGUIapp &2. メニューから Edit、Server、Properties... を選択するとダイアログが表示されます。
3. Server からプライマリサーバを選択します。
4. タブから General を選択し、Shutdown Strategy から Switchover Resources を選択します。
5. OK をクリックするとダイアログが閉じられます。

12¦

5.4 スイッチオーバーの確認
バックアップサーバの PowerGres Plus Database リソース階層のサービスを起動することによってスイッ
チオーバーすることを確認します。バックアップサーバの PowerGres Plus Database リソース階層のサービスを起動するには LifeKeeper GUI から以下のように行います。

1. LifeKeeper GUI を起動し、ログインします。
¨§¥# /opt/LifeKeeper/bin/lkGUIapp &2. メニューから Edit、Resource、In Service... を選択するとダイアログが表示されます。

¦

3. Server からバックアップサーバを選択し、Next をクリックします。
4. Resource(s) からサービスを起動する PowerGres Plus Database リソース階層を選択し、Next をク
リックします。

5. In Service をクリックすると PowerGres Plus Database リソース階のサ層ビスの起動、スイッチ
オーバーが開始されます。

6. Done をクリックするとダイアログが閉じられます。
コマンドラインからバックアップサーバの PowerGres Plus Database リソース階層のサービスを起動するには root ユーザで以下のように lcdremexec コマンドを実行します。lcdremexec コマンドはコミュニケー
ションパスを通してコマンドを実行するコマンドです。cmd には実行するコマンドを指定します。destname¨には cmd を実行するサーバを指定します。

§# /opt/LifeKeeper/bin/lcdremexec -d destname -- cmd¥¦

例えば srapc2051 というバックアップサーバで powergres-/share/data というタグ名の PowerGres

Plus Database リソース階層のサービスを起動するには以下のように lcdremexec コマンドを実行します。
¨¥# /opt/LifeKeeper/bin/lcdremexec -d srapc2051 -- perform_action -t powergres-/shar§e/data -a restore
perform action コマンドについては ?? も参照してください。

5.5 PowerGres のメンテナンス（PowerGres の停止が必要なもの）
LifeKeeper GUI で PowerGres Plus Database リソース階層のサービスの起動と停止ができます。
もし、コマンドライン上での操作が必要な場合は、以下の作業を行ってください。

1. LifeKeeper サービスを維持したまま PowerGres を停止する。

13

¦

¨

# perform_action -t pgplus-/PlusData/ES2.1/data1 -a remove§* -t 後に付加するのは、LifeKeeper で設定した PowerGres Plus HA のタグ名§

# perform_action -t pgplus-/PlusData/ES2.1/data1 -a restart

2. PowerGres の再起動
¨

¥
¦
¥
¦

6 FAQ
FAQ については以下の URL も併わせて参照してください。
LifeKeeper の FAQ (株式会社テンアートニ)
http://www.10art-ni.co.jp/product/lifekeeper/faq.html■質問

TCP コミュニケーションパスの IP アドレスはどのように変更するのでしょうか？

■回答 TCP コミュニケーションパスの IP アドレスを変更するにはその TCP コミュニケーションパスを削除してからもう 1 度作成してください。
■質問

LifeKeeper GUI にログインするときのパスワードはどのように変更するのでしょうか？

■回答

LifeKeeper GUI にログインするときのパスワードを変更するには以下のように lkpasswd コマンドを実行します。user にはパスワードを変更するユーザ名を指定します。新しいパスワードを 2 度入力すると¨¥

パスワードが変更されます。

§¦# /opt/LifeKeeper/bin/lkpasswd user

なお、このパスワードはシステムのパスワードとは異なるため、パスワードを変更することによってシステ

ムのパスワードは変更されません。
■質問

Web ブラウザから http://server name:81/ にアクセスしましたが LifeKeeper GUI が起動しま

せん。
■回答

Web ブラウザで以下の画面が表示されましたか？

14

もし、画面が表示されなければアクセスするサーバが誤っているか、アクセスしたサーバで LifeKeeper が起動していない可能性があります。アクセスするサーバが正しいことと、そのサーバで LifeKeeper が起動していることを確認してください。
画面は表示されるが Start ボタンが表示されないときは Web ブラウザに Java Plug-in がインストールされていない可能性があります。Web ブラウザから以下の URL にアクセスし、Java Plug-in をインストール
してください。

http://java.sun.com/products/plugin/■質問

pg hba.conf ファイルの設定を変更したところ PowerGres Plus Database リソース階層がバック

アップサーバにフェイルオーバーしました。また、フェイルオーバーしたはずの PowerGres Plus Database
リソース階層もバックアップサーバでサービスを起動できず、PowerGres Plus Database リソース階層の状
態が StandBy となりました。

pg hba.conf ファイルは以下のように編集しました。
local

all

all

host

all

all

■回答

md5
127.0.0.1

255.255.255.255

md5PowerGres リカバリーキットでは PowerGres が起動していることを確認するため、ローカルホスト(127.0.0.1) から template1 データベースにクエリーを発行しています。
しかし、この pg hba.conf ファイルではローカルホスト (127.0.0.1) からのデータベースへの接続にパスワー
ドを入力しなければならない設定になっており、PowerGres が起動していることを確認できず、PowerGres

Plus Database リソース階層の状態が StandBy となってしまっています。
pg hba.conf ファイルでは PowerGres のスーパーユーザがローカルホスト (127.0.0.1) から template1
データベースにパスワードなしで接続できるように設定してください。
例えば、PowerGres のスーパーユーザが postgres ユーザであれば pg hba.conf ファイルの初めに以下の記述を追加します。

15

host

template1

postgres127.0.0.1

16255.255.255.255

trust