DeviceExpert Home | Online Demo
For uninterrupted access to device configurations, DeviceExpert provides the High Availability configuration, which provides for redundant servers. One instance acts as the Primary and the other one acts as the standby. If the primary goes down, users can access the standby.
There will be redundant DeviceExpert server instances. Both the servers will access one, common database instance
The High Availability setup involves primary server running on one machine, standby running on another machine and a DB server running on a third machine. (Primary, standby and database should be installed on three separate machines)
In High Availability setup, DeviceExpert primary will be normally up and running. The standby keeps monitoring the primary. If the primary goes down, DeviceExpert application starts up in standby. The standby server connects to the common database and hence there will not be any data loss. When you start the primary server, which went down, it will automatically get started as 'standby'. The server, which was originally configured to act as standby will become the primary.
DeviceExpert Primary and Standby servers are bound by a common public IP so that DeviceExpert web-interface could always be connected to this specific IP. Irrespective of whether DeviceExpert is running as Primary or Standby, end-users can connect to the same public IP seamlessly.
Note: High Availability architecture is supported only in Windows installations.
(Steps applicable for fresh deployment of DeviceExpert. Existing users, who want to use their present installation as primary, click here)
As mentioned above, High Availability setup in DeviceExpert involves 'Primary' installed on one machine, 'Standby' installed on another machine and 'Database' installed on a third machine. All the three machines should be in the same subnet.
Download DeviceExpert and install it in two machines. One will act as primary and another one as standby. (You can specify which one to run as primary and which one as Standby through a configuration later).
The database MySQL (v5.0 or above) or MSSQL should be installed / running in a separate machine
If you are using MySQL
The database has to be configured to allow connections from DeviceExpert primary and standby. To do this, follow the steps as detailed below:
mysql> CREATE USER 'username'@'%' IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' WITH GRANT OPTION;
Note: You need to make a note of the 'username' and 'password' specified in the steps above. This has to be specified in 'Step 3' below.
After installing DeviceExpert, you need to enable High Availability in both primary and standby installations.
Navigate to <DeviceExpert-Primary-Installation-Folder>/bin directory and execute FOSSettings.bat
In the pop-up, enter the following details:
Public IP: Assign a common public IP address for DeviceExpert Primary and Standby so that DeviceExpert webinterface could always be connected to this specific IP. The DeviceExpert server will be bound by this single public IP and irrespective of whether DeviceExpert is running as Primary or Standby, end-users can connect to the same public IP seamlessly. Enter the Public IP in this text field.
Public IP Netmask: Specify the subnet mask of the Public IP.
Standby IP: Enter the IP address of DeviceExpert Standby server. This step ensures that Primary server knows where standby is running and vice-versa.
Here, you need to specify details about the database, which you installed in 'Step 2' above.
SQL Server Type: Select which database you are using - MySQL or MSSQL
Hostname: Specify the hostname or IP address of the database server
Port:Specify the port where the MySQL server is running. By default, MySQL occupies the port 43306; MSSQL occupies 1433
Database: The name of the database 'deviceexpert'
Username & Password: Enter the credentials for connecting to the database
After specifying these, run 'Test Connection' to check if DeviceExpert application server is able to establish connection with the database.
HA Status Notification
You can choose to receive notifications regarding High Availability status - when primary goes down, standby takes over etc. Enter the email addresses to which the notifications are to be sent.
HA configuration Settings Pack
Finally, click 'Save'. The HA configuration in primary is completed now. Upon completing this, high availability configuration settings are created as a .bkp file in primary. Typically, the configuration pack will have the file name with timestamp in the format as "Settings_MM_DD_YYYY_HH_MM.bkp" under <DeviceExpert-Primary-Installation-Folder>/fos/Settings directory. You need to copy this file and put in the DeviceExpert standby installation as explained below.
Apply DeviceExpert License (If not already done)
If you have purchased DeviceExpert, you need to apply the license by clicking the 'Register' link present in the top right hand corner of DeviceExpert web-interface.
Put the HA configuration settings pack created in the form of .bkp file in the previous step, under <DeviceExpert-Standby-Installation-Folder>. Now, navigate to <DeviceExpert-Standby-Installation-Folder>/bin directory and execute UnzipFOSSettings.bat file passing the location of HA configuration settings pack .bkp file location as the commandline argument.
Apply DeviceExpert License
You need to apply the DeviceExpert license file in the standby installation. Standby does NOT require a separate license file. You can use the same license you purchased for primary. To apply the license file, copy the .xml file and paste it under <DeviceExpert-Standby-Installation-Folder>/lib directory.
This step completes the HA configuration in standby.
Now, you need to start HA in both Primary and Standby installations. Navigate to Windows Services Panel and start "DeviceExpert-FOS" service in both Primary and Standby. While DeviceExpert application in the primary will be up and running, DeviceExpert application in standby will just be monitoring the primary in HA mode. It will get started when the primary goes down.
Note: As mentioned above, standby server keeps monitoring the primary. By default, it checks primary's status once in 20 seconds. In case, it finds that the primary is not running, it tries two times to ensure that before starting up DeviceExpert application. These values are configurable. You need to change the values of the following parameters in fos.conf file present under <DeviceExpert-Standby-Installation-Folder>/fos/bin directory in both primary and standby.
clustering.fos.slave.httppoll.intervalInSecs = 20
(This represents status checking interval)
clustering.fos.slave.httppoll.retryCount = 2
(This represents the retry count)
In case, you want to uninstall the HA setup, follow the steps below:
Steps to be done in Primary installation
Navigate to <DeviceExpert-Primary-Installation-Folder>/fos/bin directory and run uninstall-fos.bat
Then, navigate to <DeviceExpert-Primary-Installation-Folder>/conf folder and edit the system_properties file as below:|
Search for "ncm.FOSService=ON" and change it to "ncm.FOSService=OFF"
Then, navigate to <DeviceExpert-Primary-Installation-Folder>/conf folder and edit wrapper.conf as below:
Search for "wrapper.ntservice.starttype=DEMAND_START" and change it to "wrapper.ntservice.starttype=AUTO_START"
Then, navigate to <DeviceExpert-Primary-Installation-Folder>/bin directory and execute "deviceexpert.bat remove"
Then, navigate to <DeviceExpert-Primary-Installation-Folder>/bin directory and execute "deviceexpert.bat install"
The above steps will uninstall HA in Primary setup. The primary server will remain connected to the common database and you may continue using it.
Steps to be done in Standby installation
Navigate to <DeviceExpert-Standby-Installation-Folder>/fos/bin directory and run uninstall-fos.bat
Then, navigate to <DeviceExpert-Standby-Installation-Folder>/bin directory and execute "deviceexpert.bat remove"
The above steps will uninstall HA and DeviceExpert standby installation.
© 2012, ZOHO Corp. All Rights Reserved.