[Linux-cluster] Bug with /usr/share/system-config-cluster/misc/cluster.ng ?

Digimer linux at alteeve.com
Mon Mar 15 01:00:05 UTC 2010


I've narrowed down my problem;

   My cluster.conf validates so long as I don't add an extra argument to 
the <fence ...> argument. For example, this validates:

------------------------------------------
<?xml version="1.0"?>
<cluster name="an_san" config_version="1">
         <cman two_node="1" expected_votes="1">
         </cman>
         <clusternodes>
                 <clusternode name="an_san01.alteeve.com" nodeid="1">
                         <fence>
                                 <method name="node_assassin">
                                         <device name="ariel" port="01"/>
                                 </method>
                         </fence>
                 </clusternode>
                 <clusternode name="an_san02.alteeve.com" nodeid="2">
                         <fence>
                                 <method name="node_assassin">
                                         <device name="ariel" port="02"/>
                                 </method>
                         </fence>
                 </clusternode>
         </clusternodes>

         <fencedevices>
                 <fencedevice name="ariel" agent="fence_an" 
ipaddr="ariel.alteeve.com" login="ariel" passwd="gr0tt0"/>
         </fencedevices>
         <fence_daemon post_join_delay="60">
         </fence_daemon>
</cluster>
------------------------------------------

But if I change the <device...> argument to:

------------------------------------------
                         <fence>
                                 <method name="node_assassin">
                                         <device name="ariel" port="01" 
action="off"/>
                                 </method>
                         </fence>
------------------------------------------

It gives me this error:
------------------------------------------
Relax-NG validity error : Extra element fence in interleave
/etc/cluster/cluster.conf:5: element clusternodes: Relax-NG validity 
error : Element clusternode failed to validate content
/etc/cluster/cluster.conf:6: element clusternode: Relax-NG validity 
error : Element clusternodes has extra content: clusternode
/etc/cluster/cluster.conf:3: element cman: Relax-NG validity error : 
Expecting element clusternodes, got cman
/etc/cluster/cluster.conf:2: element cluster: Relax-NG validity error : 
Invalid sequence in interleave
/etc/cluster/cluster.conf:2: element cluster: Relax-NG validity error : 
Element cluster failed to validate content
/etc/cluster/cluster.conf:9: element device: validity error : IDREF 
attribute name references an unknown ID "ariel"
/etc/cluster/cluster.conf:9: element device: validity error : IDREF 
attribute name references an unknown ID "ariel"
/etc/cluster/cluster.conf fails to validate
------------------------------------------

I am going to argue that this is a bug in the validation because 'man 
fenced' shows a specific example (See: 'Dual path, redundant power'):

------------------------------------------
       When  using  power  switches  to fence nodes with dual power 
supplies, the agents must be told to turn off both power ports before 
restoring power to either port.  The default
        off-on behavior of the agent could result in the power never 
being fully disabled to the node.

          <clusternode name="node1" nodeid="1">
                  <fence>
                     <method name="single">
                        <device name="nps1" hw-param="x" action="off"/>
                        <device name="nps2" hw-param="x" action="off"/>
                        <device name="nps1" hw-param="x" action="on"/>
                        <device name="nps2" hw-param="x" action="on"/>
                     </method>
                  </fence>
          </clusternode>
------------------------------------------

Has something changed in what is valid?

-- 
Madison Kelly   647-501-5200
E-Mail:         mkelly at alteeve.com
AN!Whitepapers: http://alteeve.com
Node Assassin:  http://nodeassassin.org




More information about the Linux-cluster mailing list