ctdb-tools: Drop ctdb --socket option
[metze/samba-autobuild/.git] / ctdb / doc / ctdbd.conf.5.xml
index 8a62c86615b29fdbc097e464561361623f3e67ab..1685692a106f06e83d4756d65e13b6a78c554fb6 100644 (file)
@@ -23,7 +23,7 @@
     <para>
       This file contains CTDB configuration variables that are affect
       the operation of CTDB.  The default location of this file is
-      <filename>/etc/ctdb/ctdbd.conf</filename>.
+      <filename>/usr/local/etc/ctdb/ctdbd.conf</filename>.
     </para>
 
     <para>
       <filename>/etc/default/ctdb</filename> (Debian).  However, these
       files should be reserved for variables used by the initscript.
       A historical alternative is
-      <filename>/etc/ctdb/sysconfig/ctdb</filename> - this is
+      <filename>/usr/local/etc/ctdb/sysconfig/ctdb</filename> - this is
       deprecated.
     </para>
 
   </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>/var/run/ctdb/ctdbd.pid</filename>.
-           Corresponds to <option>--pidfile</option>.
-         </para>
-       </listitem>
-      </varlistentry>
-
-    </variablelist>
-  </refsect1>
-
   <refsect1>
     <title>
       GLOBAL CONFIGURATION
        </listitem>
       </varlistentry>
 
-      <varlistentry>
-       <term>CTDB_VARDIR=<parameter>DIRECTORY</parameter></term>
-       <listitem>
-         <para>
-           DIRECTORY containing CTDB files that are modified at
-           runtime.
-         </para>
-         <para>
-           Defaults to <filename>/var/ctdb</filename>, unless
-           <filename>/var/lib/ctdb</filename> already exists in which
-           case it is used.
-         </para>
-       </listitem>
-      </varlistentry>
-
-
     </variablelist>
   </refsect1>
 
        <term>CTDB_DBDIR=<parameter>DIRECTORY</parameter></term>
        <listitem>
          <para>
-           Defaults to <varname>CTDB_VARDIR</varname>.  Corresponds to
-           <option>--dbdir</option>.
+           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>
        </listitem>
       </varlistentry>
        <term>CTDB_DBDIR_PERSISTENT=<parameter>DIRECTORY</parameter></term>
        <listitem>
          <para>
-           Defaults to <varname>CTDB_VARDIR</varname>/persistent.
+           Defaults to <filename>/usr/local/var/lib/ctdb/persistent</filename>.
+         </para>
+         <para>
            Corresponds to <option>--dbdir-persistent</option>.
          </para>
        </listitem>
        <term>CTDB_DBDIR_STATE=<parameter>DIRECTORY</parameter></term>
        <listitem>
          <para>
-           Defaults to <varname>CTDB_VARDIR</varname>/state.
+           Defaults to <filename>/usr/local/var/lib/ctdb/state</filename>.
+         </para>
+         <para>
            Corresponds to <option>--dbdir-state</option>.
          </para>
        </listitem>
        <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>/etc/ctdb/events.d</filename>.  Corresponds to
-           <option>--event-script-dir</option>.
-         </para>
-       </listitem>
-      </varlistentry>
-
       <varlistentry>
        <term>CTDB_LOGGING=<parameter>STRING</parameter></term>
        <listitem>
          <para>
            STRING specifies where ctdbd will write its log. The
-           default is file:<filename>/var/log/log.ctdb</filename> or
-           similar - the prefix may differ depending on how CTDB was
-           built.  Corresponds to <option>--logging</option>.
+           default is
+           file:<filename>/usr/local/var/log/log.ctdb</filename>.
+           Corresponds to <option>--logging</option>.
          </para>
          <para>
            Valid values are:
              <listitem>
                <para>
                  FILENAME where ctdbd will write its log. This is usually
