Network Monitoring with NEMS, NAGIOS and Rasberry Pi

Part of running my lab is ensuring that services I expect to run 24×7 are, in fact, running and doing just what I expect them to do. Unifi offers some level of monitoring around my internet connection but I wanted to go one further and be notified when services are unavailable or if a resource is consumed over a defined threshold.

Up until recently, I had planned on running this on a Linux box until I came across a Rasberry Pi B+ a good low power monitoring solution might be just what I need.

I’ve not gone into detail as to my hypervisor setup at home but running a monitoring solution on the exact server I want to monitor seemed to me like putting too many eggs in one basket. After some Google-Fu I came across NEMS Linux and open source project that offers a scaled-down version of NAGIOS to run on a Rasberry Pi.

This does come with some disadvantages right out of the gate. The Pi though very cost-effective and low power is using an SD card as it’s storage medium. Logging vast quantities of data to an SD card isn’t the brightest of ideas as they tend to burn out quickly with many prolonged writes. However, NEMS seems like a decent lightweight version of NAGIOS so I figured for the price of an SD card I’d give it a go. This version for NAGIOS is also somewhat limited with not as many features or support as the full NAGIOS Core for which are are not running here.

However, even with the disadvantages listed above the fact I’ve got a low power reliable device that’s able to monitor services within the network in a standalone way and gets me working with consoles more is a win-win.

The distro supplied was incredibly easy to install, as simple as installing Raspian OS to the SD card. Equally simple was it’s initial setup (excuse me for lack of photos of this). After that things get a little more complicated, as someone who’s never used NAGIOS monitoring before the UI was confusing at first but several configuration videos later and we’ve got full monitoring of key devices in the network.

I’m fairly comfortable with the consoles and was able to make minor tweaks to the application through it’s shell configuration (getting email notifications working was tricky). It does a healthy job of monitoring my switches, VM’s, hosts and website all through one system.

One of my concerns long term is the overall reliability of the SD card. One thing I know they really don’t like is lots of small reads / writes which is something that a service like this will do. As far as I understand it however with the optimisations applied to this distro it’s been reported as pretty reliable. Only longer term use will show if that’s anything to go by.

Given the low cost of a Rasberry Pi and high efficency I’m happy to have this running and keeping an eye on my network. I think if I expanded the number of endpoints I’d be temped to go for Nagios Core on it’s own dedicated box but for now this seems like a good idea.