はじめに
第3回では,
今回保守運用を行う環境は,
まずは,
crm_mon
crm_
Pacemakerが稼動しているサーバでcrm_
Online: [ pm01 pm02 ]#サーバ状態表示 Resource Group: web vip (ocf::heartbeat:IPaddr2): Started pm02 httpd (ocf::heartbeat:apache): Started pm02 Resource Group: grpStonith1 stonith1-1 (stonith:external/stonith-helper): Started pm02 stonith1-2 (stonith:external/ipmi): Started pm02 stonith1-3 (stonith:meatware): Started pm02 Resource Group: grpStonith2 stonith2-1 (stonith:external/stonith-helper): Started pm01 stonith2-2 (stonith:external/ipmi): Started pm01 stonith2-3 (stonith:meatware): Started pm01 Clone Set: clone_ping Started: [ pm01 pm02 ]#リソース状態表示 Node Attributes: * Node pm01: + default_ping_set : 100 + pm02-eth1 : up + pm02-eth2 : up * Node pm02: + default_ping_set : 100 + pm01-eth1 : up + pm01-eth2 : up#属性情報表示 Migration summary: * Node pm01: httpd: migration-threshold=1 fail-count=1 * Node pm02:#故障回数表示 Failed actions: httpd_monitor_10000 (node=pm01, call=78, rc=7, status=complete): not running#故障内容表示
- サーバ状態表示
- クラスタシステムを構成しているサーバ名と,
Pacemakerの稼動状態が表示されます。Pacemakerが稼動しているサーバは"Online"と表示され, 停止しているサーバは"OFFLINE"と表示されます。 - リソース状態表示
- Pacemakerが制御しているリソースの状態が表示されます。Resource Groupとして登録したリソースは,
"Started サーバ名"と表示され, リソース稼動状態と稼働中のサーバ名がわかります。Cloneとして登録したリソースは, "Started: [ pm01 pm02 ]"などと表示され, リソース稼動状態と稼働中のサーバ名がわかります。 - 属性情報表示
- インターコネクトLANの状態,
ネットワーク監視の状態などが表示されます。Pacemakerでは, インターコネクトLANやネットワークの監視において, 表1のように監視対象ごとにそれぞれ属性名と属性値を持っており, Pacemakerはそれぞれの属性値から監視先の正常/異常を判断しています。
表1 属性情報
監視先 | 属性名 | 属性値 | |
---|---|---|---|
正常値 | 異常値 | ||
インターネットコネクトLAN | サーバ名- インターフェース名 | up | dead※ |
ネットワーク | default_ | 100 | 0 |
- ※ スプリットブレインなどで相手のサーバを一切認識できなくなったり,
Pacemakerが停止しているサーバの状態については, 表示されなくなります。
- 故障回数表示
- リソースの故障状態が表示されます。リソースの故障を検知すると,
故障が発生したサーバと故障リソースの情報を表示します。故障回数表示に表示される故障情報は, サーバでリソース故障が起きたというフラグにも使用されており, そのフラグのことをフェイルカウントと呼びます。また, migration-threshold が"1"に設定されているため, 1回の故障でフェイルオーバが発生していることがわかります。 (migration-thresholdについては第2回を参照) - 故障内容表示
- 故障回数表示で表示されたリソースの故障内容として,
故障オペレーション (start/ monitor/ stop), 故障サーバ名, リターンコード (rc) が表示されます。ただし, 故障内容表示はリソースの故障が発生した場合のみ表示されます。
pm_logconv
Pacemaker標準のログは出力が多く,
pm_
追加インストール
# yum -c /tmp/pacemaker-1.0.10-1.4.1.el5.x86_64.repo/pacemaker.repo install pm_logconv-hb
起動設定
# vi /etc/inittab
……
logc:2345:respawn:/usr/share/pacemaker/pm_logconv/pm_logconv.py ← /etc/inittabに設定追加
inittabに追加した設定を反映させるために,
# telinit q
動作設定
# vi /etc/pm_logconv.conf …… [Settings] ha_log_path = /var/log/ha-log ← 第2回でsyslog.confの最後に追記したPacemakerのログファイルパスを設定 output_path = /var/log/pm_logconv.out ← pm_logconvのログ出力ファイルパスを設定 #hostcache_path = /var/lib/heartbeat/hostcache #syslogformat = True #reset_interval = 60 attribute_pingd = default_ping_set, lt, 100 ← ネットワーク監視を行う場合コメント(#)をはずす #attribute_diskd = diskcheck_status, eq, ERROR #attribute_diskd_inner = diskcheck_status_internal, eq, ERROR #logconv_logfacility = daemon act_rsc = vip httpd ← サービスリソースの最上位と最下位のリソースIDを設定 ……
設定ファイルの変更を行ったので,
# /usr/share/pacemaker/pm_logconv/pm_logconv.py -k
例としてリソース起動時のログを比較してお見せします。
Pacemaker標準ログ
Mar 30 11:51:04 pm01 lrmd: [29104]: info: rsc:httpd:39: start
Mar 30 11:51:05 pm01 crmd: [29107]: info: process_lrm_event: LRM operation httpd_start_0 (call=39, rc=0, cib-update=49, confirmed=true) ok
pm_
Mar 30 11:51:04 pm01 info: Resource httpd tries to start.
Mar 30 11:51:05 pm01 info: Resource httpd started. (rc=0)
Pacemaker標準ログでは,
それでは,