{"id":2884,"date":"2013-01-01T13:12:00","date_gmt":"2013-01-01T12:12:00","guid":{"rendered":"http:\/\/www.devco.net\/?p=2884"},"modified":"2013-01-01T13:18:07","modified_gmt":"2013-01-01T12:18:07","slug":"scaling-nagios-nrpe-checks","status":"publish","type":"post","link":"https:\/\/www.devco.net\/archives\/2013\/01\/01\/scaling-nagios-nrpe-checks.php","title":{"rendered":"Scaling Nagios NRPE checks"},"content":{"rendered":"

Most Nagios systems does a lot of forking especially those built around something like NRPE where each check is a connection to be made to a remote system. On one hand I like NRPE in that it puts the check logic on the nodes using a standard plugin format and provides a fairly re-usable configuration file but on the other hand the fact that the Nagios machine has to do all this forking has never been good for me.<\/p>\n

In the past I’ve shown one way to scale checks by aggregate all results for a specific check into one result<\/a> but this is not always a good fit as pointed out in the post. I’ve now built a system that use the same underlying MCollective infrastructure as in the previous post but without the aggregation.<\/p>\n

I have a pair of Nagios nodes – one in the UK and one in France – and they are on quite low spec VMs doing around 400 checks each. The problems I have are:<\/p>\n