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

Back to archive index

飯田 雄介 iiday****@intel*****
2016年 6月 16日 (木) 17:07:58 JST


池田さん

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

> -----Original Message-----
> From: tsuki****@gmail***** [mailto:tsuki****@gmail*****]
> Sent: Tuesday, June 14, 2016 1:10 AM
> To: 飯田 雄介; linux****@lists*****
> Subject: RE: [Linux-ha-jp]DCノード故障時のlogconvの出力について
> 
> 飯田さん
> 
> 
> 
> 池田です。
> 
> ご連絡ありがとうございます。
> 
> 
> 
> 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.」と
> いう
> 
> 出力が得られることを想定していましたが、期待通りになりませんでした。
フェイルオーバー関連のログが出力されるのはDCノード上のログだけなので、
「非DCノードでリソース故障」をさせた場合もDCノード上のログに
「error: Start to fail-over.」と「info: fail-over succeeded(またはfailed).」が出力されているはずです。
> 
> 
> 
> ログファイル: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関数から当該メッセージが出力されない理由が不明(環境依存や
> バージョンの組み合わせ?設定不足?)
こちらでもvSphere5.1環境にRHEL6.6ゲスト(Errata適用無)を作って
動作を確認してみましたが、上記のログは出力されていました。

ロジック上このログが出ないということは通常考えられないので、
例えば、syslogのフィルタ設定などが動いて該当のログ出力が止められてしまっている
などを可能性を確認してみてはいかがでしょうか?
# 頂いたha-log内に"local"と付くログが見当たらないので、"local"という単語で引っ掛けて消してるとか?

> - 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でログ出力周りで大幅な変更はないですよね。
問題にログに関しては1.1.12と1.1.13で特に変更はないはずです。
# 1.1.14ではログ全体から関数名の出力がなくなりました。

以上、よろしくお願いいたします。
> 
> 
> 
> 
> 
> 以上よろしくお願いいたします。
> 
> 
> 
> 池田淳子
> 
> 
> 
> 
> 
> 
> 
> 差出人: 飯田 雄介 <mailto:iiday****@intel*****>
> 送信日時: 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
> 
> 




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