En este artículo, describiré cómo puede monitorear múltiples sistemas con munin. munin produce pequeños gráficos ingeniosos sobre casi todos los aspectos de su servidor (promedio de carga, uso de memoria, uso de CPU, rendimiento de MySQL, tráfico eth0, etc.) sin mucha configuración. Instalaré el cliente munin en todos los sistemas que se monitorearán (incluido el servidor munin mismo); los clientes de munin luego informarán al servidor de munin.
Este tutorial se escribió para Debian Etch, pero la configuración también debería aplicarse a otras distribuciones con pequeños cambios.
Primero quiero decir que esta no es la única forma de establecer un sistema de este tipo. Hay muchas maneras de lograr este objetivo, pero este es el camino que tomo. ¡No emito ninguna garantía de que esto funcione para usted!
1 nota preliminar
El nombre de host de nuestro servidor munin es server1.example.com (dirección IP:192.168.0.100), y tenemos un sitio web www.example.com con la raíz del documento /var/www/www.example.com/web .
Estoy usando un cliente munin aquí, server2.example.com (dirección IP:192.168.0.101). Por supuesto, puede agregar tantos sistemas cliente como desee.
2 Instalar y configurar munin en el servidor
servidor munin (servidor1.ejemplo.com):
Para instalar el cliente y servidor munin en Debian Etch, hacemos esto:
apt-get install munin munin-node
A continuación, debemos editar el archivo de configuración de munin /etc/munin/munin.conf. Queremos que Munin coloque su salida en el directorio /var/www/www.example.com/web/monitoring, por lo tanto, cambiamos el valor de htmldir y queremos que 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. Con esta configuración, el servidor Munin puede monitorearse a sí mismo. Sin los comentarios, el archivo modificado se ve así:
vi /etc/munin/munin.conf
dbdir /var/lib/munin htmldir /var/www/www.example.com/web/monitoring logdir /var/log/munin rundir /var/run/munin tmpldir /etc/munin/templates [server1.example.com] address 127.0.0.1 use_node_name yes |
AuthType Basic AuthName "Members Only" AuthUserFile /var/www/www.example.com/.htpasswd <limit GET PUT POST> require valid-user </limit> |
# # Example config-file for munin-node # log_level 4 log_file /var/log/munin/munin-node.log port 4949 pid_file /var/run/munin/munin-node.pid background 1 setseid 1 # Which port to bind to; host * user root group root setsid yes # Regexps for files to ignore ignore_file ~$ ignore_file \.bak$ ignore_file %$ ignore_file \.dpkg-(tmp|new|old|dist)$ ignore_file \.rpm(save|new)$ # Set this if the client doesn't report the correct hostname when # telnetting to localhost, port 4949 # #host_name localhost.localdomain # A list of addresses that are allowed to connect. This must be a # regular expression, due to brain damage in Net::Server, which # doesn't understand CIDR-style network notation. You may repeat # the allow line as many times as you'd like allow ^127\.0\.0\.1$ allow ^192\.168\.0\.100$ |