...
Contents
Table of Contents | ||
---|---|---|
|
Introduction
opHA-MB 5.0 introduces the concept of using a Primary & multiple Poller servers and a message bus:
...
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 pollers Peers and it is where we can read all the information from.
The Consumer (ophad running on PrimaryPrimarys) reads data continuously off the message bus Message Bus and stores it in the database
The Producer (ophad running on PollersPeers) has a change stream setup for the collections and recieves receives update from the database if there is any. This change stream data is pushed onto the message busMessage Bus.
Here are new terms used in this project opHA 5 together with their meanings.
Term | Meaning | |
---|---|---|
Main Primary | server instance running opHA with role = 'primary_master' | |
Secondary Primary | server instance running opHA with role = 'master'. Also referred to as just 'primary'. | |
Peer | server instance running opHA with role = 'poller' or 'mirror'. It can optionally be of type 'streaming' which means that it is linked to an ophad instance. | |
Poller | server instance running opHA with role = 'poller' | |
Mirror | server instance running opHA with role = 'mirror'. It is paired with a poller and polls the same devices as that poller, however its data is not sync'd with primary unless the poller is offlineMessage 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) |
Installation instruction:
...
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 Installation (Non-Replication)
opHAMB opHA with Message Bus with replication enabled opHA-MB 5.0 Installation (Replication)
Releases
opHA Message Bus 5.0.0
Status | ||||
---|---|---|---|---|
|
The new opHA 5.0.0 features includes
...
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.
Installer and the installation guide to setup opHAMB in a replicated mode. In a replicated mode Replicated mode is when both Mongodb on Primary and Nats NATS needs to be replicated. Replicated mode can tolerate the failure of the Main Primary. To this end the installer sets is used to set up have a Main Primary and atleast at least one Secondary Primary.
There In replicated mode, three instances of NATS is are needed to be run running to tolerate a one node failure. Main Primary and Secondary Primary runs on an instance of NATS each. A Poller can be used to run the third instance.
Like wise Mongodb 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 Poller where NATS is run.