cluster.conf Explained

The data for these schema documents was carefully, tirelessly, and we believe accurately compiled originally, by our cluster groups' very excellant intern Stephen Huenneke, who was with us for the summer of 2006. Stephen is a student in Computer Science at UMass Boston. Since then, it has been updated a couple of times...usually coinciding with either a major release of Fedora or RHEL, or a RHEL Update. This information has been collected primarily from man pages, header files, and just plain picking people's brains. The cluster.conf file controls how a node is setup within a cluster. It's installed on each machine and has the information for every other node in addition to itself. There are over 200 configurable attributes. This document explores the various options and the different ways a cluster could be configured.

The cluster.conf file is located in the /etc/cluster directory. It is the source of information used by the cluster products accessed indirectly through CCS(Cluster Configuration System), but it is, in addition, parsed by several other components of cluster infrastructure such as CMAN, fenced, etc. This file contains all the information needed for the cluster to operate, such as: what nodes compose the cluster and how to I/O fence those nodes. There is generic information which is applicable to all cluster infrastructures, as well as specific information relevant for specific cluster products. Cluster.conf is an XML file, and the configuration parameters are stored as tags and tag attributes.

The differences between the RHEL4 (FC4 - 5) schema and the RHEL5 (FC6) schema are great enough for a different schema description page for each version. This link is for the RHEL4 schema, and this link is for the RHEL5 schema.

Cluster.conf structure The hierarchy of the cluster configuration file is as follows ('+' means 1 or more, and '*' means zero or more):

   |__CMAN or GULM (RHEL4 only)
   |             |__LOCKSERVER (Only for GULM; 1,3,4 or 5 only)
   |__FENCE_XVMD (RHEL5 option, used when hosting a virtual cluster)
   |         |_____CLUSTERNODE+
   |                     |______FENCE
   |                               |__METHOD+
   |                                      |___DEVICE+
   |        |______FENCEDEVICE+
   |__RM (Resource Manager Block)
   |   |          |_______FAILOVERDOMAIN*
   |   |                         |________FAILOVERDOMAINNODE*
   |   |__RESOURCES
   |   |      |_____(See Resource List Below)
   |   |__SERVICE*