cluster.conf(5) configuration file for cman and related daemons




When cman_tool(8) starts the corosync(8) daemon, the cluster.conf data is read into the corosync in-memory database (confdb). The configuration is used by corosync, cman and other related cluster daemons and programs. When cman configures corosync with cluster.conf, the corosync.conf(5) file is not used.

A basic cluster configuration is described below. Configuration options for other daemons/programs are described in their own man pages. ccs_tool(8) can be used to do some basic cluster.conf editing.

The cluster.rng schema is used to validate cluster.conf. Unrecognized items will produce a warning during cluster startup, and invalid xml structure will cause the cluster startup to fail. See ccs_config_validate(8) and ccs_config_dump(8).


The top level cluster section contains all other sections and has two required attributes:
The name of the cluster can be up to 15 characters long (16 including terminating null). It is important that this name be unique among clusters on the same network.
The config_version specifies the revision level of the file and should be increased each time the file is updated.

<cluster name="alpha" config_version="1">

Cluster Nodes

The set of nodes that make up the cluster are defined in the clusternodes section which contains multiple clusternode sections. A clusternode has two required attributes:
The node name should correspond to the hostname on the network interface to be used for cluster communication.
The node id must be greater than zero and unique.

<cluster name="alpha" config_version="1">
        <clusternode name="node-01" nodeid="1">
        <clusternode name="node-02" nodeid="2">
        <clusternode name="node-03" nodeid="3">


Cluster daemons use a common logging section to configure their loggging behavior.

<cluster name="alpha" config_version="1">

Global settings apply to all:

<logging debug="on"/>

Per-daemon logging_daemon subsections override the global settings. Daemon names that can be configured include: corosync, qdiskd, groupd, fenced, dlm_controld, gfs_controld, rgmanager.

        <logging_daemon name="qdiskd" debug="on"/>
        <logging_daemon name="fenced" debug="on"/>

Corosync daemon settings apply to all corosync subsystems by default, but subsystems can also be configured individually. These include CLM, CPG, MAIN, SERV, CMAN, TOTEM, QUORUM, CONFDB, CKPT, EVT.

        <logging_daemon name="corosync" subsys="QUORUM" debug="on"/>
        <logging_daemon name="corosync" subsys="CONFDB" debug="on"/>

The attributes available at global, daemon and subsystem levels are:

enable/disable messages to syslog (yes/no), default "yes"

enable/disable messages to log file (yes/no), default "yes"

facility used for syslog messages, default "daemon"

messages at this level and up will be sent to syslog, default "info"

messages at this level and up will be written to log file, default "info"

the log file name, default /var/log/cluster/<daemon>.log

a shortcut for logfile_priority="debug"


An explicit configuration for the default settings would be:

<logging to_syslog="yes" to_logfile="yes" syslog_facility="daemon"
         syslog_priority="info" logfile_priority="info">
    <logging_daemon name="qdiskd"
    <logging_daemon name="fenced"
    <logging_daemon name="dlm_controld"
    <logging_daemon name="gfs_controld"
    <logging_daemon name="rgmanager"
    <logging_daemon name="corosync"

To include debug messages (and above) from all daemons in their default log files, either of the following which are equivalent:

<logging debug="on"/>
<logging logfile_priority="debug"/>

To exclude all log messages from syslog:

<logging to_syslog="no"/>

To disable logging to all log files:

<logging to_file="no"/>

To include debug messages (and above) from all daemons in syslog:

<logging syslog_priority="debug"/>

To limit syslog messages to error (and above), keeping info (and above) in log files (this logfile_priority setting is the default so could be omitted):

<logging syslog_priority="error" logfile_priority="info"/>


standard location of cluster configuration file
standard location of cluster.conf schema