on 07-08-2015 10:43 PM
Hi All
We are using BO 4.1 SP5. In our setup there are 4 hosts that are part of the business objects cluster. For monitoring we are using the JMX interface exposed by the monitoring service. Since the monitoring service supports clustering it is only active on one host in the cluster, on the rest it is inactive. The problem we are facing is that the 4 hosts under go a weekly reboot, and depending on which host the monitoring service comes up first the JMX agent service URL gets changed. So if prior to the reboot the monitoring service was on server A, the JMX URL we would use to monitor would be service:jmx:rmi://serverA:5005/jndi/rmi://serverA:5005/serverA:6400. However, after the reboot if monitoring service comes up first on server B, the URL will change to service:jmx:rmi://serverB:5005/jndi/rmi://serverB:5005/serverA:6400
My question is, is there a way to have a consistent JMX URL that does not change or a property to say if a particular server becomes available it always will be the active server? or any other suggestion to get round this problem.
Thanks
Hi Faisal,
I see your dilemma here. One thing I can tell you is that it is only necessary to have a monitoring service on each host if you are using Host Monitoring (with the SAP Host Agent). If not, then there is no reason to run a Monitoring Service on each host in your landscape (in this case you would only need two for redundancy)
The reason that this is required with Host monitoring is because BI 4.0 and 4.1 are using an older method for accessing host metrics from the host agent (passive monitoring service makes local calls to the process SAPOSCOL.exe). This method is actually deprecated and will be removed from host agent at the end of 2015. In BI 4.2, we should be using the new method (Web Service API) for accessing host metrics and you will no longer be required to run a monitoring service on each host in your landscape since the one monitoring service can access host metrics from all BI nodes over the web service calls. So, this may not be a problem for you in the near future.
In the meantime, I can only suggest that you add a delay in your restarts so that you know which Monitoring service will come online first (IE, Start SIA node A, wait 3 minutes, then start the rest of the SIA nodes).
There may also be some other DNS tricks you could use to work around this problem but it might be easier to simply explicitly order your SIA node restarts so you know which will Monitoring service will be active.
Regards,
Toby
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Faisal,
If it were me, I would have a simple Java program that handles the load balancing by iterating through a list of JMX Endpoint URL (in other words, the possible Monitoring service URLs) and attempting the JMX connection. Put this in a try/catch block for each connection so that if the connection fails, it catches the exception and moves on to the next URL. Once the connection succeeds, the program would close the connection and then return the active URL to your monitoring application.
Regards,
Toby
User | Count |
---|---|
86 | |
10 | |
9 | |
9 | |
9 | |
6 | |
6 | |
5 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.