ctdb-scripts: Drop 10.external event script
[vlendec/samba-autobuild/.git] / ctdb / doc / ctdbd.conf.5.xml
index 15ee7467d3932da575cef66ae7547d42bb4f30d8..c59f80628262b797f5e7d6fcc5b40189ae6a4a27 100644 (file)
 
   </refsect1>
 
-  <refsect1>
-    <title>
-      INITSCRIPT CONFIGURATION
-    </title>
-
-    <para>
-      Some options must be available to the initscript so they need to
-      be set in the distribution-specific initscript configuration,
-      such as <filename>/etc/sysconfig/ctdb</filename> or
-      <filename>/etc/default/ctdb</filename>.
-    </para>
-
-    <variablelist>
-
-      <varlistentry>
-       <term>CTDB_PIDFILE=<parameter>FILENAME</parameter></term>
-       <listitem>
-         <para>
-           FILENAME is the name of the file used to contain the
-           process ID (PID) of the main CTDB daemon when it is
-           running.  This is passed from the initscript to
-           <citerefentry><refentrytitle>ctdbd_wrapper</refentrytitle>
-           <manvolnum>1</manvolnum></citerefentry>.
-         </para>
-
-         <para>
-           Default is <filename>/usr/local/var/run/ctdb/ctdbd.pid</filename>.
-           Corresponds to <option>--pidfile</option>.
-         </para>
-       </listitem>
-      </varlistentry>
-
-    </variablelist>
-  </refsect1>
-
   <refsect1>
     <title>
       GLOBAL CONFIGURATION
          <para>
            Defaults to <filename>/usr/local/var/lib/ctdb</filename>.
          </para>
+         <para>
+           Apart from a DIRECTORY, this can take a special value of
+           the form
+           <option>tmpfs</option><optional>:<parameter>OPTIONS</parameter></optional>.
+           OPTIONS is a comma-separated list of any permissible
+           options to the tmpfs filesystem.  The only pre-specified
+           default is <option>mode=700</option>, which can
+           overridden by specifying <option>mode</option> in
+           OPTIONS.  It probably makes sense to specify a maximum
+           <option>size</option>.
+         </para>
          <para>
            Corresponds to <option>--dbdir</option>.
          </para>
        <term>CTDB_DEBUGLEVEL=<parameter>DEBUGLEVEL</parameter></term>
        <listitem>
          <para>
-           Default is NOTICE (2).  Corresponds to <option>-d</option> or
+           Default is NOTICE.  Corresponds to <option>-d</option> or
            <option>--debug</option>.
          </para>
        </listitem>
       </varlistentry>
 
-      <varlistentry>
-       <term>CTDB_EVENT_SCRIPT_DIR=<parameter>DIRECTORY</parameter></term>
-       <listitem>
-         <para>
-           Default is <varname>CTDB_BASE</varname>/events.d, so usually
-           <filename>/usr/local/etc/ctdb/events.d</filename>.  Corresponds to
-           <option>--event-script-dir</option>.
-         </para>
-       </listitem>
-      </varlistentry>
-
       <varlistentry>
        <term>CTDB_LOGGING=<parameter>STRING</parameter></term>
        <listitem>
       </varlistentry>
 
       <varlistentry>
-       <term>CTDB_LVS_PUBLIC_IP=<parameter>IPADDR</parameter></term>
+       <term>CTDB_NODES=<parameter>FILENAME</parameter></term>
        <listitem>
          <para>
-           No default.  Corresponds to "<option>--lvs</option>
-           <option>--single-public-ip IPADDR"</option>.
+           Default is <varname>CTDB_BASE</varname>/nodes, so usually
+           <filename>/usr/local/etc/ctdb/nodes</filename>.  Corresponds to
+           <option>--nlist</option>.
          </para>
        </listitem>
       </varlistentry>
 
       <varlistentry>
-       <term>CTDB_NODES=<parameter>FILENAME</parameter></term>
+       <term>CTDB_NOSETSCHED=yes|no</term>
        <listitem>
          <para>
-           Default is <varname>CTDB_BASE</varname>/nodes, so usually
-           <filename>/usr/local/etc/ctdb/nodes</filename>.  Corresponds to
-           <option>--nlist</option>.
+           Defaults to no.  Corresponds to <option>--nosetsched</option>.
+         </para>
+         <para>
+           Usually CTDB runs with real-time priority.  If you are running
+           CTDB on a platform that does not support real-time priority,
+           you can set this.
          </para>
        </listitem>
       </varlistentry>
        <term>CTDB_PUBLIC_ADDRESSES=<parameter>FILENAME</parameter></term>
        <listitem>
          <para>
-           No default, usually
+           Default is
            <filename>/usr/local/etc/ctdb/public_addresses</filename>.
            Corresponds to <option>--public-addresses</option>.
          </para>
       </varlistentry>
 
       <varlistentry>
