[ClusterLabs] Antw: Re: Trying to understand the default action of a fence agent

Ulrich Windl Ulrich.Windl at rz.uni-regensburg.de
Wed Jan 9 02:22:24 EST 2019


>>> Ken Gaillot <kgaillot at redhat.com> schrieb am 08.01.2019 um 17:55 in
Nachricht
<a05ebc149d9e4c636d8616eb4697d2d63dd1024b.camel at redhat.com>:
> On Tue, 2019‑01‑08 at 07:35 ‑0600, Bryan K. Walton wrote:
>> Hi,
>> 
>> I'm building a two node cluster with Centos 7.6 and DRBD.  These
>> nodes
>> are connected upstream to two Brocade switches.  I'm trying to enable
>> fencing by using Digimer's fence_dlink_snmp script (
>> https://github.com/digimer/fence_dlink_snmp ).
>> 
>> I've renamed the script to fence_brocade_snmp and have 
>> created my stonith resources using the following syntax:
>> 
>> pcs ‑f stonith_cfg stonith create fenceStorage1‑centipede \
>> fence_brocade_snmp pcmk_host_list=storage1‑drbd ipaddr=10.40.1.1 \
>> community=xxxxxxx port=193 pcmk_off_action="off" \
>> pcmk_monitor_timeout=120s 
> 
> FYI pcmk_off_action="off" is the default
> 
> If you want the cluster to request an "off" command instead of a
> "reboot" when fencing a node, set the stonith‑action cluster property
> to "off".
> 
>> When I run "stonith‑admin storage1‑drbd", from my other node, 
>> the switch ports do not get disabled.  However, when I run
>> "stonith_admin ‑F storage1‑drbd", the switch ports DO get disabled.
> 
> The pacemaker CLI commands don't always say anything when invalid
> option combinations are used (fixing that is one of the many things on
> the "would‑be‑nice" list). Your first command does nothing (and the

IMHO it should be on the "reqired" list ;-)
I my C programs I usually create an error message, set some flag, and continue
parsing the rest of the options (just to flag as many errors as possible, not
just the first one), then I quit if errors were found. Then I'll check the
parameters set so far for errors, If so, I'll quit. The remaining erros are not
syntax errors, then...

...option processing
                                        bad_arg(option, optarg);
                                        result = 1;
...more options
        if ( result != 0 )
        {
                if ( result == 1 )
                        usage();
                goto quit;
        }
...check parameters and initialize
        if ( result != 0 )
                goto quit;
...now start doing something useful
...

Regards,
Ulrich

> forthcoming 2.0.1 version will give a usage error). The second command
> is the correct command to fence a node (‑F for "off" or ‑B for
> "reboot").
> 
>> If I run "pcs stonith fence storage1‑drbd", from the other node, the
>> response is: "Node: storage1‑drbd fenced", but, again, the switch
>> ports
>> are still enabled.  I'm forced to instead run: "pcs stonith fence
>> storage1‑drbd ‑‑off" to get the ports to be disabled.
> 
> I believe "pcs stonith fence" by default sends a reboot command, so it
> sounds like your fence agent doesn't implement reboot (or implements it
> incorrectly, or perhaps a reboot is equivalent to disabling the ports
> then re‑enabling them and so is not useful). I'd use stonith‑action=off 
> as mentioned above.
> 
>> What I'm trying to figure out, is under what scenario should I see
>> the
>> ports actually get disabled?  My concern is that, for example, I can
>> stop the cluster on storage1‑drbd, and the logs will show that the
>> fencing was successful, and then my resources get moved.  But when I
>> check on the switch ports that are connected to storage1‑drbd, they
>> are
>> still enabled.  So, the node does not appear to be really fenced. 
>> 
>> Do I need to create my stonith resource differently to actually
>> disable
>> those ports?
>> 
>> Thank you for your time.  I am greatly appreciative.
>> 
>> Sincerely,
>> Bryan Walton
>> 
>> 
>> ‑‑ 
>> Bryan K. Walton                                           319‑337‑
>> 3877 
>> Linux Systems Administrator                 Leepfrog Technologies,
>> Inc 
>> 
>> ‑‑‑‑‑ End forwarded message ‑‑‑‑‑
>> 
> 
> _______________________________________________
> Users mailing list: Users at clusterlabs.org 
> https://lists.clusterlabs.org/mailman/listinfo/users 
> 
> Project Home: http://www.clusterlabs.org 
> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf 
> Bugs: http://bugs.clusterlabs.org 






More information about the Users mailing list