[ClusterLabs] Coming in 1.1.14: Fencing topology based on node attribute

Ken Gaillot kgaillot at redhat.com
Tue Sep 8 15:23:03 UTC 2015


Pacemaker's upstream master branch has a new feature that will be part
of the eventual 1.1.14 release.

Fencing topology is used when a node requires multiple fencing devices
(in combination or as fallbacks). Currently, topologies must be
specified by node name (or a regular expression matching node names).

The new feature allows topologies to specified by node attribute.

For example, imagine a data center where all devices in rack #1 use
fence devices apc01 and apc02, while all devices in rack #2 use fence
devices apc03 and apc04.

Previously, if node1 was in rack #1, you'd have to register a fencing
topology by its name, which at the XML level would look like:

   <fencing-topology>
      <fencing-level id="node1-1" index="1" target="node1"
          devices="apc01,apc02"/>
   </fencing-topology>


With the new feature, you could instead register a topology for all
hosts that have a node attribute "rack" whose value is "1":

   <fencing-topology>
      <fencing-level id="rack-1-1" index="1" target="rack=1"
          devices="apc01,apc02"/>
   </fencing-topology>


You would assign that attribute to all nodes in that rack, e.g.:

   crm_attribute --type nodes --node node1 --name rack --update 1


If a server is moved to a different rack, simply update the value of its
attribute and it will use that rack's fencing configuration. Or if a
rack gets a new fencing device, you only have to update the fencing
configuration once rather than for every node in the rack.

The syntax accepts either '=' or ':' as the separator for the name/value
pair, so target="rack:1" would work in the XML as well.
-- 
Ken Gaillot <kgaillot at redhat.com>




More information about the Users mailing list