Observium is a pretty nifty tool I stumbled upon while we were consolidating some of our monitoring trying to save on some costs on offsite monitoring. We wanted to be able to keep past data for reference as well as have data from today. Observium sort of fit the bill and on a whim, I just whipped up a server to check it out.
Before we go much further, I’ll just talk about the server requirements – it requires Apache, MySQL, PHP, SNMP (net-snmp), RRDTool, and a few other monitoring plugins. For hardware, you could probably get away with on a VM with 2 cores, 2 gigs of RAM to start with, though scaling will definitely come in to play. MySQL does not have to be on the same server either – you can definitely put it on another server. At first, I tried installing this on CentOS 6.4 (CentOS 6.5 has since come out and I have not tried that), but some of the graphs were not displaying properly. After that I tried on Debian Wheezy and things worked much better – so I would suggest using Debian even if you’re a RHEL / CentOS shop (like we are).
A few other notes before we go over using it – when I first started using it, it was a 100% free / open source project that was updated straight from their SVN repository. Since then, they’ve forked in to a “Community Edition” and a “Professional Edition”. The “Professional Edition” will set you back about 160$ (which I don’t have), but I would have to say that it is totally worth it and sooner or later, we will most likely do the same.
The Community Edition is released bi-yearly and it will carry with it all the updates that are committed to their “Professional Edition” repository. The only thing this really lacks is an alerting mechanism. It’s really for monitoring only. According to their documentation, their Professional Edition does have alerting built in.
A few things it monitors really well: Switches, Firewalls, VMware (ESXi Hosts), Linux. Some of the things it lacks in are monitoring more specifics – for example, you can’t really monitor MySQL without doing a bunch of work with an agent (which I find to be more trouble than it’s worth, especially since things like Nagios / Nagvis do that pretty well without having to do a bunch of supplemental configuration).
Anyway, on to some screenies:
Some switches and other equipment are supported MUCH better than others (for example, this Dell PowerConnect has a ton of information, but a Netgear Switch that I also monitor has very little information).
Other things will monitor more than just network interfaces – CPU / Memory / Disk I/O: