Linux – Solution to Manage and Monitor (Ubuntu) Machines

linuxmonitoringUbuntuupdate

I'm looking for a tool like Canonical (system management and monitoring for Ubuntu) that is Open Source and free. The goal is to manage a dozen or so KVM machines for private testing purposes.

I know of puppet and munin or RHQ as separate tools to manage and monitor, but I'd prefer something integrated. Any tips?

Basic requirements would be:

  • system package management and update (individual selection for each managed node)
  • configuration of basic system services (Users, NFS, cron, ideally also Apache)
  • monitoring (charting of system resources, disk, io, memory, etc) and alerting, ideally a default configuration with sensible values for alerts

Best Answer

I don't know of a centralized way to keep everything smooth and monitored. On the other hand I see the other answers suggesting combinations of tools. So here is mine:

  1. Zabbix has monitoring/graphics together in one tool. Supports information via SNMP and custom agent. It's very good, but it must be tuned for your servers or you will have problems with the database.
  2. Puppet is a configuration manager where you can write manifests that define a machine. It takes care from configuration, package management and deployment (so you can apply a change of config to a great number of servers at the same time). It's a GREAT tool, easy to install and easy to get started, but advanced configurations require some knowledge of their manifest language.

Zabbix has a web interface and Puppet has a Puppet Dashboard project that is pretty cool.

On a last note, Webmin seems a good idea but on my experience is one BIG security concern. Lots of exploits have been found over the time and I would not trust it on production servers.