opHA-MB 5.0 Release notes

Contents

Introduction

opHA-MB 5.0 introduces the concept of using a Message Bus to transfer data between opHA servers, as an alternative to the Web Service used to transfer data in earlier releases.

 

opHA-MB 5.0 uses one or more Primary & one or more Peer servers and a Message Bus:

  • A Primary is a server that keeps the information of all the Peers and it is where we can read all the information from.

  • The Consumer (ophad running on Primarys) reads data continuously off the Message Bus and stores it in the database

  • The Producer (ophad running on Peers) has a change stream setup for the collections and receives update from the database if there is any. This change stream data is pushed onto the Message Bus.

Here are new terms used in opHA 5 together with their meanings.

Term

Meaning

Term

Meaning

Message Bus

A message bus provides a messaging infrastructure for one or more applications to deliver messages to one or more other applications.

ophad

ophad is the daemon for opHA Message Bus, which opHA uses to communicate with a Message Bus.

Producer

an instance of the ophad process running in 'producer' mode (as per configuration). This will typically be running on the same server instances as the primary.

Consumer

an instance of the ophad process running in 'consumer' mode (as per configuration). This will typically be running on the same server instance as the poller (or mirror)

NATS

nats.io is an open-source product that is used as a Message Bus

 

Installation Instructions

 

opHA with Message Bus opHA-MB 5.0 Upgrade (Non-Replication)

opHA with Message Bus with replication enabled opHA-MB 5.0 Installation (Replication)

Releases

opHA Message Bus 5.0.0

RELEASED 8 November 2024

The opHA 5.0.0 features include

 

  • A single installer that installs and configures opHA and the nats.io Message Bus product in either replicated or non-replicated node.

  • Non replicated mode is when the setup has a single Primary, the Main Primary. A single instance of NATS service and a single instance of MongoDB is run on the Main Primary.

  • Replicated mode is when both MongoDB on Primary and NATS needs to be replicated. Replicated mode can tolerate the failure of the Main Primary. To this end the installer is used to set up a Main Primary and at least one Secondary Primary.
    In replicated mode, three instances of NATS are needed to be running to tolerate a one server failure on the Message Bus. The Main Primary and Secondary Primary run an instance of NATS each. A Poller can be used to run the third instance.
    Likewise MongoDB is run as a primary MongoDB instance on Main Primary. Secondary Primary runs a replica as a secondary MongoDB instance. The third instance of MongoDB is run as an Arbiter and can be run on one of the Pollers.