-                 <filename>/var/log/log.ctdb</filename>.
+                 <filename>/usr/local/var/log/log.ctdb</filename>.
                </para>
              </listitem>
            </varlistentry>
       </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>/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>
        <listitem>
          <para>
            No default, usually
-           <filename>/etc/ctdb/notify.sh</filename>.  Corresponds to
+           <filename>/usr/local/etc/ctdb/notify.sh</filename>.  Corresponds to
            <option>--notification-script</option>.
          </para>
        </listitem>
        </listitem>
       </varlistentry>
 
+      <varlistentry>
+       <term>CTDB_NODE_ADDRESS=<parameter>IPADDR</parameter></term>
+       <listitem>
+         <para>
+           IPADDR is the private IP address that ctdbd will bind to.
+           Corresponds to <option>--listen</option>.
+         </para>
+         <para>
+           By default ctdbd will select the first address from the
+           nodes list that in can bind to.  See also
+           <citetitle>CTDB_NODES</citetitle>.
+         </para>
+         <para>
+           This option is only required when automatic address
+           detection can not be used.  This can be the case when
+           running multiple ctdbd daemons/nodes on the same physical
+           host (usually for testing), using InfiniBand for the
+           private network or on Linux when sysctl
+           net.ipv4.ip_nonlocal_bind=1.
+         </para>
+       </listitem>
+      </varlistentry>
+
       <varlistentry>
        <term>CTDB_PUBLIC_ADDRESSES=<parameter>FILENAME</parameter></term>
        <listitem>
          <para>
            No default, usually
-           <filename>/etc/ctdb/public_addresses</filename>.
+           <filename>/usr/local/etc/ctdb/public_addresses</filename>.
            Corresponds to <option>--public-addresses</option>.
          </para>
        </listitem>
       </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>/tmp/ctdb.socket</filename>.
-           Corresponds to <option>--socket</option>.
-         </para>
-         <para>
-           If you change this then you probably want to set this in
-           root's enviroment (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>/etc/ctdb/natgw_nodes</filename> when enabled.
+             <filename>/usr/local/etc/ctdb/natgw_nodes</filename> when enabled.
            </para>
          </listitem>
        </varlistentry>
          </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>
       <refsect3>
        <title>Example</title>
        <screen>
-CTDB_NATGW_NODES=/etc/ctdb/natgw_nodes
+CTDB_NATGW_NODES=/usr/local/etc/ctdb/natgw_nodes
 CTDB_NATGW_PRIVATE_NETWORK=192.168.1.0/24
 CTDB_NATGW_DEFAULT_GATEWAY=10.0.0.1
 CTDB_NATGW_PUBLIC_IP=10.0.0.227/24
@@ -661,7 +624,7 @@ CTDB_NATGW_PUBLIC_IFACE=eth0
          always reachable would look like this:
        </para>
        <screen>
-CTDB_NATGW_NODES=/etc/ctdb/natgw_nodes
+CTDB_NATGW_NODES=/usr/local/etc/ctdb/natgw_nodes
 CTDB_NATGW_PRIVATE_NETWORK=192.168.1.0/24
 CTDB_NATGW_PUBLIC_IP=10.0.0.227/24
 CTDB_NATGW_PUBLIC_IFACE=eth0
@@ -723,7 +686,7 @@ CTDB_NATGW_STATIC_ROUTES=10.0.0.0/24
 
            <para>
              No default, usually
-             <filename>/etc/ctdb/policy_routing</filename> when enabled.
+             <filename>/usr/local/etc/ctdb/policy_routing</filename> when enabled.
            </para>
          </listitem>
        </varlistentry>
@@ -789,7 +752,7 @@ CTDB_NATGW_STATIC_ROUTES=10.0.0.0/24
       <refsect3>
        <title>Example</title>
        <screen>
-CTDB_PER_IP_ROUTING_CONF=/etc/ctdb/policy_routing
+CTDB_PER_IP_ROUTING_CONF=/usr/local/etc/ctdb/policy_routing
 CTDB_PER_IP_ROUTING_RULE_PREF=100
 CTDB_PER_IP_ROUTING_TABLE_ID_LOW=1000
 CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
