[Linux-ha-jp] RE: DCノード故障時のlogconvの出力について

Back to archive index

tsuki****@gmail***** tsuki****@gmail*****
2016年 6月 14日 (火) 01:10:17 JST


飯田さん

池田です。
ご連絡ありがとうございます。

VMware環境では下記のような再現性がありました。
それぞれ10回試行し、10回とも同一の結果となりました。
なお、リソースはDummy1個にして動作を確認しています。

(1) vSphereClient から仮想マシンを「リセット」

- リソースのフェイルオーバは成功
- logconvの出力ではフェイルオーバ失敗

例)
Jun 13 11:44:15 acdbv-ha02 warning: Node acdbv-ha01 is lost
Jun 13 11:44:15 acdbv-ha02    info: Set DC node to acdbv-ha02.
Jun 13 11:44:16 acdbv-ha02   error: Start to fail-over.
Jun 13 11:44:16 acdbv-ha02    info: Resource dummy tries to start.
Jun 13 11:44:16 acdbv-ha02    info: Resource dummy started. (rc=0)
Jun 13 11:44:16 acdbv-ha02   error: fail-over failed.

ログファイル:20160613-logconv/reset

(2) OSコマンド(reboot -nf)で仮想マシンを再起動

- リソースのフェイルオーバは成功
- logconvの出力ではフェイルオーバ失敗

例)
Jun 13 13:02:31 acdbv-ha02 warning: Node acdbv-ha01 is lost
Jun 13 13:02:31 acdbv-ha02    info: Set DC node to acdbv-ha02.
Jun 13 13:02:32 acdbv-ha02   error: Start to fail-over.
Jun 13 13:02:32 acdbv-ha02    info: Resource dummy tries to start.
Jun 13 13:02:32 acdbv-ha02    info: Resource dummy started. (rc=0)
Jun 13 13:02:32 acdbv-ha02   error: fail-over failed.

ログファイル:20160613-logconv/reboot

(3) initctlコマンドでPacemakerを停止(initctl stop pacemaker.combined)

- リソースのフェイルオーバは成功
- logconvには「Start to fail-over.」が出力されない
→ コマンドオペレーションによるPacemakerの停止なので、これは仕様ですか?

例)
Jun 13 13:25:53 acdbv-ha02    info: Resource dummy tries to start.
Jun 13 13:25:53 acdbv-ha02    info: Resource dummy started. (rc=0)

ログファイル:20160613-logconv/initctl

(4) Dummyリソースの監視故障(ステータスファイルの削除)

- リソースのフェイルオーバは成功

- DCノードでリソース故障
例)
Jun 13 13:41:04 acdbv-ha02   error: Start to fail-over.
Jun 13 13:41:04 acdbv-ha02    info: Resource dummy tries to stop.
Jun 13 13:41:04 acdbv-ha02    info: Resource dummy stopped. (rc=0)
Jun 13 13:41:04 acdbv-ha02    info: Resource dummy : Move acdbv-ha02 -> acdbv-ha01
Jun 13 13:41:04 acdbv-ha02    info: fail-over succeeded.

- 非DCノードでリソース故障
例)
Jun 13 13:42:04 acdbv-ha02   error: Resource dummy does not work. (rc=7)
Jun 13 13:42:04 acdbv-ha02    info: Resource dummy tries to stop.
Jun 13 13:42:04 acdbv-ha02    info: Resource dummy stopped. (rc=0)
Jun 13 13:42:04 acdbv-ha02    info: Resource dummy tries to start.
Jun 13 13:42:04 acdbv-ha02    info: Resource dummy started. (rc=0)

DCに依存せず「error: Start to fail-over.」「info: fail-over succeeded.」という
出力が得られることを想定していましたが、期待通りになりませんでした。

ログファイル:20160613-logconv/monitor_ng


前回のメールで指摘していただいたとおり、logconvが変換に利用している下記メッセージが
ha-logに出力されていないことが根本原因だと思います。

notice: te_rsc_command: Initiating action <num>: start <resource name>_start_0 on <node name> (local)

ただし
- te_rsc_command関数から当該メッセージが出力されない理由が不明(環境依存やバージョンの組み合わせ?設定不足?)
- te_rsc_command関数から当該メッセージが出力されないパターンが多岐にわたる
という条件があることから、今回構築する環境(および類似のバージョンを使用している環境)では
logconvの出力結果からフェイルオーバの成否を判断せず
ha-logの出力結果をシステム監視(Hinemos, Zabbix, JP1など)に登録し
イベント発生時の通知(発報)へつなげることとします。

# 今回はPacemaker 1.1.12を導入します。
# ただ、Pacemaker 1.1.13/RHEL6/VMwareの環境でも同様の動作は発生しそうな気がしますが。。。
# 1.1.12と1.1.13でログ出力周りで大幅な変更はないですよね。


以上よろしくお願いいたします。

池田淳子



差出人: 飯田 雄介
送信日時: 2016年6月10日 16:07
宛先: linux****@lists*****
件名: Re: [Linux-ha-jp]DCノード故障時のlogconvの出力について

池田さん

お世話になります。
飯田です。

> 故障発生時のDCは1号機です。 
> DC故障を伴うフェイルオーバ発生時に 
> logconvに上記のメッセージが出力されるのは仕様でしょうか。
フェイルオーバー失敗となるのは期待される動作ではありません。
期待される動きはフェイルオーバー成功となることです。