-       <term>CTDB_RECOVERY_LOCK=<parameter>FILENAME</parameter></term>
+       <term>CTDB_RECOVERY_LOCK=<parameter>LOCK</parameter></term>
        <listitem>
          <para>
-           Defaults to
+           LOCK specifies the cluster-wide mutex used to detect and
+           prevent a partitioned cluster (or "split brain").
+         </para>
+         <para>
+           No default, but the default configuration file specifies
            <filename>/some/place/on/shared/storage</filename>, which
            should be change to a useful value.  Corresponds to
            <option>--reclock</option>.
        <term>CTDB_SCRIPT_LOG_LEVEL=<parameter>DEBUGLEVEL</parameter></term>
        <listitem>
          <para>
-           Defaults to ERR (0).  Corresponds to
+           Defaults to ERR.  Corresponds to
            <option>--script-log-level</option>.
          </para>
        </listitem>
       </varlistentry>
 
-      <varlistentry>
-       <term>CTDB_SOCKET=<parameter>FILENAME</parameter></term>
-       <listitem>
-         <para>
-           Defaults to <filename>/usr/local/var/run/ctdb/ctdbd.socket</filename>.
-           Corresponds to <option>--socket</option>.
-         </para>
-         <para>
-           If you change this then you probably want to set this in
-           root's environment (perhaps in a file in
-           <filename>/etc/profile.d</filename>) so that you can use
-           the <citerefentry><refentrytitle>ctdb</refentrytitle>
-           <manvolnum>1</manvolnum></citerefentry> command in a
-           straightforward manner.
-         </para>
-       </listitem>
-      </varlistentry>
-
       <varlistentry>
        <term>CTDB_START_AS_DISABLED=yes|no</term>
        <listitem>
            <para>
              File format:
              <screen>
-<parameter>IPADDR</parameter>
+<parameter>IPADDR</parameter> <optional>slave-only</optional>
              </screen>
            </para>
+           <para>
+             IPADDR is the private IP address of each node in the NAT
+             gateway group.
+           </para>
+           <para>
+             If "slave-only" is specified then the corresponding node
+             can not be the NAT gateway master node.  In this case
+             <varname>CTDB_NATGW_PUBLIC_IFACE</varname> and
+             <varname>CTDB_NATGW_PUBLIC_IP</varname> are optional and
+             unused.
+           </para>
            <para>
              No default, usually
              <filename>/usr/local/etc/ctdb/natgw_nodes</filename> when enabled.
          </listitem>
        </varlistentry>
 
-       <varlistentry>
-         <term>CTDB_NATGW_SLAVE_ONLY=yes|no</term>
-         <listitem>
-           <para>
-             When set to "yes" a node can not be a NAT gateway master
-             node.  In this case
-             <varname>CTDB_NATGW_PUBLIC_IFACE</varname> and
-             <varname>CTDB_NATGW_PUBLIC_IP</varname> are optional
-             and unused.
-           </para>
-           <para>
-             Default is no.
-           </para>
-         </listitem>
-       </varlistentry>
-
        <varlistentry>
          <term>CTDB_NATGW_STATIC_ROUTES=<parameter>IPADDR/MASK[@GATEWAY]</parameter> ...</term>
          <listitem>
@@ -811,6 +761,81 @@ CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
 
     </refsect2>
 
+    <refsect2>
+      <title>LVS</title>
+
+      <para>
+       For a general description see the <citetitle>LVS</citetitle>
+       section in <citerefentry><refentrytitle>ctdb</refentrytitle>
+       <manvolnum>7</manvolnum></citerefentry>.
+      </para>
+
+      <refsect3>
+       <title>Eventscript</title>
+
+       <simplelist>
+         <member><filename>91.lvs</filename></member>
+       </simplelist>
+      </refsect3>
+
+      <variablelist>
+
+       <varlistentry>
+         <term>CTDB_LVS_NODES=<parameter>FILENAME</parameter></term>
+         <listitem>
+           <para>
+             FILENAME contains the list of nodes that belong to the
+             same LVS group.
+           </para>
+           <para>
+             File format:
+             <screen>
+<parameter>IPADDR</parameter> <optional>slave-only</optional>
+             </screen>
+           </para>
+           <para>
+             IPADDR is the private IP address of each node in the LVS
+             group.
+           </para>
+           <para>
+             If "slave-only" is specified then the corresponding node
+             can not be the LVS master node.  In this case
+             <varname>CTDB_LVS_PUBLIC_IFACE</varname> and
+             <varname>CTDB_LVS_PUBLIC_IP</varname> are optional and
+             unused.
+           </para>
+           <para>
+             No default, usually
+             <filename>/usr/local/etc/ctdb/lvs_nodes</filename> when enabled.
+           </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry>
+         <term>CTDB_LVS_PUBLIC_IFACE=<parameter>INTERFACE</parameter></term>
+         <listitem>
+           <para>
+             INTERFACE is the network interface that clients will use
+             to connection to <varname>CTDB_LVS_PUBLIC_IP</varname>.
+             This is optional for slave-only nodes.
+             No default.
+           </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry>
+         <term>CTDB_LVS_PUBLIC_IP=<parameter>IPADDR</parameter></term>
+         <listitem>
+           <para>
+             CTDB_LVS_PUBLIC_IP is the LVS public address.  No
+             default.
+         </para>
+         </listitem>
+       </varlistentry>
+
+      </variablelist>
+    </refsect2>
+
     <refsect2>
       <title>MISCELLANEOUS NETWORK CONFIGURATION</title>
 
