4 .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
6 .\" Manual: CTDB - clustered TDB database
10 .TH "CTDBD" "1" "12/10/2015" "ctdb" "CTDB \- clustered TDB database"
11 .\" -----------------------------------------------------------------
12 .\" * Define some portability stuff
13 .\" -----------------------------------------------------------------
14 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15 .\" http://bugs.debian.org/507673
16 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
17 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
20 .\" -----------------------------------------------------------------
21 .\" * set default formatting
22 .\" -----------------------------------------------------------------
23 .\" disable hyphenation
25 .\" disable justification (adjust text to left margin only)
27 .\" -----------------------------------------------------------------
28 .\" * MAIN CONTENT STARTS HERE *
29 .\" -----------------------------------------------------------------
31 ctdbd \- The CTDB cluster daemon
33 .HP \w'\fBctdbd\fR\ 'u
34 \fBctdbd\fR [\fIOPTION\fR...]
37 ctdbd is the main CTDB daemon\&.
39 Note that ctdbd is not usually invoked directly\&. It is invoked via
40 \fBctdbd_wrapper\fR(1)
41 or via the initscript\&.
45 for an overview of CTDB\&.
48 \-d, \-\-debug=\fIDEBUGLEVEL\fR
50 This option sets the debug level to DEBUGLEVEL, which controls what will be written by the logging subsystem\&. The default is 2\&.
56 for more information\&.
59 \-\-dbdir=\fIDIRECTORY\fR
61 DIRECTORY on local storage where ctdbd keeps a local copy of TDB databases\&. This directory is local for each node and should not be stored on the shared cluster filesystem\&.
63 This directory would usually be
67 \-\-dbdir\-persistent=\fIDIRECTORY\fR
69 DIRECTORY on local storage where ctdbd keeps a local copy of persistent TDB databases\&. This directory is local for each node and should not be stored on the shared cluster filesystem\&.
71 This directory would usually be
72 /var/lib/ctdb/persistent
75 \-\-dbdir\-state=\fIDIRECTORY\fR
77 DIRECTORY on local storage where ctdbd keep internal state TDB files\&. This directory is local for each node and should not be stored on the shared cluster filesystem\&.
79 This directory would usually be
83 \-\-event\-script\-dir=\fIDIRECTORY\fR
85 DIRECTORY where the CTDB event scripts are stored\&. See the
89 for more information\&.
92 \fBCTDB_BASE\fR/events\&.d, so usually
93 /etc/ctdb/events\&.d, which is part of the CTDB installation\&.
96 \-\-listen=\fIIPADDR\fR
98 IPADDR is the private IP address that ctdbd will bind to\&.
100 By default ctdbd will select the first address from the nodes list that in can bind to\&. See also
103 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\&.
106 \-\-logging=\fISTRING\fR
108 STRING specifies where ctdbd will write its log\&. The default is file:/var/log/log\&.ctdb
109 or similar \- the prefix may differ depending on how CTDB was built\&.
115 FILENAME where ctdbd will write its log\&. This is usually
116 /var/log/log\&.ctdb\&.
119 syslog[:\fIMETHOD\fR]
121 CTDB will log to syslog\&. By default this will use the syslog(3) API\&.
123 Under heavy loads syslog(3) can block if the syslog daemon processes messages too slowly\&. This can cause CTDB to block when logging\&.
125 If METHOD is specified then it specifies an extension that causes logging to be done in a non\-blocking mode\&. Note that
126 \fIthis may cause messages to be dropped\fR\&. METHOD must be one of:
130 CTDB will log to syslog via
132 in non\-blocking mode\&.
137 CTDB will log to syslog via UDP to localhost:514\&. The syslog daemon must be configured to listen on (at least) localhost:514\&. Most syslog daemons will log the messages with hostname "localhost" \- this is a limitation of the implementation, for compatibility with more syslog daemons\&.
142 As with "udp" but messages are sent in RFC5424 format\&. This method will log the correct hostname but is not as widely implemented in syslog daemons\&.
149 This option is used to activate the LVS capability on a CTDB node\&. Please see the
153 for more information\&.
156 \-\-max\-persistent\-check\-errors=\fINUM\fR
158 NUM specifies the maximum number of health check failures allowed for persistent databases during startup\&.
160 The default value is 0\&. Setting this to non\-zero allows a node with unhealthy persistent databases to startup and join the cluster as long as there is another node with healthy persistent databases\&.
163 \-\-nlist=\fIFILENAME\fR
165 FILENAME containing a list of the private IP addresses, one per line, for each node in the cluster\&. This file
166 \fImust be the same on each node\fR
170 \fBCTDB_BASE\fR/nodes, so usually
176 This argument specifies that this node can NOT become an lmaster for records in the database\&. This means that it will never show up in the vnnmap\&. This feature is primarily used for making a cluster span across a WAN link and use CTDB as a WAN\-accelerator\&.
182 for more information\&.
187 This argument specifies that this node can NOT become a recmaster for the database\&. This feature is primarily used for making a cluster span across a WAN link and use CTDB as a WAN\-accelerator\&.
193 for more information\&.
196 \-\-notification\-script=\fIFILENAME\fR
198 FILENAME specifying a script to be invoked by ctdbd when certain state changes occur\&.
201 /etc/ctdb/notify\&.sh\&.
207 for more information\&.
210 \-\-pidfile=\fIFILENAME\fR
212 FILENAME for file containing process ID of main CTDB daemon\&. This file is automatically created and removed by CTDB\&.
214 The default is to not create a PID file\&.
217 \-\-public_addresses=\fIFILENAME\fR
219 FILENAME specifying a file containing the public IP addresses to use on the cluster when CTDB should use IP takeover\&. This file contains a list of IP addresses, netmasks and interfaces\&. CTDB will distribute these public IP addresses appropriately across the available nodes\&.
221 The IP addresses specified in this file can differ across nodes\&.
223 This is usually the file
224 /etc/ctdb/public_addresses
227 \-\-public\-interface=\fIINTERFACE\fR
229 INTERFACE on which to attach public IP addresses or on which to attach the single\-public\-ip when used\&.
231 When using public IP addresses, this is only required if interfaces are not explicitly specified in the public addresses file\&.
234 \-\-reclock=\fIFILE\fR
236 FILE is the name of the recovery lock file, stored in
237 \fIshared storage\fR, that CTDB uses to prevent split brains\&.
239 For information about the recovery lock please see the
245 \-\-single\-public\-ip=\fIIPADDR\fR
247 IPADDR specifies the single IP that CTDB will use in conjuction with LVS\&.
253 for more information\&.
256 \-\-start\-as\-disabled
258 This makes ctdbd start in the DISABLED state\&.
260 To allow the node to host public IP addresses and services, it must be manually enabled using the
268 for more information about the DISABLED state\&.
271 \-\-start\-as\-stopped
273 This makes ctdbd start in the STOPPED state\&.
275 To allow the node to take part in the cluster it must be manually continued with the the
283 for more information about the STOPPED state\&.
288 Send log messages to syslog instead of the CTDB logfile\&. This option overrides \-\-logfile\&. The default is to log to a file\&.
291 \-\-transport=tcp|infiniband
293 This option specifies which transport to use for ctdbd internode communications\&. The default is "tcp"\&.
295 The "infiniband" support is not regularly tested\&.
300 Display a summary of options\&.
302 .SH "DEBUGGING OPTIONS"
306 Enable interactive mode\&. This will make ctdbd run in the foreground and not detach from the terminal\&. By default ctdbd will detach itself and run in the background as a daemon\&.
311 This option is used when testing with multiple local daemons on a single machine\&. It disables checks related to public IP addresses\&.
316 This is a debugging option\&. This option is only used when debugging ctdbd\&.
318 Normally ctdbd will change its scheduler to run as a real\-time process\&. This is the default mode for a normal ctdbd operation to gurarantee that ctdbd always gets the CPU cycles that it needs\&.
320 This option is used to tell ctdbd to
322 run as a real\-time process and instead run ctdbd as a normal userspace process\&. This is useful for debugging and when you want to run ctdbd under valgrind or gdb\&. (You don\*(Aqt want to attach valgrind or gdb to a real\-time process\&.)
325 \-\-socket=\fIFILENAME\fR
327 FILENAME specifies the name of the Unix domain socket that ctdbd will create\&. This socket is used by local clients to communicate with ctdbd\&.
331 \&. You only need to use this option if you plan to run multiple ctdbd daemons on the same physical host, usually for testing\&.
334 \-\-script\-log\-level=\fIDEBUGLEVEL\fR
336 This option sets the debug level of event script output to DEBUGLEVEL\&. The default is ERR (0)\&.
342 for more information\&.
347 This is debugging option\&. This speeds up the initial recovery during startup at the expense of some consistency checking\&.
348 \fIDon\*(Aqt use this option in production\fR\&.
353 This option is only used for development and testing of CTDB\&. It adds artificial errors and failures to the common codepaths in ctdbd to verify that ctdbd can recover correctly from failures\&.
355 \fIDo not use this option\fR
356 unless you are developing and testing new functionality in CTDB\&.
361 This is a debugging option\&. This option is only used when debugging ctdbd\&. This enables additional debugging capabilities and implies \-\-nosetsched\&.
366 \fBctdbd_wrapper\fR(1),
369 \fBctdb-tunables\fR(7),
370 \m[blue]\fB\%http://ctdb.samba.org/\fR\m[]
374 This documentation was written by Ronnie Sahlberg, Amitay Isaacs, Martin Schwenke
377 Copyright \(co 2007 Andrew Tridgell, Ronnie Sahlberg
380 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version\&.
382 This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE\&. See the GNU General Public License for more details\&.
384 You should have received a copy of the GNU General Public License along with this program; if not, see
385 \m[blue]\fB\%http://www.gnu.org/licenses\fR\m[]\&.