私の手元の環境でも頂いた設定を使って似たような構成を取り再現してみましたが、
下記の通りフェイルオーバー成功となりました。
Jun 10 05:42:20 cento7-logconv-2.novalocal    info: Set DC node to cento7-logconv-1.novalocal.
Jun 10 05:42:47 cento7-logconv-2.novalocal warning: Node cento7-logconv-1.novalocal is lost
Jun 10 05:42:47 cento7-logconv-2.novalocal    info: Unset DC node cento7-logconv-1.novalocal.
Jun 10 05:42:47 cento7-logconv-2.novalocal    info: Set DC node to cento7-logconv-2.novalocal.
Jun 10 05:42:48 cento7-logconv-2.novalocal   error: Start to fail-over.
Jun 10 05:42:48 cento7-logconv-2.novalocal    info: Resource dummy01 tries to start.
Jun 10 05:42:48 cento7-logconv-2.novalocal    info: Resource dummy01 started. (rc=0)
Jun 10 05:42:48 cento7-logconv-2.novalocal    info: Resource dummy02 tries to start.
Jun 10 05:42:48 cento7-logconv-2.novalocal    info: Resource dummy02 started. (rc=0)
Jun 10 05:42:48 cento7-logconv-2.novalocal    info: Resource dummy03 tries to start.
Jun 10 05:42:48 cento7-logconv-2.novalocal    info: Resource dummy03 started. (rc=0)
Jun 10 05:42:48 cento7-logconv-2.novalocal    info: Resource dummy01 : Started on cento7-logconv-2novalocal
Jun 10 05:42:48 cento7-logconv-2.novalocal    info: Resource dummy03 : Started on cento7-logconv-2novalocal
Jun 10 05:42:48 cento7-logconv-2.novalocal    info: fail-over succeeded.

再現環境と頂いたha-logを比較したところ、池田さんの環境では下記のようなログが出力されていないようです。
Jun 10 05:42:48 cento7-logconv-2 crmd[2249]:  notice: te_rsc_command: Initiating action 4: start dummy01_start_0 on cento7-logconv-2.novalocal (local)

logconvではこのログを使ってリソースのステータスを管理してますので、
ログの出力がないとフェイルオーバーが成功したと判定できません。

なぜこのログが出力されなかったのかまではわかりませんでした。

以上、ご確認よろしくお願いいたします。

> -----Original Message-----
> From: linux****@lists*****
> [mailto:linux****@lists*****] On Behalf Of
> tsuki****@gmail*****
> Sent: Thursday, June 09, 2016 9:19 AM
> To: linux****@lists*****
> Subject: [Linux-ha-jp] DCノード故障時のlogconvの出力について
> 
> お世話になっております。
> 
> 池田です。
> 
> 
> 
> 下記の環境で2ノードクラスタを構築しています。
> 
> 
> 
> # cat /etc/redhat-release
> 
> Red Hat Enterprise Linux Server release 6.5 (Santiago)
> 
> 
> 
> # rpm -qa | grep pacemaker-all
> 
> pacemaker-all-1.1.12-1.1.el6.noarch
> 
> 
> 
> # rpm -qa | grep pm_logconv-cs
> 
> pm_logconv-cs-2.0-1.el6.noarch
> 
> 
> 
> 
> 
> Dummyリソースが3つ設定されたgroupを1号機で起動させた状態で
> 
> 1号機を停止(パワーオフ)すると、期待通り2号機にフェイルオーバしましたが
> 
> 2号機のlogconvに下記のメッセージが出力されました。
> 
> logconvのメッセージだけを確認すると、フェイルオーバに失敗しているようにみ
> えます。
> 
> 
> 
> Jun 8 19:25:58 acdbv-ha02 warning: Node acdbv-ha01 is lost
> 
> Jun 8 19:25:58 acdbv-ha02    info: Set DC node to acdbv-ha02.
> 
> Jun 8 19:26:00 acdbv-ha02   error: Start to fail-over.
> 
> Jun 8 19:26:00 acdbv-ha02    info: Resource dummy01 tries to start.
> 
> Jun 8 19:26:00 acdbv-ha02    info: Resource dummy01 started. (rc=0)
> 
> Jun 8 19:26:00 acdbv-ha02    info: Resource dummy02 tries to start.
> 
> Jun 8 19:26:00 acdbv-ha02    info: Resource dummy02 started. (rc=0)
> 
> Jun 8 19:26:00 acdbv-ha02    info: Resource dummy03 tries to start.
> 
> Jun 8 19:26:00 acdbv-ha02    info: Resource dummy03 started. (rc=0)
> 
> Jun 8 19:26:00 acdbv-ha02   error: fail-over failed.
> 
> 
> 
> 故障発生時のDCは1号機です。
> 
> DC故障を伴うフェイルオーバ発生時に
> 
> logconvに上記のメッセージが出力されるのは仕様でしょうか。
> 
> それともlogconvの設定が不足しているためDC故障に対応できていないのでしょう
> か。
> 
> 動作確認に使用したlogconvの設定およびha-logを添付いたします。
> 
> 
> 
> 以上よろしくお願いいたします。
> 
> 
> 
> NTT先端技術
> 
> 池田淳子

_______________________________________________
Linux-ha-japan mailing list
Linux****@lists*****
http://lists.osdn.me/mailman/listinfo/linux-ha-japan

-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
다운로드 
-------------- next part --------------
$B%F%-%9%H7A<00J30$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
$B%U%!%$%kL>(B: 20160613-logconv.zip
$B7?(B:         application/zip
$B%5%$%:(B:     568436 $B%P%$%H(B
$B @ bL@(B:       $BL5$7(B
URL:        http://lists.osdn.me/mailman/archives/linux-ha-japan/attachments/20160614/f28c0327/attachment-0001.zip 



Linux-ha-japan メーリングリストの案内
Back to archive index