Forum Discussion
tarsier_90410
Oct 21, 2009Nimbostratus
nagios for pool monitors?
Has anyone here tried to use custom HTTP pool monitors with the alias address/port set to pull service status data from the Nagios web interface?
Our thought is that we are using Nagios to monitor many metrics for our systems already, and that rather than rewrite each check in LTM and add load to the systems from being monitored by multiple systems, we could just have Nagios continue to monitor, alert, and log everything, while pointing BIGIP at it.
I have created this monitor and assigned it to a pool, but no luck so far.
interval: 60
timeout: 181
send string: GET /nagios/cgi-bin/extinfo.cgi?type=2&host=SERVER1&service=CPU
receive string: serviceOK
user name:
password: ******
reverse no
transparent no
alias address:
alias port: 80
If anyone has tried this and had a similar error, I greatly appreciate any help. Otherwise my next step is packet inspection to figure out why the checks are failing. (I see the requests in the apache logs, but the pool continues to be marked down.)
The end goal is to have Nagios determine the availability and load of the app, db, ldap, etc; use the Nagios output to drive the pool monitor, and check the pool state from an iRule to decide when to show a "we are experiencing high load" or maintenance page to the web app users.
- James_Quinby_46Historic F5 AccountIs nagios possibly looking for an HTTP/1.1 request? You may have to add a few things to your send string, along the lines of the following:
GET /nagios/cgi-bin/extinfo.cgi?type=2&host=SERVER1&service=CPU HTTP/1.1\r\nHost: \r\nConnection: Close\r\n
- hooleylistCirrostratusI think jquinby's suggestion to use an external monitor is good. Trying to use a standard HTTP monitor to poll a single, separate device for status of the pool members won't work. This is because you cannot specify the pool member IP address and port in a monitor send string--which is what Nagios is going to expect. With an external monitor, you can get the current pool member IP and port in shell variables and use that in the HTTP request sent to Nagios.
- tarsier_90410NimbostratusThank you both for the suggestions. HTTP 1.1 settings were the culprit.
- James_Quinby_46Historic F5 AccountExternal monitors will work in 9.x as well - the http monitor script is just a big shell wrapper for easily passing lots (and lots) of things to curl. V10 will get you the inband passive monitors which are designed to...well, passively watch network traffic rather than interacting directly with the service.
Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects