The cluster layout of the o2cb cluster stack is specified in /etc/ocfs2/cluster.conf. It lists the name of the cluster, the nodes comprising that cluster and its heartbeat regions. The cluster stack expects this file to be the same on all nodes in that cluster.
This file should be populated using the o2cb(8) cluster configuration utility. A sample of the same is shown in the example section.
The cluster stanza specifies the name of the cluster, number of nodes and the heartbeat mode. The cluster name can include up to 16 alphanumeric characters [0-9A-Za-z]. No special characters are allowed.
Parameters | Description |
node_count | Number of nodes in the cluster |
heartbeat_mode | local or global heartbeat |
name | Cluster name (up to 16 alphanumeric chars [0-9A-Za-z]) |
The node stanza specifies the node name that is part of the cluster alongwith its IPv4 address, port and node number. The node name must match the hostname. The domain name is not required. For example, appserver1.company.com can be appserver1. The IPv4 address need not be the one associated with that hostname. As in, any valid IPv4 address on that node can be used. The o2cb cluster stack will not attempt to match the node name (hostname) with the specified IPv4 address. A low-latency private interconnect address is recommended for best performance.
Parameters | Description |
ip_port | IPv4 port |
ip_address | IPv4 address (private interconnect recommended) |
number | Node number (0 - 254) |
name | Node name (hostname without the domain name) |
cluster | Cluster name (should match the name in the cluster stanza) |
The heartbeat stanza specifies the global heartbeat region UUIDs. A cluster can have up to 32 heartbeat regions. This is an optional stanza and is only required if the global heartbeat mode is enabled. In other words, the regions are only used if heartbeat_mode = global is in the cluster stanza. If not, this stanza is ignored.
Parameters | Description |
region | Heartbeat region UUID |
cluster | Cluster name (should match the name in the cluster stanza) |
While manual editing is not recommended, users doing so must follow the format strictly. The stanza should start at the first column and end with a colon. The parameters must start after a tab. A blank line must demarcate each stanza. Care should be taken to avoid stray white-spaces.
$ o2cb add-cluster webcluster $ o2cb add-node webcluster node7 --ip 192.168.0.107 --number 7 $ o2cb add-node webcluster node6 --ip 192.168.0.106 --number 6 $ o2cb add-node webcluster node10 --ip 192.168.0.110 --number 10 $ o2cb add-heartbeat webcluster /dev/sdg1 $ o2cb add-heartbeat webcluster /dev/sdk1 $ o2cb add-heartbeat webcluster /dev/sdh1 $ o2cb heartbeat-mode webcluster global $ o2cb list-cluster webcluster heartbeat: region = 77D95EF51C0149D2823674FCC162CF8B cluster = webcluster heartbeat: region = DCDA2845177F4D59A0F2DCD8DE507CC3 cluster = webcluster heartbeat: region = BBA1DBD0F73F449384CE75197D9B7098 cluster = webcluster node: ip_port = 7777 ip_address = 192.168.0.107 number = 7 name = node7 cluster = webcluster node: ip_port = 7777 ip_address = 192.168.0.106 number = 6 name = node6 cluster = webcluster node: ip_port = 7777 ip_address = 192.168.0.110 number = 10 name = node10 cluster = webcluster cluster: node_count = 3 heartbeat_mode = global name = webcluster