@@ -798,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>
 
@@ -814,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>
@@ -950,51 +995,22 @@ CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
       <title>NFS</title>
 
       <para>
-       This includes parameters for the kernel NFS server and the
-       user-space
-       <ulink url="https://github.com/nfs-ganesha/nfs-ganesha/wiki">NFS-Ganesha</ulink>
-       server.
+       This includes parameters for the kernel NFS server.
+       Alternative NFS subsystems (such as <ulink
+       url="https://github.com/nfs-ganesha/nfs-ganesha/wiki">NFS-Ganesha</ulink>)
+       can be integrated using <varname>CTDB_NFS_CALLOUT</varname>.
       </para>
 
       <refsect3>
-       <title>Eventscripts</title>
+       <title>Eventscript</title>
 
        <simplelist>
          <member><filename>60.nfs</filename></member>
-         <member><filename>60.ganesha</filename></member>
        </simplelist>
       </refsect3>
 
       <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_GANESHA_REC_SUBDIR<parameter>SUBDIR</parameter></term>
-         <listitem>
-           <para>
-             SUBDIR is the name of a top-level subdirectory in the
-             first cluster filesystem.  This subdirectory is used to
-             allow communication between NFS-Ganesha and the
-             <filename>60.ganesha</filename> script.
-           </para>
-           <para>
-             Default is ".ganesha".
-           </para>
-         </listitem>
-       </varlistentry>
-
        <varlistentry>
          <term>CTDB_MANAGES_NFS=yes|no</term>
          <listitem>
@@ -1008,67 +1024,55 @@ CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
        </varlistentry>
 
        <varlistentry>
-         <term>CTDB_MONITOR_NFS_THREAD_COUNT=yes|no</term>
+         <term>CTDB_NFS_CALLOUT=<parameter>COMMAND</parameter></term>
          <listitem>
            <para>
-             Whether to monitor the NFS kernel server thread count.
+             COMMAND specifies the path to a callout to handle
+             interactions with the configured NFS system, including
+             startup, shutdown, monitoring.
            </para>
            <para>
-             This works around a limitation in some NFS initscripts
-             where some threads can be stuck in host filesystem calls
-             (perhaps due to slow storage), a restart occurs, some
-             threads don't exit, the start only adds the missing
-             number of threads, the stuck threads exit, and the
-             result is a lower than expected thread count.  Note that
-             if you must also set <varname>RPCNFSDCOUNT</varname>
-             (RedHat/Debian) or <varname>USE_KERNEL_NFSD_NUMBER</varname>
-             (SUSE) in your NFS configuration so the monitoring code
-             knows how many threads there should be - if neither of
-             these are set then this option will be ignored.
-           </para>
-           <para>
-             Default is no.
+             Default is the included
+             <command>nfs-linux-kernel-callout</command>.
            </para>
          </listitem>
        </varlistentry>
 
        <varlistentry>
-         <term>CTDB_NFS_DUMP_STUCK_THREADS=<parameter>NUM</parameter></term>
+         <term>CTDB_NFS_CHECKS_DIR=<parameter>DIRECTORY</parameter></term>
          <listitem>
            <para>
-             NUM is the number of NFS kernel server threads to dump
-             stack traces for if some are still alive after stopping
-             NFS during a restart.
+             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>
-             Default is 5.  Set this to 0 to disable this feature.
-           </para>
-         </listitem>
-       </varlistentry>
-
-       <varlistentry>
-         <term>CTDB_NFS_SERVER_MODE=kernel|ganesha</term>
-         <listitem>
-           <para>
-             Selects which NFS server to be managed.
+             CTDB_NFS_CHECKS_DIR can be used to point to different
+             sets of checks for different NFS servers.
            </para>
            <para>
