After experiencing local UDP problems, how can one force Foglight to use TCP in High Availability (HA) mode?
This procedure is documented in the HA Field Guide.
1. Shutdown the server
2. After FMS 5.9.1(Foglight Management Server) edit on each FMS the following file: $FMS_HOME/config/jgroups-config.xml
NOTE: As of Foglight 5.7.1 through 5.7.5, modify the file located in %FGLHOME%/server/jboss/deploy/cluster-service.xml
3. Follow procedure in the guide to Reconfigure JGroup to use TCP instead of UDP.
4. Start the primary server
5. Wait for the primary server to start up and then restart the secondary server(s).
6. Please see attached samples for both servers, primary and secondary.
Note: Examples attached is how you can comment/uncomment the fields properly.
For this exercise example, it was defined the following IP Addresses for HA:
The following example picture in the left side has all the changes applied, everything that is in blue is what was changed or added. And in the right hand file which is the original file with no changes, everything that is in red, that is what needs to be removed
Having these variables defined:
After shutdown Foglight services on SERVER1 and while reviewing the Foglight Management Server logs on the SERVER2 which becomes the primary server, you can see the following from support_bundle_management_server.zip and ManagementServer_001.log:
Note: Attached to this KB you can see two attachments related to Primary and Secondary configuration examples and one more attachment with no modifications at all with the Out of the Box settings.
IMPORTANT NOTE: If using Foglight with SSL(https) and after configured HA mode, but not working, please configure for SSL also restart_monitor.config
In order to do that check this solution: "Getting the Foglight HA to work with HTTPS" SOL78025
NETWORK TROUBLESHOOTING STEPS
1). Do nslookup of the SERVER1 on SERVER2 and viceverse to make sure DNS resolution is working (If needed use fully qualified domain name):
2). These are the ports that need to be opened on both server bi-directional, make sure that the ports are listening:
On Windows on both servers run
On Linux on both servers run
Note: when running the above command on Linux, please do it using root user and provide the output, otherwise you will get the following message:
(Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.)