Enterprise Edition - Failover Support Using MSSQL as Backend DB Server


Follow the steps below to implement failover support in ManageEngine Applications Manager:

Single Database - Dual AppServer Architecture

The setup involves a primary Applications Manager, a secondary Applications Manager and a common database. The primary and secondary Applications Manager refer to the common database only. While the primary Applications Manager talks with the database, the secondary Applications Manager simply listens to the database. If the primary server goes down, the secondary server takes over. Afterwards, the initial primary server is restarted and it starts functioning as a secondary server.

Before installing failover (for Managed Servers):
  • Log into Applications Manager's Admin console and go to Managed servers list.
  • Edit the Managed server to enable the radio button for Failover details.
  • Enter the Hostname, Web server and SSL port information before installing the Failover setup for that Managed server.
  • Once it is saved you can start the Failover server installation.

Failover Setup Details

Let us assume we are going to set up three nodes - node1, node2 and node3.

Applications Manager: node1, node2
MSSQL Database: node3

Diagrammatic expression for Failover Support

  • Step 1: Install MSSQL database Server in node3 and make sure MSSQL Server is started in node3. Create the database with the name AMDB which is the database name used in Applications Manager by default.(You can change the name as you wish).
  • Step 2: Install Applications Manager in node1. While installing, make sure you select the database as MSSQL and give the same DB name, port number as in Step1. Start the Applications Manager in node1, this will act as the primary server. Check in the wrapper.log
  • Step 3: Install the Applications Manager in node2. While installing, make sure you select the database as MSSQL and give the same DB name, port number as in Step1. Start the Applications Manager in node2. Check in the wrapper.log

When node1Applications Manager goes down, node2Applications Manager will act as secondary server.

Sample Nohup Output
INFO | jvm 1 | 2013/08/05 01:00:06 | Checking for the availablity of the Primary Server in the Database. Found an entry.
INFO | jvm 1 | 2013/08/05 01:00:06 |
INFO | jvm 1 | 2013/08/05 01:00:06 | Trying to connect to the Primary Server at 192.168.1.3
INFO | jvm 1 | 2013/08/05 01:00:06 |
INFO | jvm 1 | 2013/08/05 01:00:07 | Please wait ...
INFO | jvm 1 | 2013/08/05 01:00:08 | ....Connected
INFO | jvm 1 | 2013/08/05 01:00:08 |
INFO | jvm 1 | 2013/08/05 01:00:08 |
INFO | jvm 1 | 2013/08/05 01:00:08 | Starting AdventNet Web NMS Standby Server. The Modules will be started
once it takes over as the Primary Server.
INFO | jvm 1 | 2013/08/05 01:00:08 |
INFO | jvm 1 | 2013/08/05 01:00:08 | Monitoring the Primary Server at 192.168.1.3

When node1Applications Manager goes down, node2Applications Manager will start up completely and will act as secondary server. Email notifications will be triggered on occurrence of a failover where you have to correct the issues with the node that is down. Then start it back as secondary which will now listen for another failure.

INFO | jvm 1 | 2013/08/05 01:09:47 | Monitoring the Primary Server at 192.168.1.3
INFO | jvm 1 | 2013/08/05 01:10:48 | Starting to do FailOver Tasks.
INFO | jvm 1 | 2013/08/05 01:11:08 | Process : AlertFE [ Started ]
INFO | jvm 1 | 2013/08/05 01:11:08 | Process : NmsMainFE [ Started ]
INFO | jvm 1 | 2013/08/05 01:11:08 |
INFO | jvm 1 | 2013/08/05 01:11:08 | Verifying connection with web server... verified
INFO | jvm 1 | 2013/08/05 01:11:08 |
INFO | jvm 1 | 2013/08/05 01:11:08 | Applications Manager started successfully.
INFO | jvm 1 | 2013/08/05 01:11:08 |
INFO | jvm 1 | 2013/08/05 01:11:08 | Please connect your client to the web server on port: 9095
INFO | jvm 1 | 2013/08/05 01:11:08 |
INFO | jvm 1 | 2013/08/05 01:11:09 | The new primary server is 192.168.1.4

Note: Above steps need to be implemented for each installation in the Enterprise setup for failover.