1

ペースメーカー + corosync クラスター内

Last updated: Thu Oct 22 21:16:33 2015 Last change: Thu Oct 22 17:25:13 2015 via cibadmin on aws015 Stack: corosync Current DC: aws015 (2887647247) - partition with quorum Version: 1.1.10-42f2063 4 Nodes configured 16 Resources configured

次の状況があります。一部のアプリケーションのステータスをチェックし、それをリソースとして作成する python LSB スクリプトを記述します。

primitive pm2_app_gardenscapesDynamo_lsb lsb:pm2_app_gardenscapesDynamo \ op start interval="0" timeout="60s" \ op stop interval="0" timeout="60s" \ op monitor interval="30s" timeout="60s" on-fail="restart" \ meta failure-timeout="10s" migration-threshold="1"

このチェックは、ハングする可能性のあるユーティリティによって行われます (LSB スクリプトがそのユーティリティを起動し、そのユーティリティからの応答を待ちます)。そのため、Pacemaker がタイムアウトに達すると、Python スクリプトが強制終了されますが、ハングしたユーティリティはメモリ内にまだ存在し、終了しません。

この状況を防ぐことは可能ですか?

4

1 に答える 1

1

最新のペースメーカー 1.1.12 以降にアップグレードする必要があります。

これが発生する理由は、Pacemaker が独自のプロセス グループでリソース エージェントを開始するためです。操作がタイムアウトすると、Pacemaker (1.1.10) は RA のみを強制終了し、開始された可能性のある子プロセスを「孤立」したままにします。

バージョン 1.1.12 は代わりにプロセス グループ全体を強制終了します。

関連するコードは lib/common/mainloop.c、関数 child_kill_helper にあります。

于 2016-04-13T22:02:59.147 に答える