-             This replaces the deprecated variable
-             <varname>NFS_SERVER_MODE</varname>.
+             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 "kernel".
+             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_KNFSD_ALIVE_CHECK=yes|no</term>
+         <term>CTDB_NFS_SKIP_SHARE_CHECK=yes|no</term>
          <listitem>
            <para>
-             During monitoring, should CTDB skip the
-             <command>rpcinfo</command> check that is used to see if
-             the NFS kernel server is functional.
+             As part of monitoring, should CTDB skip the check for
+             the existence of each directory exported via NFS.  This
+             may be desirable if there is a large number of exports.
            </para>
            <para>
              Default is no.
@@ -1077,46 +1081,54 @@ CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
        </varlistentry>
 
        <varlistentry>
-         <term>CTDB_NFS_SKIP_SHARE_CHECK=yes|no</term>
+         <term>CTDB_RPCINFO_LOCALHOST=<parameter>IPADDR</parameter>|<parameter>HOSTNAME</parameter></term>
          <listitem>
            <para>
-             As part of monitoring, should CTDB skip the check for
-             the existence of each directory exported via NFS.  This
-             may be desirable if there is a large number of exports.
+             IPADDR or HOSTNAME indicates the address that
+             <command>rpcinfo</command> should connect to when doing
+             <command>rpcinfo</command> check on IPv4 RPC service during
+             monitoring.  Optimally this would be "localhost".
+             However, this can add some performance overheads.
            </para>
            <para>
-             Default is no.
+             Default is "127.0.0.1".
            </para>
          </listitem>
        </varlistentry>
 
        <varlistentry>
-         <term>CTDB_RPCINFO_LOCALHOST=<parameter>IPADDR</parameter>|<parameter>HOSTNAME</parameter></term>
+         <term>CTDB_RPCINFO_LOCALHOST6=<parameter>IPADDR</parameter>|<parameter>HOSTNAME</parameter></term>
          <listitem>
            <para>
              IPADDR or HOSTNAME indicates the address that
              <command>rpcinfo</command> should connect to when doing
-             <command>rpcinfo</command> check on RPC service during
-             monitoring.  Optimally this would be "localhost".
-             However, this can add some performance overheads.
+             <command>rpcinfo</command> check on IPv6 RPC service
+             during monitoring.  Optimally this would be "localhost6"
+             (or similar).  However, this can add some performance
+             overheads.
            </para>
            <para>
-             Default is "127.0.0.1".
+             Default is "::1".
            </para>
          </listitem>
        </varlistentry>
 
        <varlistentry>
-         <term>CTDB_SKIP_GANESHA_NFSD_CHECK=yes|no</term>
+         <term>CTDB_NFS_STATE_FS_TYPE=<parameter>TYPE</parameter></term>
          <listitem>
            <para>
-             As part of monitoring, should CTDB skip the check for
-             the existence of each directory exported via
-             NFS-Ganesha.  This may be desirable if there is a large
-             number of exports.
+             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>
-             Default is no.
+             The directory where a clustered NFS' shared state will be
+             located. No default.
            </para>
          </listitem>
        </varlistentry>
@@ -1324,91 +1336,91 @@ CTDB_PER_IP_ROUTING_TABLE_ID_HIGH=9000
 
       <para>
        CTDB can experience seemingly random (performance and other)
-       issues if system resources become too contrained.  Options in
-       this section can be enabled to allow certain system resources to
-       be checked.
+       issues if system resources become too constrained.  Options in
+       this section can be enabled to allow certain system resources
+       to be checked.  They allows warnings to be logged and nodes to
+       be marked unhealthy when system resource usage reaches the
+       configured thresholds.
+      </para>
+
+      <para>
+       Some checks are enabled by default.  It is recommended that
+       these checks remain enabled or are augmented by extra checks.
+       There is no supported way of completely disabling the checks.
       </para>
 
       <refsect3>
        <title>Eventscripts</title>
 
        <simplelist>
