[Linux-ha-jp] pm_diskdの起動でエラーが発生?

Back to archive index

和田 伸一朗 wada.****@jp*****
2012年 3月 13日 (火) 20:31:18 JST


松尾さん

こんにちは。
和田です。

詳しいご説明ありがとうございます。

RAについては理解できました。
diskdなどはハードコーディングなんですね。。。
#crm_mon -Aで確認したり、ソースを見る必要があるのですね。

pingdに関してはpingを使っていました。
詳しい経緯は忘れたのですが、OSバンドルの制限だったか、IPv6も
使えるようにしておきたかったかだと思っています。

詳細はもう少し検証してみようと思いますが、

host_list="192.168.1.1 192.168.2.1" \
multiplier="100" \

としているので、pingの場合は100 * 2で200が設定されるかと思っています。
#crm_mon -Aでも確認したら200と出ているので。

このたびはお忙しいところいろいろとご教示いただき、
ありがとうございました。

> 和田さん
> 松尾です。
>
> 2012年3月13日17:20 和田 伸一朗<wada.****@jp*****>:
>> 松尾さん
>>
>> こんにちは。
>> 和田です。
>>
>> コメントおよびご指摘ありがとうございます。
>> diskdのパッチは参考にさせて頂きたいと思います。
>>
>> diskd(リソース)の設定に関して少しよくわかってないのでご教示ください。
>>
>>> diskd に SUCCESS という属性はなく、
>>> diskd は、正常時は、normal, 異常時は ERROR になります。
>>
>> とありますが、OCF_SUCCESSを返却していたので、SUCCESSかと
>> 思っていたのですが、認識が違っていたようですね。
>> #pingdは矛盾していますね。。。
>
> この辺りは分かりづらいですよね。。。
> RA には、大きく分けて二つの種類があると思うとわかりやすいと思います。
>
> diskdやpingd のような属性値変更型RAと、通常のRAです。
>
> 通常のRAは、起動・監視・停止時に、制御対象が故障するとそれをPacemakerが
> 検知します。
>
> diskd, pingd は、RA起動時に監視専用のデーモンを起動します。
> 監視では、RAはデーモンプロセス正常性しか監視しておらず、ネットワークやディスク
> 故障が発生してRAの故障とはなりません。
> 代わりに、故障時はデーモンがPacemakerに属性値変更として通知します。
>
> この属性値が、crm_mon -A のNode Attributesとして表示され、
> 通常のリソースと連携させたい場合は、このlocation設定を使って、
> この属性値と連携させます。
>
> 今回のdiskd は、属性名として "diskd_set" (和田さんが設定) 、
> 属性値は diskd の場合、normal または ERROR となります。(ハードコーディング)
>
>
> ちなみに、今回設定されている
> ocf:pacemaker:ping  RA
> と、Linux-HA Japan でよく紹介している設定例の
> ocf:pacemaker:pingd
>
> は別物なので注意してください。(pingはpingdの間違え?)
> ※ ping RAの方は使ったことないので詳しい動作はわかりません。
>
>>
>> 各リソースの属性はどのように確認すればよいのでしょうか?
>>
>> diskdのruleは・・・変ですね。
>> #pingdもよろしくはないですね。。。
>>
>>>>           rule -INFINITY: defined ping_set and ping_set lt 200 \
>>>>           rule -INFINITY: defined diskd_set and diskd_set eq SUCCESS
>>
>> ではなく、
>>
>> rule -INFINITY: not_defined ping_set or ping_set lt 200 \
>> rule -INFINITY: not_defined diskd_set or diskd_set eq ERROR
>>
>> とすべきなのですね。
>
> diskdはこの設定で意図した動作になると思います。
>
> ping は、multiplier="100" が設定されているので、ping 成功時に属性値として "100" が
> 設定されるはずなので、"200未満の場合(lt 200)” という条件式にすると、ping成功時も
> 式は TRUE なので、リソースは常に起動できないと思います。
> (ping ではなく pingd RAを前提に話していますが・・・)
>
>      rule -INFINITY: not_defined ping_set or ping_set lt 200
>
> 以上よろしくお願い致します。
> _______________________________________________
> Linux-ha-japan mailing list
> Linux****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan





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