@@ -827,6 +852,13 @@ CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
              display the node as "PARTIALLYONLINE".
            </para>
 
+           <para>
+             Note that CTDB_PARTIALLY_ONLINE_INTERFACES=yes is
+             incompatible with NAT gateway, since NAT gateway relies
+             on the interface configured by CTDB_NATGW_PUBLIC_IFACE
+             to be up.
+           </para>
+
            <para>
              Default is "no".
            </para>
@@ -979,19 +1011,6 @@ CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
 
       <variablelist>
 
-       <varlistentry>
-         <term>CTDB_CLUSTER_FILESYSTEM_TYPE=gpfs</term>
-         <listitem>
-           <para>
-             The type of cluster filesystem to use with NFS-ganesha.
-             Currently only "gpfs" is supported.
-           </para>
-           <para>
-             Default is "gpfs".
-           </para>
-         </listitem>
-       </varlistentry>
-
        <varlistentry>
          <term>CTDB_MANAGES_NFS=yes|no</term>
          <listitem>
@@ -1019,6 +1038,34 @@ CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
          </listitem>
        </varlistentry>
 
+       <varlistentry>
+         <term>CTDB_NFS_CHECKS_DIR=<parameter>DIRECTORY</parameter></term>
+         <listitem>
+           <para>
+             Specifies the path to a DIRECTORY containing files that
+             describe how to monitor the responsiveness of NFS RPC
+             services.  See the README file for this directory for an
+             explanation of the contents of these "check" files.
+           </para>
+           <para>
+             CTDB_NFS_CHECKS_DIR can be used to point to different
+             sets of checks for different NFS servers.
+           </para>
+           <para>
+             One way of using this is to have it point to, say,
+             <filename>/usr/local/etc/ctdb/nfs-checks-enabled.d</filename>
+             and populate it with symbolic links to the desired check
+             files.  This avoids duplication and is upgrade-safe.
+           </para>
+           <para>
+             Default is
+             <filename>/usr/local/etc/ctdb/nfs-checks.d</filename>,
+             which contains NFS RPC checks suitable for Linux kernel
+             NFS.
+           </para>
+         </listitem>
+       </varlistentry>
+
        <varlistentry>
          <term>CTDB_NFS_SKIP_SHARE_CHECK=yes|no</term>
          <listitem>
@@ -1066,6 +1113,26 @@ CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
          </listitem>
        </varlistentry>
 
+       <varlistentry>
+         <term>CTDB_NFS_STATE_FS_TYPE=<parameter>TYPE</parameter></term>
+         <listitem>
+           <para>
+             The type of filesystem used for a clustered NFS' shared
+             state. No default.
+           </para>
+         </listitem>
+       </varlistentry>
+
+       <varlistentry>
+         <term>CTDB_NFS_STATE_MNT=<parameter>DIR</parameter></term>
+         <listitem>
+           <para>
+             The directory where a clustered NFS' shared state will be
+             located. No default.
+           </para>
+         </listitem>
+       </varlistentry>
+
       </variablelist>
 
     </refsect2>
@@ -1382,19 +1449,6 @@ CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
          </listitem>
        </varlistentry>
 
-       <varlistentry>
-         <term>CTDB_SERVICE_AUTOSTARTSTOP=yes|no</term>
-         <listitem>
-           <para>
-             When CTDB should start and stop services if they become
-             managed or unmanaged.
-           </para>
-           <para>
-             Default is no.
-           </para>
-         </listitem>
-       </varlistentry>
-
       </variablelist>
 
     </refsect2>
@@ -1593,20 +1647,6 @@ CTDB_SET_MonitorInterval=20
        </listitem>
       </varlistentry>
 
-      <varlistentry>
-       <term>CTDB_SCRIPT_DEBUGLEVEL=<parameter>NUM</parameter></term>
-       <listitem>
-         <para>
-           NUM is the level debugging messages printed by CTDB
-           scripts.  Setting this to a higher number (e.g. 4) will
-           cause some scripts to log more messages.
-         </para>
-         <para>
-           Default is 2.
-         </para>
-       </listitem>
-      </varlistentry>
-
       <varlistentry>
        <term>CTDB_SUPPRESS_COREFILE=yes|no</term>
        <listitem>