Enabling majority quorum

You can enable majority quorum, which is a feature that is supported by WebSphere eXtreme Scale, to take advantage of the stability that it provides clustered systems. Enable majority quorum to ensure that your system is highly available. Using majority quorum is important, because in replicated databases a data object has copies present at several sites. To control the processing of concurrent transactions, no two transactions should be allowed to read or write a data item concurrently, as this can cause a data conflict. When using replicated databases with B2B Advanced Communications, a quorum-based replica control protocol is used to ensure that no two copies of a data item are read or written by two transactions concurrently, regardless of the protocol of the transactions (for example AS4, HTTP, and so on).

Before you begin

Ensure that your system has an odd number of catalog members.
Important: You need at least 3 catalog members.

You cannot enable majority quorum if you have an even number of catalog members in your system. If you have an even number of catalog members in your system, add a catalog member so that the resulting number of catalog members in your system is odd.

For more information about installing an extra catalog member, see Installing an additional catalog member.

About this task

Majority quorum describes when the number of available catalog members is greater than half at any point in time, even during a partition. Majority quorum prevents split-brain issues in which the system receives conflicting information that it might be unable to accurately or consistently resolve across all nodes in the system.

Procedure

To enable majority quorum:

  1. Ensure that the jvm.options file contains the following line:
    Dcom.ibm.websphere.objectgrid.server.catalog.majority.quorum=true

    Depending on your system, you can find the jvm.options file in one of the following directories:

    • For Linux users: <B2BAC installation directory>/Members/WXSCatalog/usr/servers/WXSCatalog
    • For Windows users: <B2BAC installation directory>\Members\WXSCatalog\usr\servers\WXSCatalog
  2. Navigate to the bin file in your installation directory.

    For Linux users: <B2BAC installation directory>/Members/bin

    For Windows users: <B2BAC installation directory>\Members\bin

  3. Export the grid configuration with the config export grid command. For example, type: execute config export grid <file destination>.
  4. Navigate to and open the exported data grid configuration file with your text editor of choice. In the configuration file, add the following property:
    gridParm.enableQuorum=true
  5. Copy the exported and edited data grid configuration to the resources directory on an existing AS4 Microservice node in your system.

    For Linux users: install_directory/Members/resources/SystemConfigurationXSLoader.properties

    For Windows users: install directory\Members\resources\SystemConfigurationXSLoader.properties

    Tip: Ensure that you back up the original SystemConfigurationXSLoader.properties file on each of your original nodes in the case of data loss.
  6. Load the edited data grid configuration with the config load grid command.
  7. Apply the edited data grid configuration across each of the AS4 Microservice nodes in your system with the member config all grid --filesystem command.
  8. Restart all the nodes in your system with the member stop all and member start all commands.