Setting up Munin for Monitoring on CentOS 6 x64

Munin is a server monitoring and status application that provides two components:

Munin can provide status and monitoring for any configuration from a single VPS to an entire datacenter of machines.

The following guide assumes you’re logged in as root and running CentOS 6 x64 on AKLWEB HOST. This guide should apply to CentOS 7, too.

You will require two servers.

Note that you can also monitor Server A, if desired.

Install and Set Up Munin

Follow these steps on Server A.

First, install Apache to serve our Munin server status page, as well as Munin itself.

yum install httpd munin

Install nano if you’re not comfortable with vi.

yum install nano

It’s time to edit the Munin configuration to add monitoring of our additional servers, as by default Munin only monitors the local machine. Run the following.

nano /etc/munin/munin.conf

At the bottom, append the following, where 192.168.10.2 is replaced with the IP address of Server B, and serverb is replaced with a descriptive hostname.

[serverb]
address 192.168.10.2
use_node_name yes

Additional servers to be monitored can be added in the same manner.

By default, Munin is not secured with a password. To set up a password, run the following:

nano /etc/munin/munin-htpasswd

… and enter a password to secure your Munin installation.

The username is munin.

Start Apache and Munin-node.

service start httpd
service start munin-node

You will now be able to log in  http://[SERVER_A_IP]/munin with the username munin and the password you have just specified.

Continue below for setting up Munin-node on additional machines and configuring Munin-node plugins.

Setup Munin-node

The following can be applied to Server A, Server B, as many additional servers as needed.

Install munin-node if it is not already installed.

yum install munin-node

Edit the munin-node.conf file.

nano /etc/munin/munin-node.conf

Append a new line with the IP address of Server A. The address must be in the format of a regular expression. Replace 192.168.10.1 with the IP address of Server A.

allow ^192\.168\.10\.1$

At this point, you can start munin-node.

service munin-node restart

Server B’s status will be visible on your Munin status page at http://[SERVER_A_IP]/munin within a few minutes.

Enabling Munin-node Plugins

munin-node comes packaged with a wide variety of plugins.

To browse the available plugins:

cd /usr/share/munin/plugins/
ls

All plugins can be enabled by creating a symbolic link to them in the /etc/munin/plugins folder. For example, to enable the Apache status plugins, run the following commands:

ln -s /usr/share/munin/plugins/apache_accesses /etc/munin/plugins/apache_accesses
ln -s /usr/share/munin/plugins/apache_processes /etc/munin/plugins/apache_processes
ln -s /usr/share/munin/plugins/apache_processes /etc/munin/plugins/apache_volume

… then restart munin-node.

service munin-node restart

Wait a few minutes, and your status will be available on your master server.