-         <member><filename>00.ctdb</filename></member>
-         <member><filename>40.fs_use</filename></member>
+         <member><filename>05.system</filename></member>
        </simplelist>
 
        <para>
-         Filesystem usage monitoring is in
-         <filename>40.fs_use</filename>.  This eventscript is not
-         enabled by default.  Use <command>ctdb
-         enablescript</command> to enable it.
+         Filesystem and memory usage monitoring is in
+         <filename>05.system</filename>.
        </para>
       </refsect3>
 
       <variablelist>
 
        <varlistentry>
-         <term>CTDB_CHECK_FS_USE=<parameter>FS-LIMIT-LIST</parameter></term>
+         <term>CTDB_MONITOR_FILESYSTEM_USAGE=<parameter>FS-LIMIT-LIST</parameter></term>
          <listitem>
            <para>
              FS-LIMIT-LIST is a space-separated list of
-             <parameter>FILESYSTEM</parameter>:<parameter>LIMIT</parameter>
-             pairs indicating that a node should be flagged unhealthy
-             if the space used on FILESYSTEM reaches LIMIT%.
-           </para>
-
-           <para>
-             No default.
+             <parameter>FILESYSTEM</parameter>:<parameter>WARN_LIMIT</parameter><optional>:<parameter>UNHEALTHY_LIMIT</parameter></optional>
+             triples indicating that warnings should be logged if the
+             space used on FILESYSTEM reaches WARN_LIMIT%.  If usage
+             reaches UNHEALTHY_LIMIT then the node should be flagged
+             unhealthy.  Either WARN_LIMIT or UNHEALTHY_LIMIT may be
+             left blank, meaning that check will be omitted.
            </para>
 
            <para>
-             Note that this feature uses the
-             <filename>40.fs_use</filename> eventscript, which is not
-             enabled by default.  Use <command>ctdb
-             enablescript</command> to enable it.
+             Default is to warn for each filesystem containing a
+             database directory (<envar>CTDB_DBDIR</envar>,
+             <envar>CTDB_DBDIR_PERSISTENT</envar>,
+             <envar>CTDB_DBDIR_STATE</envar>) with a threshold of
+             90%.
            </para>
          </listitem>
        </varlistentry>
 
        <varlistentry>
-         <term>CTDB_CHECK_SWAP_IS_NOT_USED=yes|no</term>
+         <term>CTDB_MONITOR_MEMORY_USAGE=<parameter>MEM-LIMITS</parameter></term>
          <listitem>
            <para>
-             Should a warning be logged if swap space is in use.
+             MEM-LIMITS takes the form
+             <parameter>WARN_LIMIT</parameter><optional>:<parameter>UNHEALTHY_LIMIT</parameter></optional>
+             indicating that warnings should be logged if memory
+             usage reaches WARN_LIMIT%.  If usage reaches
+             UNHEALTHY_LIMIT then the node should be flagged
+             unhealthy.  Either WARN_LIMIT or UNHEALTHY_LIMIT may be
+             left blank, meaning that check will be omitted.
            </para>
            <para>
-             Default is no.
+             Default is 80, so warnings will be logged when memory
+             usage reaches 80%.
            </para>
          </listitem>
        </varlistentry>
 
        <varlistentry>
-         <term>CTDB_MONITOR_FREE_MEMORY=<parameter>NUM</parameter></term>
+         <term>CTDB_MONITOR_SWAP_USAGE=<parameter>SWAP-LIMITS</parameter></term>
          <listitem>
            <para>
-             NUM is a lower limit on available system memory, expressed
-             in megabytes.  If this is set and the amount of available
-             memory falls below this limit then some debug information
-             will be logged, the node will be disabled and then CTDB
-             will be shut down.
+             SWAP-LIMITS takes the form
+             <parameter>WARN_LIMIT</parameter><optional>:<parameter>UNHEALTHY_LIMIT</parameter></optional>
+              indicating that warnings should be logged if
+             swap usage reaches WARN_LIMIT%.  If usage reaches
+             UNHEALTHY_LIMIT then the node should be flagged
+             unhealthy.  Either WARN_LIMIT or UNHEALTHY_LIMIT may be
+             left blank, meaning that check will be omitted.
            </para>
            <para>
