...
“Main Primary”
“Primary”
“Poller”
“Mirror”
...
Installing opHA-MB license
Install the opHA-MB for NMIS & opCharts license on the Main Primary server only.
...
You need to enter a License Key in the Modules → opLicensing as below on the Main Primary.
...
...
Download Software
Download the required software onto each server.
...
Install Software
IMPORTANT: All the servers should be setup with the following
...
During the installation of the arbiter server you must answer 'n' at the following prompt
...
...
NATS Setup
This configuration should be applied to the Main Primary, Arbiter and Secondary Primary servers ONLY.
Edit Configuration: Update the
/etc/nats-server.conffile with the following settings:Code Block language json server_name: "opha-dev1.opmantek.net" #The local server http_port: 8222 listen: 4222 jetstream: enabled #tls { # cert_file: "<path>" # key_file: "<path>" # #ca_file: "<path>" # verify: true #} log_file: "/var/log/nats-server.log" accounts { $SYS { users: [ { user: "admin", pass: "password" } ] } ophad: { users: [ { user: "omkadmin", password: "op42opha42" } ] jetstream: enabled } } jetstream { store_dir: "/opt/nats/storage" max_memory_store: 1028M max_file_store: 1028M } cluster { name: "C1" host: "opha-dev1.opmantek.net" #The current host # the current server listen: "0.0.0.0:6222" routes: [ # secondary primary "nats://opha-dev6.opmantek.net:6222" # server with the arbiter "nats://opha-dev2.opmantek.net:6222" # other servers ] }
...
Common Configuration for All Servers
...
Update /usr/local/omk/conf/opCommon.json
Backup Configuration: Make a backup copy of the
opCommon.jsonfile before making any changes.Add NATS Cluster Configuration: Ensure the following configuration is included in
opCommon.jsonon all servers. In the below example we have added the Main Primary, arbiter and Secondary Primary FQDNs and port/s to be utilized in the nats_cluster attribute, you can find this in the database section.Code Block language json "nats_cluster": [ "opha-dev1.opmantek.net", "opha-dev2.opmantek.net", "opha-dev6.opmantek.net" ]
...
Server-Specific Configuration
...
Update /usr/local/omk/conf/opCommon.json for Main Primary and Secondary Primary only
| Code Block | ||
|---|---|---|
| ||
"db_replica_set": "rs1", "db_mongo_cluster": [ "opha-dev1.opmantek.net", "opha-dev6.opmantek.net" ], "nats_num_replicas": 3, "nats_cluster": [ "opha-dev1.opmantek.net", "opha-dev2.opmantek.net", "opha-dev6.opmantek.net" ] |
...
MongoDB Setup (Main Primary Only)
The following steps should be performed only on the Main Primary MongoDB instance.
...
Initialize MongoDB Replica Set
Connect to MongoDB using the mongosh command and configure the replica set:
...
| Code Block |
|---|
rs.initiate({ _id: "rs1", version: 1, members: [ { _id: 0, host : "opha-dev1.opmantek.net:27017", priority: 2 }, { _id: 1, host : "opha-dev6.opmantek.net:27017", priority: 1 } ] }) |
...
Set Default Write Concern
Run the following command to set the default write concern:
| Code Block |
|---|
db.adminCommand({ "setDefaultRWConcern": 1, "defaultWriteConcern": { "w": 1 } }) |
...
Add Arbiter
Run the following command to add an arbiter to the replica set:
| Code Block |
|---|
rs.addArb("opha-dev2.opmantek.net:27018") |
...
Restart mongod on the Main Primary, Second Primary and Arbiter
Run the following command on the Main Primary, Secondary Primary, and Arbiter servers ONLY:
| Code Block |
|---|
sudo systemctl restart mongod |
...
Starting Services
...
Start NATS
Start the NATS service on the Main Primary, Secondary Primary, and Arbiter servers ONLY:
| Code Block |
|---|
systemctl start nats-server |
...
Restart mongod on Pollers and Mirrors only
After configuration changes, restart mongod on all Mirrors and Pollers servers ONLY:
| Code Block |
|---|
systemctl restart mongod |
...
Restart services on all servers
After configuration changes have been made, you will need to restart the relevant FirstWave module daemons applicable to your server.
...
| Code Block |
|---|
systemctl restart nmis9d opchartsd opeventsd omkd ophad |
...
Start the Poller and Mirrors
Execute the following command on the poller and mirror servers.
| Code Block |
|---|
cd /usr/local/omk/bin ./ophad cmd producer start |
...
Final Steps
Accept EULAs: Make sure when you login to each server to confirm that all End User License Agreements (EULAs) are accepted.
...
Upgrade to opHA-5.1.0 from opHA 4.X
...
Prerequisites
IMPORTANT: All the servers should be setup with the following
...
d. opHA-MB licenses to be installed.
...
Editing the Role of the instance in opCommon.json
The default value of opha_role in opCommon.json is Standalone
...
“Main Primary”
“Primary”
“Poller”
“Mirror”
...
Installing opHA-MB license
Install the opHA-MB for NMIS & opCharts license on the Main Primary server only.
...
You need to enter a License Key in the Modules → opLicensing as below on the Main Primary.
...
...
Download Software
Download the required software onto each server.
...
Install Software
IMPORTANT: All the servers should be setup with the following
...
During the installation of the arbiter server you must answer 'n' at the following prompt
...
...
NATS Setup
This configuration should be applied to the Main Primary, Arbiter and Secondary Primary servers ONLY.
Edit Configuration: Update the
/etc/nats-server.conffile with the following settings:Code Block language json server_name: "opha-dev1.opmantek.net" #The local server http_port: 8222 listen: 4222 jetstream: enabled #tls { # cert_file: "<path>" # key_file: "<path>" # #ca_file: "<path>" # verify: true #} log_file: "/var/log/nats-server.log" accounts { $SYS { users: [ { user: "admin", pass: "password" } ] } ophad: { users: [ { user: "omkadmin", password: "op42opha42" } ] jetstream: enabled } } jetstream { store_dir: "/opt/nats/storage" max_memory_store: 1028M max_file_store: 1028M } cluster { name: "C1" host: "opha-dev1.opmantek.net" #The current host # the current server listen: "0.0.0.0:6222" routes: [ # secondary primary "nats://opha-dev6.opmantek.net:6222" # server with the arbiter "nats://opha-dev2.opmantek.net:6222" # other servers ] }
...
Common Configuration for All Servers
...
Update /usr/local/omk/conf/opCommon.json
Backup Configuration: Make a backup copy of the
opCommon.jsonfile before making any changes.Add NATS Cluster Configuration: Ensure the following configuration is included in
opCommon.jsonon all servers. In the below example we have added the Main Primary, arbiter and Secondary Primary FQDNs and port/s to be utilized in the nats_cluster attribute, you can find this in the database section.Code Block language json "nats_cluster": [ "opha-dev1.opmantek.net", "opha-dev2.opmantek.net", "opha-dev6.opmantek.net" ]
...
Server-Specific Configuration
...
Update /usr/local/omk/conf/opCommon.json for Main Primary and Secondary Primary only
| Code Block | ||
|---|---|---|
| ||
"db_replica_set": "rs1", "db_mongo_cluster": [ "opha-dev1.opmantek.net", "opha-dev6.opmantek.net" ], "nats_num_replicas": 3, "nats_cluster": [ "opha-dev1.opmantek.net", "opha-dev2.opmantek.net", "opha-dev6.opmantek.net" ] |
...
MongoDB Setup (Main Primary Only)
The following steps should be performed only on the Main Primary MongoDB instance.
...
Initialize MongoDB Replica Set
Connect to MongoDB using the mongosh command and configure the replica set:
...
| Code Block |
|---|
rs.initiate({ _id: "rs1", version: 1, members: [ { _id: 0, host : "opha-dev1.opmantek.net:27017", priority: 2 }, { _id: 1, host : "opha-dev6.opmantek.net:27017", priority: 1 } ] }) |
...
Set Default Write Concern
Run the following command to set the default write concern:
| Code Block |
|---|
db.adminCommand({ "setDefaultRWConcern": 1, "defaultWriteConcern": { "w": 1 } }) |
...
Add Arbiter
Run the following command to add an arbiter to the replica set:
| Code Block |
|---|
rs.addArb("opha-dev2.opmantek.net:27018") |
...
Restart mongod on the Main Primary, Second Primary and Arbiter
Run the following command on the Main Primary, Secondary Primary, and Arbiter servers ONLY:
| Code Block |
|---|
sudo systemctl restart mongod |
...
Starting Services
...
Start NATS
Start the NATS service on the Main Primary, Secondary Primary, and Arbiter servers ONLY:
| Code Block |
|---|
systemctl start nats-server |
...
Restart mongod on Pollers and Mirrors only
After configuration changes, restart mongod on all Mirrors and Pollers servers ONLY:
| Code Block |
|---|
systemctl restart mongod |
...
Restart services on all servers
After configuration changes have been made, you will need to restart the relevant FirstWave module daemons applicable to your server.
...
| Code Block |
|---|
systemctl restart nmis9d opchartsd opeventsd omkd ophad |
...
Start the Poller and Mirrors
Execute the following command on the poller and mirror servers.
| Code Block |
|---|
cd /usr/local/omk/bin ./ophad cmd producer start |
...
Final Steps
Accept EULAs: Make sure when you login to each server to confirm that all End User License Agreements (EULAs) are accepted.