[Pacemaker] Fixed! - Re: Problem with dual-PDU fencing node with redundant PSUs

Digimer lists at alteeve.ca
Fri Jun 28 15:29:35 UTC 2013


On 06/28/2013 10:36 AM, Lars Marowsky-Bree wrote:
>>>> primitive fence_n01_psu1_off stonith:fence_apc_snmp \
>>>>         params ipaddr="an-p01" pcmk_reboot_action="off" port="1"
>>>> pcmk_host_list="an-c03n01.alteeve.ca"
>>>> primitive fence_n01_psu1_on stonith:fence_apc_snmp \
>>>>         params ipaddr="an-p01" pcmk_reboot_action="on" port="1"
>>>> pcmk_host_list="an-c03n01.alteeve.ca"
>>>
>>> So every device twice, including location constraints? I see potential
>>> for optimization by improving how the fence code handles this ... That's
>>> abhorrently complex. (And I'm not sure the 'action' parameter ought to
>>> be overwritten.)
>>
>> Andrew said yesterday that this will no longer be the case as of 1.1.10.
>> From then on, 'action="..."' will be honoured.
> 
> But that will not help you. Because you need to *still* have two
> separate fence actions for this fence topology thing to work, so a
> global action won't help; or am I missin something?

In rhcs, you can control the fence device's action using 'action="..."'
attribute in the <device ...> element. So for us rhcs migrants, we
expect that action="..." in the fence primitive will have the same
effect. As of now, as you know, this is ignored in favour of the global
action.

Yes, you can use 'pcmk_reboot_action' to force the issue, but it's a
non-obvious requirement that many people will not realize is needed
unless they carefully test their fence actions (there are no warnings
about the action being ignored). I only realized it failed because I
jumped behind my cluster and actually watched the PDU outlets cycle
improperly.

So Andrew's decision to honour 'action="..."' is, in fact, a big help.

>>> Glad you got it working, though.
>>
>> I've debated writing a "fence_apc_multi" that takes "reboot" and two or
>> more PDU addresses/ports and does the break out for you.
> 
> That is so ugly, please, no :-(

It's also "ugly" to have four fence primitives per node's PDU. At least
this way I can abstract the ugliness away from the users and make the
pcmk config more readable.

In fact, I've been thinking of a general purpose wrapper that takes the
desired fence agent as an attribute. I can call it simply 'fence_multi'.

>> This would make the pacemaker config a lot cleaner, but that solution
>> would work for APC agent only. A "fix" in stonith would be portable to
>> all agents.
> 
> Exactly.

This is ideal, but I don't know where it would fall on his priority stack.

-- 
Digimer
Papers and Projects: https://alteeve.ca/w/
What if the cure for cancer is trapped in the mind of a person without
access to education?




More information about the Pacemaker mailing list