I have Nagios set up on three disjoint networks that are all behind firewalls. The monitoring is working great and I'm getting the hang of the somewhat complex configuration. I have a server that is outside of these networks that could be made available to them. What I would like to do, ideally, is have these Nagios servers inside of the firewalls continue to do their normal monitoring and send out their notifications as they have been, but I would like them all to send their data to the server that I have outside of the firewalls.
Essentially, this server would be a place where I could see everything going on inside of each disjoint network at once, and the only things contacting it would be other other Nagios servers. Firewall configs are not an issue, I just have no idea how to configure this in Nagios.
I have Nagios 3.2.1 running on all monitoring servers, compiled from source on CentOS 5.5 monitoring Windows Servers with NSClient++
Nagios does has a collector: NSCA. You set that up on the master server and define a ocsp_command on each of the slaves to send its service check results to the master.
This is a well-documented setup. See http://nagios.sourceforge.net/docs/3_0/distributed.html
Nagios does not have any specific collector, however you could give it a try to this module link text
Besides the already mentioned DNX you should take a look at Merlin. Also make sure you read the section on Distributed Monitoring in the Nagios manual.
NDO Utils includes a MySQL backend for Nagios. You could point the NDO plugin at a central MySQL server and analyzing the data from there. If you're happy with your current distributed monitoring/notification setup, this is probably the simplest solution.
--edited to reflect that NDO Utils is a separate module