[Linux]

Defining the Pacemaker cluster (HA group)

The HA group is a Pacemaker cluster. You define the Pacemaker cluster by editing the /var/mqm/rdqm.ini file and running the rdqmadm command.

About this task

See https://clusterlabs.org/pacemaker/ for information about Pacemaker. You can create the Pacemaker cluster as a user in the mqm group if the mqm user can use sudo. If the user can also SSH to each server without a password, then you only need edit the rdqm.ini file and run rdqmadm on one of the servers to create the Pacemaker cluster. Otherwise you must create the file and run the command as root on each of the servers that are to be nodes.

The rdqm.ini file gives the IP addresses that are used by RDQM for the nodes in the Pacemaker cluster. For RHEL 8 and RHEL 9 installations you must give the name of each node, which must be the hostname as returned by the uname -n command. For RHEL 7 installations the specification of the node name is optional.

An RDQM HA group can be configured to use either one, two, or three IP addresses:

  • One IP address: Heartbeats and replication share the same link
  • Two IP addresses: Heartbeats and replication use separate links
  • Three IP addresses: One link for replication, and two separate links for heartbeats

These options are provided to support different deployment patterns for RDQM. The different options can be used to maximize the resiliency of the RDQM solution based on the environment that is used. The configurations that use either two or three IP addresses are primarily intended for deployments where granular control is required over which physical network links the heartbeats and replication traffic use to configure redundancy for the connectivity between nodes. Alternatively, highly available and resilient connectivity can be implemented at the network layer, for example by using link aggregation. With link aggregation, multiple physical network links are used to provide a single logical link that can continue to function if individual physical links fail. If RDQM is deployed in an environment where the network connectivity is virtualized, and/or where resilient connectivity is implemented at the network layer, then using a single IP address for both heartbeats and replication is usually preferable.

The following example illustrates using two IP addresses. Your rdqm.ini file has an HA_Primary and an HA_Replication field for each node, but no HA_Alternate field:
Node:
  Name=rdqm-node-1.spiranthes.com
  HA_Primary=192.168.4.1
  HA_Replication=192.168.5.1
Node:
  Name=rdqm-node-2.spiranthes.com
  HA_Primary=192.168.4.2
  HA_Replication=192.168.5.2
Node:
  Name=rdqm-node-3.spiranthes.com
  HA_Primary=192.168.4.3
  HA_Replication=192.168.5.3
 
The following diagram illustrates this configuration:
shows the configuration using two interfaces
The following example file shows the configuration for an example Pacemaker cluster that uses the HA_Replication interface for monitoring (For example, this could be used for a proof of concept deployment). In this case you only specify the HA_Replication interface:
Node:
  Name=rdqm-node-1.spiranthes.com
  HA_Replication=192.168.4.1
Node:
  Name=rdqm-node-2.spiranthes.com
  HA_Replication=192.168.4.2
Node:
  Name=rdqm-node-3.spiranthes.com
  HA_Replication=192.168.4.3
 
The following diagram illustrates this configuration:
Shows the configuration using a single interface
The following example file shows the configuration for an example Pacemaker cluster that uses a separate IP address for each interface:
Node:
  Name=rdqm-node-1.spiranthes.com
  HA_Primary=192.168.4.1
  HA_Alternate=192.168.5.1
  HA_Replication=192.168.6.1
Node:
  Name=rdqm-node-2.spiranthes.com
  HA_Primary=192.168.4.2
  HA_Alternate=192.168.5.2
  HA_Replication=192.168.6.2
Node:
  Name=rdqm-node-3.spiranthes.com
  HA_Primary=192.168.4.3
  HA_Alternate=192.168.5.3
  HA_Replication=192.168.6.3
 
The following diagram illustrates this configuration:
illustrates the configuration with a separate IP address for each interface

The order in which you specify the nodes must be the same in all the rdqm.ini files in your configuration. Your three nodes must have a common view as to which one is Node1, which one Node2 and so on.

Procedure

  • To define the Pacemaker cluster as user root:
    1. Edit the /var/mqm/rdqm.ini file on one of the three servers so that the file defines the cluster.
    2. Copy the file to the other two servers that will be nodes in the Pacemaker cluster.
    3. Run the following command as root on each of the three servers:
      rdqmadm -c
  • To define the Pacemaker cluster as a user in the mqm group on each node:
    1. Ensure that the user mqm can use sudo to run commands.
    2. Edit the /var/mqm/rdqm.ini file on one of the three servers so that the file defines the Pacemaker cluster.
    3. Copy the /var/mqm/rdqm.ini to the other two servers that will be nodes in the Pacemaker cluster.
    4. Run the following command on each server:
      rdqmadm -c
  • To define the Pacemaker cluster as a user in the mqm group from one node:
    1. Ensure that the user mqm can use sudo to run commands and can connect to each server using SSH without a password.
    2. Edit the /var/mqm/rdqm.ini file on one of the three servers so that the file defines the Pacemaker cluster.
    3. Run the following command:
      rdqmadm -c