Bootstrap FreeKB - Introscope - Getting Started with Load Balancing
Introscope - Getting Started with Load Balancing

Updated:   |  Introscope articles

Let's say you have a single Manager of Manager (MoM) server and two Collector servers, like this:

  • mom.example.com
  • collector1.example.com
  • collector2.example.com

On the MoM, the loadbalancer.xml file is used to balance requests across the collector servers. By default, the loadbalancer.xml file is located at:

/opt/wily/Introscope/config/loadbalancer.xml

 

To load balance requests across each collector, you will do something like this in loadbalancer.xml.

<agent-collector name="collector1.example.com">
  <agent-specifier>agent1.example.com\|.*\|.*</agent-specifier>
  <agent-specifier>agent1.example.com\|.*\|.*</agent-specifier>
  <agent-specifier>agent1.example.com\|.*\|.*</agent-specifier>
  <include>
    <collector host="collector1.example.com" port="5001"/>
  </include>
</agent-collector>

<agent-collector name="collector2.example.com">
  <agent-specifier>agent1.example.com\|.*\|.*</agent-specifier>
  <agent-specifier>agent1.example.com\|.*\|.*</agent-specifier>
  <agent-specifier>agent1.example.com\|.*\|.*</agent-specifier>
  <include>
    <collector host="collector2.example.com" port="5001"/>
  </include>
</agent-collector>

 

If the MoM is able to communicate with each collector, something like this should be in the IntroscopeEnterpriseManager.log on the MoM.

mm/dd/yy hh:mm:ss [VERBOSE] [Manager.PostOfficeHub] Connected To: Node=Agent_1104, Address=agent1.example.com/10.15.231.81:45656, Type=socket

mm/dd/yy hh:mm:ss [VERBOSE] [Manager.LoadBalancer] Assign SuperDomain/Tomcat|agent1.example.com|Tomcat|myJVM to collector1.example.com@5001 (22337 metrics)

 

On the other hand, if the MoM is not able to determine the collector that an agent is being monitored by, something like this should be in the IntroscopeEnterpriseManager.log on the MoM.

mm/dd/yy hh:mm:ss  [VERBOSE] [Manager.LoadBalancer] No eligible collector for: SuperDomain/Tomcat|agent1.example.com|Tomcat|myJVM

mm/dd/yy hh:mm:ss  [VERBOSE] [Manager.EventHandler] Error reading incoming bytes in Server Hub Receive 1115 event handler for Socket Transport connected with Socket[addr=agent1.example.com/10.15.231.81,port=45656,localport=5001] because java.io.IOException: An existing connection was forcibly closed by the remote host

mm/dd/yy hh:mm:ss  [VERBOSE] [Manager.PostOfficeHub] Disconnected From: Node=Agent_1104, Address=agent1.example.com/10.15.231.81:45656, Type=socket

 

When the MoM is able to determine the collector that an agent is being monitored by, IntroscopeEnterpriseManager.log on the collector should have the following.

mm/dd/yy hh:mm:ss [INFO] [PO:WatchedAgentPO Mailman 1] [Manager.Agent] Connected to Agent "SuperDomain/Tomcat|agent1.example.com|Tomcat|myJVM" at "Node=Agent_31, Address=agent1.example.com/10.15.231.81:50858, Type=socket" using Agent protocol revision 1.0

 

When the MoM is unable to determine the collector that an agent is being monitored by, IntroscopeEnterpriseManager.log on the collector should have the following. This is expected when an Agent is stopped.

mm/dd/yy hh:mm:ss [INFO] [Manager] Lost connection at: Node=Agent_31, Address=agent1.example.com/10.15.231.81:50858, Type=socket

mm/dd/yy hh:mm:ss [INFO] [Manager.Agent] Disconnected from Agent "SuperDomain/Tomcat|agent1.example.com|Tomcat|myJVM"

 

Note that the unmounting an agent does not cause "Lost connection" and "Disconnected from Agent". Instead, IntroscopeEnterpriseManager.log on the collector should have the following for an unmount.

mm/dd/yy hh:mm:ss [INFO] [PO:main Mailman 5] [Manager.Agent] Unmount completed of Agent "server2|Tomcat|JVM2"

 




Did you find this article helpful?

If so, consider buying me a coffee over at Buy Me A Coffee



Comments


Add a Comment


Please enter 549fcc in the box below so that we can be sure you are a human.