Monitoreo Servidor · 5 min read · Oct 21, 2025

Monitoreo de Servidores con Munin y Monit en Ubuntu 14.04 LTS

Este tutorial te mostrará cómo monitorear un servidor Ubuntu 14.04 con Munin y Monit. Munin produce gráficos bonitos sobre casi todos los aspectos de tu servidor, mientras que Monit verifica la disponibilidad de servicios como Apache, MySQL, Postfix y toma la acción apropiada, como un reinicio, si encuentra que un servicio no se comporta como se esperaba. La combinación de los dos te brinda un monitoreo completo: gráficos que te permiten reconocer problemas actuales o futuros, y un watchdog que asegura la disponibilidad de los servicios monitoreados. Este tutorial contiene dos capítulos (opcionales) sobre la integración de Munin y Monit en ISPConfig.

1 Nota Preliminar

El nombre de host de nuestro sistema es server1.example.com, y tenemos un sitio web www.example.com en él con la raíz del documento /var/www/www.example.com/web.

Los siguientes pasos deben realizarse como usuario root. Para convertirte en usuario root en tu servidor, ejecuta este comando:

sudo su

Asegúrate de que el sistema esté actualizado antes de comenzar a instalar Munin, ejecuta:

apt-get update  
apt-get upgrade

Apache se utiliza para mostrar las páginas de Munin, el módulo fcgid de apache es necesario para la función de zoom de gráficos de Munin. Instalaré apache y el módulo libapache2-mod-fcgid con apt.

apt-get install apache2 libcgi-fast-perl libapache2-mod-fcgid

Habilita el módulo fcgid en apache.

a2enmod fcgid

2 Instalar y Configurar Munin

Para instalar Munin en Ubuntu 14.04, ejecuta los siguientes comandos:

apt-get install munin munin-node munin-plugins-extra

Cuando el servidor esté ejecutando MySQL o MariaDB, habilita algunos plugins adicionales de Munin para monitorear MySQL:

cd /etc/munin/plugins  
ln -s /usr/share/munin/plugins/mysql_ mysql_  
ln -s /usr/share/munin/plugins/mysql_bytes mysql_bytes  
ln -s /usr/share/munin/plugins/mysql_queries mysql_queries  
ln -s /usr/share/munin/plugins/mysql_slowqueries mysql_slowqueries  
ln -s /usr/share/munin/plugins/mysql_threads mysql_threads

A continuación, debemos editar el archivo de configuración de Munin /etc/munin/munin.conf. Descomenta las líneas dbdir, htmldir, logdir, rundir y tmpldir (los valores predeterminados están bien). Queremos que Munin use el nombre server1.example.com en lugar de localhost.localdomain en la salida HTML, por lo tanto, reemplazamos localhost.localdomain con server1.example.com en la sección del árbol de hosts simple. Sin los comentarios, el archivo cambiado se ve así:

nano /etc/munin/munin.conf
# Archivo de configuración de ejemplo para Munin, generado por 'make build'  
  
# Las siguientes tres variables especifican dónde se encuentra la ubicación de las RRD  
# bases de datos, la salida HTML, los registros y los archivos de bloqueo/pid. Todos ellos  
# deben ser escribibles por el usuario que ejecuta munin-cron. Todos ellos  
# están predeterminados a los valores que ves aquí.  
#  
dbdir /var/lib/munin  
htmldir /var/cache/munin/www  
logdir /var/log/munin  
rundir /var/run/munin  
  
# Dónde buscar las plantillas HTML  
#  
tmpldir /etc/munin/templates  
  
# Dónde buscar los archivos estáticos www  
#  
#staticdir /etc/munin/static  
  
# los archivos cgi temporales están aquí. ten en cuenta que debe ser escribible por  
# el usuario cgi (generalmente nadie o httpd).  
#  
# cgitmpdir /var/lib/munin/cgi-tmp

# (Exactamente uno) directorio para incluir todos los archivos.
includedir /etc/munin/munin-conf.d
[...]  
# un árbol de hosts simple  
[server1.example.com]  
 address 127.0.0.1  
 use_node_name yes
[...]  

