When the number of your servers is increasing more than you have expected, is a good practice to have a friend that helps you track what’s happenning on those.
For this I use, among other apps, Munin. Munin is a “networked resource monitoring tool that can help analyze resource trends and […] problems” according to its site.
But this post isn’t a howto-install guide but a how to personalize and extend munin to fit your requirements, just with a custom layout and new plugins.
Layout
I don’t like the default theme of munin. There is an alternative template at http://www.doeeng.com/ and a live demo. There are detailed instructions to install and customize there so I won’t touch it here. Seems that original webpage is down so let me explain the installation process.
You can download a tarball containing the alternative template from http://mabishu.com/downloads/munin-alternative-template.tbz
For installing just move the /etc/munin/templates to /etc/munin/templates_old, extract this tarball in /etc/munin/ and verify that this creates a new template folder. Just a puntualization, for me is far better the “template-light” so you have to change the import in index.css to get it.
Plugins
Is very simple to install plugins for munin. You only have to drop it on /usr/share/munin/plugins and after that make a symbolic link from /etc/munin/plugins to it. Fortunately, on Debian systems when you install munin and munin-node there is some plugins installed. Indeed, that plugins would cover all your needs but if you need more you can install “munin-plugins-extra” and on Ubuntu Lucid you can install “munin-libvirt-plugins”
and “munin-java-plugins”.
Additionally, Munin has the MuninExchange site that is a central point when all the users send their plugins to share with all with open licences. There is a lot of plugins but I have to highligth Memcache plugin, sshd_log, and apache
From prototype to serious products
The gap between something that works and something you can be responsible for is not features. It is backups you have restored, deploys you can undo, logs that survive the crash, and alerts that reach a human.
3 ways of get memcached status
If you use memcached to cache contents among different servers and apps, and you want to get statistics for what is happening inside the memcached-sever you can use one of the available interfaces for programming languages but there are simpler ways to do that.
Speed up build times for ArchLinux AUR packages
How to cut AUR package build times on ArchLinux, plus what the move from Ubuntu to a rolling release actually gets you.