NAME
dlm_controld - daemon that configures dlm according to cluster events
SYNOPSIS
dlm_controld [OPTION]...
DESCRIPTION
The dlm lives in the kernel, and the cluster infrastructure (cluster
membership and group management) lives in user space. The dlm in the
kernel needs to adjust/recover for certain cluster events. It’s the
job of dlm_controld to receive these events and reconfigure the kernel
dlm as needed. dlm_controld controls and configures the dlm through
sysfs and configfs files that are considered dlm-internal interfaces;
not a general API/ABI.
The dlm also exports lock state through debugfs so that dlm_controld
can implement deadlock detection in user space.
CONFIGURATION FILE
Optional cluster.conf settings are placed in the <dlm> section.
Global settings
The network protocol can be set to "tcp" or "sctp". The default is
tcp.
<dlm protocol="tcp"/>
After waiting timewarn centiseconds, the dlm will emit a warning via
netlink. This only applies to lockspaces created with the
DLM_LSFL_TIMEWARN flag, and is used for deadlock detection. The
default is 500 (5 seconds).
<dlm timewarn="500"/>
DLM kernel debug messages can be enabled by setting log_debug to 1.
The default is 0.
<dlm log_debug="0"/>
Disabling resource directory
Lockspaces usually use a resource directory to keep track of which node
is the master of each resource. The dlm can operate without the
resource directory, though, by statically assigning the master of a
resource using a hash of the resource name.
<dlm>
<lockspace name="foo" nodir="1">
</dlm>
Lock-server configuration
The nodir setting can be combined with node weights to create a
configuration where select node(s) are the master of all
resources/locks. These "master" nodes can be viewed as "lock servers"
for the other nodes.
<dlm>
<lockspace name="foo" nodir="1">
<master name="node01"/>
</lockspace>
</dlm>
or,
<dlm>
<lockspace name="foo" nodir="1">
<master name="node01"/>
<master name="node02"/>
</lockspace>
</dlm>
Lock management will be partitioned among the available masters. There
can be any number of masters defined. The designated master nodes will
master all resources/locks (according to the resource name hash). When
no masters are members of the lockspace, then the nodes revert to the
common fully-distributed configuration. Recovery is faster, with
little disruption, when a non-master node joins/leaves.
There is no special mode in the dlm for this lock server configuration,
it’s just a natural consequence of combining the "nodir" option with
node weights. When a lockspace has master nodes defined, the master
has a default weight of 1 and all non-master nodes have weight of 0.
Explicit non-zero weights can also be assigned to master nodes, e.g.
<dlm>
<lockspace name="foo" nodir="1">
<master name="node01" weight="2"/>
<master name="node02" weight="1"/>
</lockspace>
</dlm>
In which case node01 will master 2/3 of the total resources and node2
will master the other 1/3.
OPTIONS
-d <num>
Enable (1) or disable (0) the deadlock detection code.
-D Run the daemon in the foreground and print debug statements to
stdout.
-K Enable kernel dlm debugging messages.
-V Print the version information and exit.
-h Print out a help message describing available options, then
exit.
SEE ALSO
groupd(8)
dlm_controld(8)