Reputation: 845
I am looking for a solution to monitor several (atleast 50) remote nodes. These remote nodes are behind a firewall and hence i cannot poll from a central server for information.
the connection needs to be from a Node -> central server. I have used ganglia and nagios before but they are all from Server-> nodes. Appreciate if anyone can give some open source recommendations. The remote nodes and central server are all linux based system.
Metrics i would like to collect are:
Upvotes: 4
Views: 6250
Reputation: 7335
Take a look at Uptime, an open-source remote monitoring tool written in Node.js and MongoDB: https://github.com/fzaninotto/uptime. Might be a good fit for your need.
Upvotes: 0
Reputation: 146
You can use Pandora FMS to monitor this servers. To do so you can install software agents on each machine configure an exeption in the firewall for the tentacle protocol and send back information to the Pandora Server. You can monitor all the parameters you mentioned above using local modules. For puppet there is a specific article written in pandora fms blog site where you can read step by step information on how to monitor puppet. For more information on pandora fms you can visit the following website: Pandora FMS Unified Monitoring TooL
Regards Ivo Yordanov
Upvotes: 0
Reputation: 440
This might be a bit too late to respond to this question now. However,
Cheers.
Upvotes: 0
Reputation: 149
If your firewall allows HTTP(S) you could try to use Nagira API (RESTful) to submit passive checks. There several examples of setups implemented using it. Please check http://dmytro.github.com/nagira
Alternatively you can use the same API to poll clients. In case if your firewall allow outgoing HTTP(S).
Upvotes: 1
Reputation: 124
If you have access to a single server behind the firewall, you could use Mod-Gearman to run checks for a specific hostgroup on that remote host.
Upvotes: 1
Reputation: 349
If you can poke a firewall hole (tcp/5666) for a single host on that network, you can use that host as a sort of "NRPE gateway".
Then you can use check_nrpe to have that host do all of the checks against the other 50 or so nodes behind the firewall (including chaining check_nrpe together for "internal" checks).
If you go this route, be sure to make service dependencies (consider using a servicegroup) for all of those services to depend on NRPE on the "gateway".
Upvotes: 1
Reputation: 512
I would look at using passive checks with Nagios using either NSCA or NRDP. Both methods let you push results from your remote machine up to the central server.
http://nagios.sourceforge.net/docs/3_0/passivechecks.html
Or you can use NRDP, which communicates over standard http and https protocols. http://assets.nagios.com/downloads/nagiosxi/docs/NRDP_Overview.pdf
Once you got one system set up with either of these it wouldn't be difficult to clone the setup with puppet or even rsync.
Upvotes: 2