Provided by: cman_3.1.7-0ubuntu2_amd64 bug


       fence_node - a utility to run fence agents


       fence_node [OPTIONS] nodename


       This  utility  runs a fence agent against nodename.  The agent and args are taken from the
       running cluster configuration based on cluster.conf(5).

       fence_node is a wrapper around the libfence functions:  fence_node()  and  unfence_node().
       These  libfence  functions  use libccs to read the node fencing configuration, which means
       that corosync (with cman and ccs) must be running to use fence_node(8).

       The fenced(8) daemon is the main user  of  libfence:fence_node(),  and  the  configuration
       details for that function are given in the fenced(8) man page.

   Fencing vs. Unfencing
       The main use for unfencing is with storage/SAN (non-power) agents.

       When  using  power-based  fencing  agents, the fencing action itself is supposed to turn a
       node back on after first turning the power off (this happens automatically with a "reboot"
       action, and needs to be configured explicitly as "off" + "on" otherwise.)

       When  using storage-based fencing agents, the fencing action is not allowed to re-enable a
       node after disabling it.  Re-enabling a fenced node is only safe once the  node  has  been
       rebooted.   A natural way to re-enable a fenced node's access to storage, is for that node
       to re-enable the access itself during its startup process.  The  cman  init  script  calls
       fence_node  -U  (nodename  defaults  to  local nodename when unfencing).  Unfencing a node
       without an <unfence> configuration (see below) is a no-op.

       The basic differences between fencing and unfencing:


       1. libfence: fence_node(), command line: fence_node nodename

       2. Turns off or disables a node.

       3. Agents run with the default action of "off", "disable" or "reboot".

       4. Performed by a cluster node against another node that fails (by the fenced daemon).


       1. libfence: unfence_node(), command line: fence_node -U nodename

       2. Turns on or enables a node.

       3. Agents run with the explicit action of "on" or "enable".

       4. Performed by a cluster node "against" itself during startup (by the cman init script).


       -U     Unfence the node, default local node name.

       -v     Show fence agent results, -vv to also show agent args.

       -h     Print a help message describing available options, then exit.

       -V     Print program version information, then exit.


       The Unfencing/unfence_node() configuration is very  similar  to  the  Fencing/fence_node()
       configuration  shown  in  fenced(8).   Unfencing  is  only  performed  for  a node with an
       <unfence> section:

       <clusternode name="node1" nodeid="1">

       The <unfence> section does not contain <method> sections like the  <fence>  section  does.
       It  contains  <device> references directly, which mirror the corresponding device sections
       for <fence>, with the notable addition of the explicit action of "on"  or  "enable".   The
       same  <fencedevice>  is  referenced by both fence and unfence <device> lines, and the same
       per-node args should be repeated.

       <clusternode name="node1" nodeid="1">
               <method name="1">
               <device name="myswitch" foo="x"/>

               <device name="myswitch" foo="x" action="on"/>