-             No default.
-           </para>
-         </listitem>
-       </varlistentry>
-
-       <varlistentry>
-         <term>CTDB_MONITOR_FREE_MEMORY_WARN=<parameter>NUM</parameter></term>
-         <listitem>
-           <para>
-             NUM is a lower limit on available system memory, expressed
-             in megabytes.  If this is set and the amount of available
-             memory falls below this limit then a warning will be
-             logged.
-           </para>
-           <para>
-             No default.
+             Default is 25, so warnings will be logged when swap
+             usage reaches 25%.
            </para>
          </listitem>
        </varlistentry>
@@ -1437,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>
@@ -1553,7 +1552,7 @@ CTDB_SET_MonitorInterval=20
       </varlistentry>
 
       <varlistentry>
-       <term>CTDB_ETCDIR=<parameter>DIRECTORY</parameter></term>
+       <term>CTDB_SYS_ETCDIR=<parameter>DIRECTORY</parameter></term>
        <listitem>
          <para>
            DIRECTORY containing system configuration files.  This is
@@ -1607,6 +1606,18 @@ CTDB_SET_MonitorInterval=20
        </listitem>
       </varlistentry>
 
+      <varlistentry>
+       <term>CTDB_MAX_OPEN_FILES=<parameter>NUM</parameter></term>
+       <listitem>
+         <para>
+           NUM is the maximum number of open files.
+         </para>
+         <para>
+           There is no default.
+         </para>
+       </listitem>
+      </varlistentry>
+
       <varlistentry>
        <term>CTDB_RC_LOCAL=<parameter>FILENAME</parameter></term>
        <listitem>
@@ -1636,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>
@@ -1671,7 +1668,7 @@ CTDB_SET_MonitorInterval=20
            <manvolnum>1</manvolnum></citerefentry> to be run under
            <citerefentry><refentrytitle>valgrind</refentrytitle>
            <manvolnum>1</manvolnum></citerefentry> with logs going to
-           <filename>/var/log/ctdb_valgrind</filename>.  If neither
+           <filename>/usr/local/var/log/ctdb_valgrind</filename>.  If neither
            "yes" nor "no" then the value is assumed to be a COMMAND
            (e.g. a <command>valgrind</command> variation, a
            <citerefentry><refentrytitle>gdb</refentrytitle>
@@ -1686,6 +1683,19 @@ CTDB_SET_MonitorInterval=20
        </listitem>
       </varlistentry>
 
+      <varlistentry>
+       <term>CTDB_VARDIR=<parameter>DIRECTORY</parameter></term>
+       <listitem>
+         <para>
+           DIRECTORY containing CTDB files that are modified at
+           runtime.
+         </para>
+         <para>
+           Defaults to <filename>/usr/local/var/lib/ctdb</filename>.
+         </para>
+       </listitem>
+      </varlistentry>
+
     </variablelist>
 
   </refsect1>
@@ -1695,10 +1705,10 @@ CTDB_SET_MonitorInterval=20
     <title>FILES</title>
 
     <simplelist>
-      <member><filename>/etc/ctdb/ctdbd.conf</filename></member>
+      <member><filename>/usr/local/etc/ctdb/ctdbd.conf</filename></member>
       <member><filename>/etc/sysconfig/ctdb</filename></member>
       <member><filename>/etc/default/ctdb</filename></member>
-      <member><filename>/etc/ctdb/sysconfig/ctdb</filename></member>
+      <member><filename>/usr/local/etc/ctdb/sysconfig/ctdb</filename></member>
     </simplelist>
   </refsect1>