If you've been reading the Barking Seal for a while, you probably already know that we use Nagios to monitor a variety of things here at AppliedTrust. It's been a great platform for us, and we've put a lot of time and energy into writing custom plugins, integrating performance graphing tools, and generally making it work for us. I'm a huge fan of Nagios because of its stability, openness (the documentation is truly excellent), and flexibility. Historically though, Nagios has had two weak spots. The first is auto-discovery, and the second is usability. Unfortunately, the first issue is likely to be with us for quite some time -- it seems like the process of going out over the network and automatically discovering and configuring servers and services is just too complex for the moment. Or perhaps it just hasn't been worthwhile for anyone to solve that problem yet... either way, I haven't found a good solution as of now. But amazingly, the last couple of years have seen a lot of development in the second area. There are now several different open source projects that provide easy-to-use GUI interfaces for configuring Nagios!
I think I should add a little clarification here. What I am complaining about is not the web interface that Nagios has had forever, where you can acknowledge alerts, view check results, force rechecks, or any of that; I have no problems with that interface. Instead, I'm talking about the fact that all Nagios configuration is handled through text files. For experienced *nix administrators, text files are great. Sed, grep, and vim allow you to manage hundreds of text files without much difficulty. But whenever I had to show anyone else how to make a change I would cringe, because most people don't enjoy editing hundreds of text files. That is the problem that has been solved. The two most popular solutions are Centreon and GroundWork. We chose to go with Centreon, so that's what I'm more familiar with, but from what I can tell, both products provide basically the same functionality. The key improvement is that Centreon relies on a MySQL database to store configuration data. On top of that, there's a web interface (written in PHP, so imminently hackable) that allows you to do all of the necessary management. Using a database allows the front end to let you do things like bulk changes to tens of hundreds of services at once. It lets you define a service, and then link it to multiple hosts. Centreon supports everything that Nagios supports, such as templates that inherit settings, escalations, dependencies, and event handlers. In addition it supports a lot of other things, like setting up host templates with a bunch of services automatically attached. It integrates with LDAP if you want to authenticate your users against your AD controller. It also has built-in performance graphing:
And best of all, it makes configuration easier for those who aren't totally in love with the command line! I believe this opens Nagios up to a whole new range of potential users, and to me that's really exciting. There's still a learning curve associated with Nagios itself -- learning what sorts of things it can monitor and how to make it react the way you want it to -- but at least now it's more accessible. We've been running Centreon on our production Nagios server for 3 months now, and so far we're very pleased. How about you?

Comments
Hi Chris,
when I learned to use Nagios, I too was missing a GUI that made it easy to configure . But when I started my web hosting business, I decided to base everything on a system integration solution. I chose Chef and now, everytime a new server joins our virtual datacenter, a few minutes later it shows up in Nagios.
Since we also needed a metrics gathering software that could be configured by Chef, we threw out Cacti (which has a GUI and a database backend) and replaced it with Munin that simply uses text files writable by Chef.
Today, I'm convinced that at the point you start craving a GUI to keep grips on your configuration, you'd rather introduce something like Chef or Puppet. Manual configuration, be it GUI-supported or not, just doesn't scale.
I'd be curious what you think of those tools.
Best regards,
Jochen
Jochen,
I think Puppet and Chef are also great tools that any serious system administrator should look at, and certainly the setup you describe makes sense. One thing that a GUI provides though, is a slightly less steep learning curve. I think Centreon allows people who are not as familiar with Nagios or with Unix in general to make changes, and relieves the administrative burden of managing the system. Also, Centreon includes built-in performance graphing, so you can see trends in CPU utilzation, etc. There are other add-ons available that can do that, but Centreon's implementation is nice.
Chris