Debemos encontrar el archivo de configuración de Apache para Munin /etc/munin/apache.conf - define un alias llamado munin para el directorio de salida HTML de munin /var/cache/munin/www, lo que significa que podemos acceder a munin desde todos los sitios web en este servidor utilizando la ruta relativa /munin (por ejemplo, http://www.example.com/munin).

El archivo apache.conf que se envía con Ubuntu 14.04 todavía contiene la antigua sintaxis de apache 2.2, que no es correcta para apache 2.4, por lo tanto, reemplazamos ese archivo por uno nuevo. Primero hacemos una copia de seguridad del archivo antiguo.

mv /etc/munin/apache.conf /etc/munin/apache.conf_bak

Abre el nuevo archivo con un editor:

nano /etc/munin/apache.conf

Y pega el contenido a continuación:

Alias /munin /var/cache/munin/www  
  
 # Requerir local  
 Require all granted  
 Options FollowSymLinks SymLinksIfOwnerMatch  
 Options None  
  
  
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph  
  
 # Requerir local  
 Require all granted  
 Options FollowSymLinks SymLinksIfOwnerMatch  
   
 SetHandler fcgid-script  
   
   
 SetHandler cgi-script  
   

Reinicia Apache:

service apache2 restart

Luego reinicia Munin:

service munin-node restart

Ahora espera unos minutos para que Munin pueda producir su primera salida, y luego ve a http://www.example.com/munin/ en tu navegador, y verás las primeras estadísticas:

Munin en Ubuntu 14.04.

(Esto es solo un pequeño extracto de los muchos gráficos que munin produce…)

3 Proteger con Contraseña el Directorio de Salida de Munin (Opcional pero muy recomendado)

Ahora es una buena idea proteger con contraseña el directorio de salida de munin a menos que quieras que todos puedan ver cada pequeña estadística sobre tu servidor.

Para hacer esto, debemos crear el archivo de contraseña /etc/munin/munin-htpasswd. Queremos iniciar sesión con el nombre de usuario admin, así que hacemos esto:

htpasswd -c /etc/munin/munin-htpasswd admin

Ingresa una contraseña para admin. Luego abre /etc/munin/apache.conf de nuevo…

nano /etc/munin/apache.conf

… comenta “Require all granted” y agrega las líneas que marqué en rojo:

Alias /munin /var/cache/munin/www  
  
 # Requerir local  
 # Require all granted  
 AuthUserFile /etc/munin/munin-htpasswd  
 AuthName "Munin"  
 AuthType Basic  
 Require valid-user  
 Options None  
  
  
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph  
  
 # Requerir local  
 # Require all granted  
 AuthUserFile /etc/munin/munin-htpasswd  
 AuthName "Munin"  
 AuthType Basic  
 Require valid-user  
   
 SetHandler fcgid-script  
   
   
 SetHandler cgi-script  
   

Luego reinicia Apache:

service apache2 restart

4 Habilitar módulos adicionales en Munin

El comando de Munin “munin-node-configure –suggest” se puede usar para obtener recomendaciones para módulos adicionales de Munin que se pueden habilitar en el servidor. Ejecuta:

munin-node-configure --suggest

La salida debería ser similar a esto:

Usando Munin Suggest.

La columna “used” muestra si un módulo está habilitado, la columna “Suggestions” muestra si el servidor ejecuta un servicio que puede ser monitoreado por este módulo. Crea un enlace simbólico para el módulo en /etc/munin/plugins para habilitarlo.

Aquí habilitaré los módulos apache_* por ejemplo:

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

Reinicia Munin para cargar la nueva configuración.

service munin-node restart

5 Configurar Munin en ISPConfig (opcional)

El Panel de Control de Hosting ISPConfig tiene una opción para mostrar datos de Munin dentro del módulo Monitor de ISPConfig. Los datos de Munin se cargan en un iframe, como la mayoría de los navegadores bloquean el contenido que se carga desde http dentro de un sitio https, tendremos que encontrar una manera de acceder a las estadísticas de Munin a través de SSL. La forma más fácil es usar el vhost de ISPConfig habilitado para SSL para esto creando un enlace simbólico dentro del directorio web de ISPConfig al directorio de datos www de Munin.

ln -s /var/cache/munin/www /usr/local/ispconfig/interface/web/munin

Ahora podemos acceder a Munin en un navegador con https://server1.example.com:8080/munin a través del vhost apache de ISPConfig.

El siguiente paso es agregar la configuración en ISPConfig.

Inicia sesión en ISPConfig como usuario Administrador (admin) y ve a Sistema > Configuración del servidor, completa la URL, el nombre de usuario y la contraseña para Munin como se muestra a continuación.

Configuración de Munin en ISPConfig.

Asegúrate de usar https:// y el puerto 8080 en la URL de munin.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.