1 <?xml version="1.0" encoding="iso-8859-1"?>
3 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
4 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
6 <refentry id="ctdbd.1">
9 <refentrytitle>ctdbd</refentrytitle>
10 <manvolnum>1</manvolnum>
11 <refmiscinfo class="source">ctdb</refmiscinfo>
12 <refmiscinfo class="manual">CTDB - clustered TDB database</refmiscinfo>
16 <refname>ctdbd</refname>
17 <refpurpose>The CTDB cluster daemon</refpurpose>
22 <command>ctdbd</command>
23 <arg rep="repeat"><replaceable>OPTION</replaceable></arg>
28 <title>DESCRIPTION</title>
30 ctdbd is the main CTDB daemon.
34 Note that ctdbd is not usually invoked directly. It is invoked
35 via <citerefentry><refentrytitle>ctdbd_wrapper</refentrytitle>
36 <manvolnum>1</manvolnum></citerefentry> or via the initscript.
40 See <citerefentry><refentrytitle>ctdb</refentrytitle>
41 <manvolnum>7</manvolnum></citerefentry> for an overview of CTDB.
46 <title>GENERAL OPTIONS</title>
50 <term>-d, --debug=<parameter>DEBUGLEVEL</parameter></term>
53 This option sets the debug level to DEBUGLEVEL, which
54 controls what will be written by the logging
55 subsystem. The default is 2.
58 See the <citetitle>DEBUG LEVELS</citetitle> section in
59 <citerefentry><refentrytitle>ctdb</refentrytitle>
60 <manvolnum>7</manvolnum></citerefentry> for more
67 <term>--dbdir=<parameter>DIRECTORY</parameter></term>
70 DIRECTORY on local storage where ctdbd keeps a local copy of
71 TDB databases. This directory is local for each node and
72 should not be stored on the shared cluster filesystem.
75 Defaults to <filename>/usr/local/var/lib/ctdb</filename>.
81 <term>--dbdir-persistent=<parameter>DIRECTORY</parameter></term>
84 DIRECTORY on local storage where ctdbd keeps a local copy of
85 persistent TDB databases. This directory is local for each
86 node and should not be stored on the shared cluster
90 Defaults to <filename>/usr/local/var/lib/ctdb/persistent</filename>.
96 <term>--dbdir-state=<parameter>DIRECTORY</parameter></term>
99 DIRECTORY on local storage where ctdbd keep internal state
100 TDB files. This directory is local for each node and
101 should not be stored on the shared cluster filesystem.
104 Defaults to <filename>/usr/local/var/lib/ctdb/state</filename>.
110 <term>-i, --interactive</term>
113 Enable interactive mode. This will make ctdbd run in the
114 foreground and not detach from the terminal. By default
115 ctdbd will detach itself and run in the background as a
122 <term>--listen=<parameter>IPADDR</parameter></term>
125 IPADDR is the private IP address that ctdbd will bind to.
128 By default ctdbd will select the first address from the
129 nodes list that in can bind to. See also the
130 <citetitle>Private address</citetitle> section in
131 <citerefentry><refentrytitle>ctdb</refentrytitle>
132 <manvolnum>7</manvolnum></citerefentry>.
135 This option is only required when automatic address
136 detection can not be used. This can be the case when
137 running multiple ctdbd daemons/nodes on the same physical
138 host (usually for testing), using InfiniBand for the
139 private network or on Linux when sysctl
140 net.ipv4.ip_nonlocal_bind=1.
146 <term>--logging=<parameter>STRING</parameter></term>
149 STRING specifies where ctdbd will write its log. The
151 file:<filename>/usr/local/var/log/log.ctdb</filename>.
158 <term>file:<parameter>FILENAME</parameter></term>
161 FILENAME where ctdbd will write its log. This is usually
162 <filename>/usr/local/var/log/log.ctdb</filename>.
167 <term>syslog<optional>:<parameter>METHOD</parameter></optional></term>
170 CTDB will log to syslog. By default this will use
174 Under heavy loads syslog(3) can block if the syslog
175 daemon processes messages too slowly. This can
176 cause CTDB to block when logging.
179 If METHOD is specified then it specifies an
180 extension that causes logging to be done in a
181 non-blocking mode. Note that <emphasis>this may
182 cause messages to be dropped</emphasis>. METHOD
187 <term>nonblocking</term>
190 CTDB will log to syslog via
191 <filename>/dev/log</filename> in non-blocking
200 CTDB will log to syslog via UDP to
201 localhost:514. The syslog daemon must be
202 configured to listen on (at least)
203 localhost:514. Most syslog daemons will log
204 the messages with hostname "localhost" - this
205 is a limitation of the implementation, for
206 compatibility with more syslog daemons.
211 <term>udp-rfc5424</term>
214 As with "udp" but messages are sent in RFC5424
215 format. This method will log the correct
216 hostname but is not as widely implemented in
229 <term>--max-persistent-check-errors=<parameter>NUM</parameter></term>
232 NUM specifies the maximum number of health check failures
233 allowed for persistent databases during startup.
236 The default value is 0. Setting this to non-zero allows a
237 node with unhealthy persistent databases to startup and
238 join the cluster as long as there is another node with
239 healthy persistent databases.
245 <term>--no-lmaster</term>
248 This argument specifies that this node can NOT become an lmaster
249 for records in the database. This means that it will never show up
250 in the vnnmap. This feature is primarily used for making a cluster
251 span across a WAN link and use CTDB as a WAN-accelerator.
254 Please see the <citetitle>REMOTE CLUSTER NODES</citetitle>
255 section in <citerefentry><refentrytitle>ctdb</refentrytitle>
256 <manvolnum>7</manvolnum></citerefentry> for more
263 <term>--no-recmaster</term>
266 This argument specifies that this node can NOT become a recmaster
267 for the database. This feature is primarily used for making a cluster
268 span across a WAN link and use CTDB as a WAN-accelerator.
271 Please see the <citetitle>REMOTE CLUSTER NODES</citetitle>
272 section in <citerefentry><refentrytitle>ctdb</refentrytitle>
273 <manvolnum>7</manvolnum></citerefentry> for more
280 <term>--nosetsched</term>
283 Normally ctdbd will change its scheduler to run as a
284 real-time process. This is the default mode for a normal
285 ctdbd operation to gurarantee that ctdbd always gets the CPU
286 cycles that it needs.
289 This option is used to tell ctdbd to
290 <emphasis>not</emphasis> run as a real-time process and
291 instead run ctdbd as a normal userspace process. This can
292 be used on a platform where real-time scheduling is not
296 This is also useful for debugging and when you want to run
297 ctdbd under valgrind or gdb. (You don't want to attach
298 valgrind or gdb to a real-time process.)
304 <term>--notification-script=<parameter>FILENAME</parameter></term>
307 FILENAME specifying a script to be invoked by ctdbd when
308 certain state changes occur.
312 <filename>/usr/local/etc/ctdb/notify.sh</filename>.
315 Please see the <citetitle>NOTIFICATION SCRIPT</citetitle>
316 section in <citerefentry><refentrytitle>ctdb</refentrytitle>
317 <manvolnum>7</manvolnum></citerefentry> for more
324 <term>--reclock=<parameter>LOCK</parameter></term>
327 LOCK specifies the cluster-wide mutex used to detect and
328 prevent a partitioned cluster (or "split brain").
331 For information about the recovery lock please see the
332 <citetitle>RECOVERY LOCK</citetitle> section in
333 <citerefentry><refentrytitle>ctdb</refentrytitle>
334 <manvolnum>7</manvolnum></citerefentry>.
340 <term>--script-log-level=<parameter>DEBUGLEVEL</parameter></term>
343 This option sets the debug level of event script output to
344 DEBUGLEVEL. The default is ERR.
347 See the <citetitle>DEBUG LEVELS</citetitle> section in
348 <citerefentry><refentrytitle>ctdb</refentrytitle>
349 <manvolnum>7</manvolnum></citerefentry> for more
356 <term>--start-as-disabled</term>
359 This makes ctdbd start in the DISABLED state.
362 To allow the node to host public IP addresses and
363 services, it must be manually enabled using the
364 <command>ctdb enable</command> command.
367 Please see the <citetitle>NODE STATES</citetitle> section
368 in <citerefentry><refentrytitle>ctdb</refentrytitle>
369 <manvolnum>7</manvolnum></citerefentry> for more
370 information about the DISABLED state.
376 <term>--start-as-stopped</term>
379 This makes ctdbd start in the STOPPED state.
382 To allow the node to take part in the cluster it must be
383 manually continued with the the <command>ctdb
384 enable</command> command.
387 Please see the <citetitle>NODE STATES</citetitle> section
388 in <citerefentry><refentrytitle>ctdb</refentrytitle>
389 <manvolnum>7</manvolnum></citerefentry> for more
390 information about the STOPPED state.
396 <term>--transport=tcp|infiniband</term>
399 This option specifies which transport to use for ctdbd
400 internode communications. The default is "tcp".
403 The "infiniband" support is not regularly tested.
409 <term>-?, --help</term>
412 Display a summary of options.
421 <title>DEBUGGING OPTIONS</title>
426 <term>--nopublicipcheck</term>
429 This option is used when testing with multiple local
430 daemons on a single machine. It disables checks related
431 to public IP addresses.
437 <term>--sloppy-start</term>
440 This is debugging option. This speeds up the initial
441 recovery during startup at the expense of some consistency
442 checking. <emphasis>Don't use this option in
443 production</emphasis>.
449 <term>--torture</term>
452 This option is only used for development and testing of
453 CTDB. It adds artificial errors and failures to the
454 common codepaths in ctdbd to verify that ctdbd can recover
455 correctly from failures.
458 <emphasis>Do not use this option</emphasis> unless you are
459 developing and testing new functionality in CTDB.
465 <term>--valgrinding</term>
468 This is a debugging option. This option is only used when
469 debugging ctdbd. This enables additional debugging
470 capabilities and implies --nosetsched.
479 <title>SEE ALSO</title>
481 <citerefentry><refentrytitle>ctdb</refentrytitle>
482 <manvolnum>1</manvolnum></citerefentry>,
484 <citerefentry><refentrytitle>ctdbd_wrapper</refentrytitle>
485 <manvolnum>1</manvolnum></citerefentry>,
487 <citerefentry><refentrytitle>onnode</refentrytitle>
488 <manvolnum>1</manvolnum></citerefentry>,
490 <citerefentry><refentrytitle>ctdb</refentrytitle>
491 <manvolnum>7</manvolnum></citerefentry>,
493 <citerefentry><refentrytitle>ctdb-tunables</refentrytitle>
494 <manvolnum>7</manvolnum></citerefentry>,
496 <ulink url="http://ctdb.samba.org/"/>
503 This documentation was written by
512 <holder>Andrew Tridgell</holder>
513 <holder>Ronnie Sahlberg</holder>
517 This program is free software; you can redistribute it and/or
518 modify it under the terms of the GNU General Public License as
519 published by the Free Software Foundation; either version 3 of
520 the License, or (at your option) any later version.
523 This program is distributed in the hope that it will be
524 useful, but WITHOUT ANY WARRANTY; without even the implied
525 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
526 PURPOSE. See the GNU General Public License for more details.
529 You should have received a copy of the GNU General Public
530 License along with this program; if not, see
531 <ulink url="http://www.gnu.org/licenses"/>.