Munin is a free and open-source networked resource monitoring tool. It offers monitoring and alerting services for servers, switches, applications, and services. It alerts the users when things go wrong and alerts them a second time when the problem has been resolved. It is written in Perl and uses the RRDtool to create graphs, which are accessible over a web interface. Its emphasis is on plug and play capabilities.
The team that develops Munin aim for a very "plug and play" experience, providing a lot of graphs and features out of the box but also providing over 500 plugins to easy enhance the product.
How to Install Munin
Munin is a very popular application and it's present in the repositories of most Linux distributions. It requires Perl and rrdtool to run, but you shouldn't worry about those dependencies since they will get fixed by the package manager. Also if you would like to access the graphics with your web browser you should also install a web server like apache or nginx.
You can use the apt-get tool in Ubuntu or other Debian based distribution to install Munin:
$ sudo apt-get install munin
As advertised Munin works good out of the box, after installation you can go to http://localhost/munin with your favorite browser and access the web interface:
And as you can see by clicking on the hostname you will have a nice number of graphs right out of the box:
You can also add more plugins easy in by installing the user contributed plugins in Ubuntu like this:
$ sudo apt-get install munin-plugins-extra
If you wish to tweak various aspects like the number of graphs to show, the location the html files are saved to or the name of the host you can do so in the main configuration file located in "/etc/munin/munin.conf"
Important note: At the time we are writing this article there is a bug in the default installation of munin on Ubuntu 14.04. The distribution comes with Apache 2.4 but the configuration file for munin is for the old Apache 2.2 server (You can see bug 1258026 here). To fix this open the configuration file located in "/etc/apache2/conf-enabled/munin.conf" and apply the following changes:
Replace the following text:
Allow from localhost 127.0.0.0/8 ::1
With this valid format for Apache 2.4:
Require host localhost
Require ip 127.0.0.0/8 ::1
Or if you wish to provide access from remote computers:
Require all granted