Como se monta la pagina de diagnostico de munin
Pide algunas librerias como las de perl rddtool
Consiga los rpms .. se necesitan dos:
- munin.node .. que es el que corre en la maquina y ejecuta los plugins para hacer las graficas
- munin .. es el papa, es quien muestra y quien consulta los otros servidores
En el archivo /etc/munin/munin.conf se incluyen los servidores que se van a mostrar
# a simple host tree
[zion]
address 127.0.0.1
use_node_name yes
[babylon3]
address 10.5.0.2
use_node_name yes
[calypso]
address 192.168.8.202
use_node_name yes
[ska]
address 192.168.8.201
use_node_name yes
Cuando tiene varias maquinas y un solo despliegue, tiene que conceder el acceso al servidor en
/etc/munin/munin-node.conf
# 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 ^192\\.168\\.1\\.1$
Aun cuando la instalacion estandar genera sus links .. normales.. a veces es necesario instalar nuevos plugines.
La forma facil es reconfigurare para que lo haga automatico
munin-node-reconfigure –shell
Tome la salida y ejecutela en un shell y eso le da todo.
Manualmente se pueden agregra con un link. Cambiese a /etc/munin/plugins y haga el link
ln -s
Ante todo primero prueba que tiene acceso y permiso para hacer consultas snmp al servidor en cuestion
snmpwalk -v 1 192.168.8.13 -c public interfaces
En el munin.conf agregue el servidor .. pero va a ser local
[descartes]
address 127.0.0.1
use_node_name no
contact soporte
Y luego en donde estan los plugins .. haga los links
munin-node-configure –shell –snmp buffalo
Que debe resultar en unos links como
snmp_descartes_df → /usr/share/munin/plugins/snmp__df
snmp_descartes_if_1 → /usr/share/munin/plugins/snmp__if_
snmp_descartes_if_3 → /usr/share/munin/plugins/snmp__if_
snmp_descartes_if_4 → /usr/share/munin/plugins/snmp__if_
snmp_descartes_if_err_1 → /usr/share/munin/plugins/snmp__if_err_
snmp_descartes_if_err_3 → /usr/share/munin/plugins/snmp__if_err_
snmp_descartes_if_err_4 → /usr/share/munin/plugins/snmp__if_err_
snmp_descartes_if_err_6 → /usr/share/munin/plugins/snmp__if_err_
snmp_descartes_load → /usr/share/munin/plugins/snmp__load
snmp_descartes_memory → /usr/share/munin/plugins/snmp__memory
snmp_descartes_netstat → /usr/share/munin/plugins/snmp__netstat
snmp_descartes_processes → /usr/share/munin/plugins/snmp__processes
snmp_descartes_rdp_users → /usr/share/munin/plugins/snmp__rdp_users
snmp_descartes_uptime → /usr/share/munin/plugins/snmp__uptime
snmp_descartes_users → /usr/share/munin/plugins/snmp__users
snmp_descartes_winload → /usr/share/munin/plugins/snmp__winload
snmp_descartes_winmem → /usr/share/munin/plugins/snmp__winmem
Cuando tenga mucho IO .. puede usar un servicio llamado rrdcached que permite reducir el uso del disco duro
http://munin-monitoring.org/wiki/rrdcached –
Siga este howto y es suficiente ..
http://munin-monitoring.org/wiki/MuninConfigurationMasterCGI –
OJO con los permisos .. todo lo que toque el cgi debe ser de apache (www-data) . .. como /var/log/munin/munin-cgi* o /var/lib/munin/cgi-tmp
Si tiene demasiados plugins y el nodo da timeout pidiendo los datos. Entonces esta es la solucion.
Se crea un servicio paralelo a munin-node llamado munin-async, se crea un usuario y intercambian llaves y los datos se traen de un spool usando ssh
El munin-async hace consultas al munin-node y las almacena en el spool. Si el puerto es diferente al 4949 toca decirselo.
- http://munin.readthedocs.org/en/latest/node/async.html –
- http://blog.hbis.fr/2013/07/25/munin-async_mode/ –
- http://www.matija.si/system-administration/2012/07/15/installing-munin-async/ –
** OJO con los permisos de /var/lib/munin/.ssh/id_rsa .. o sea la llave privada ..debe ser 600 si no, la conexion no anda
** Se puede evitar el ssh intermediario si es local llamando directamente con cmd ..
https://wiki.gentoo.org/wiki/Munin
https://bitsanddragons.wordpress.com/2017/06/27/a-windows-munin-node/
https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/munin-node-win32/munin-node-win32-1.6.0.0-installer.exe
Para monitoriar apache y MySQL - MariaDB toca remoto .. con munin-node local no anda… entonces configure un localhost y en la configuracion de los plugins lo manda al remoto
Para apache toca habilitar la IP para consultas de server-status (ver adelante)
Para MySQL - MariaDB necesita acceso y un usuairo ,,. y hace las consultas remotas . . Nada que hacer
Active el server status (esto es redhat)
# ExtendedStatus controls whether Apache will generate "full" status # information (ExtendedStatus On) or just basic information (ExtendedStatus # Off) when the "server-status" handler is called. The default is Off. #ExtendedStatus On ... # Allow server status reports generated by mod_status, # with the URL of http://servername/server-status # Change the ".example.com" to match your domain to enable. #<Location /server-status> SetHandler server-status Order deny,allow Deny from all Allow from 127.0.0.1 # Allow from .example.com</Location> # Allow remote server configuration reports, with the URL of # http://servername/server-info (requires that mod_info.c be loaded). # Change the ".example.com" to match your domain to enable. #<Location /server-info> SetHandler server-info Order deny,allow Deny from all Allow from 127.0.0.1 # Allow from .example.com</Location>
En la familia debian es un tris diferente .. En /etc/apache2/mods-enabled deben estar los links para status* e informes_semanales.html informix_apache_php.html y revise el interior, tienen lo mismo que se ha mostrado.
OJO ..en apache 2.4 es “Require all granted”
Es necesrio agregar opciones para la conexion en el archivo /etc/munin/plugins.conf
[MySQL - MariaDB*]
env.mysqlopts –user=root –password=passwdroot
-
Como los plugins de Postgres piden la contraseña, toca decirle que confie en el usuario postgres para que no pida password en el archivo de configuracion “pg_hba.conf”
en Redhat's→/etc/postgresql/8.3/main/pg_hba.conf
en Debian's→/etc/postgresql/8.3/main/pg_hba.conf
y agregar la siguiente linea:
# TYPE DATABASE USER CIDR-ADDRESS METHODhost all postgres 127.0.0.1/32 trust
Ejemplo.
# database # super user can access the database using some other method. # Noninteractive # access to all databases is required during automatic maintenance # (autovacuum, daily cronjob, replication, and similar tasks). # # Database administrative login by UNIX socketslocal all postgres ident sameuser # TYPE DATABASE USER CIDR-ADDRESS METHOD # "local" is for Unix domain socket connections onlylocal all all md5 # added by skina # host all all 127.0.0.1/32 md5 host all postgres 127.0.0.1/32 trust host all all ::1/128 md5 # IPv4 local connections:host all all 127.0.0.1/32 md5 # IPv6 local connections:host all all ::1/128 md5host all all 0.0.0.0/0 md5
Sucede que Cpanel tiene su propio perl y entonces el que usa Munin no encuentra los modulos
El truco esta en definir un variable de ambiente llamada PERL5LIB
# byby skina
export PERL5LIB=“/usr/share/perl5:/usr/share/perl5/vendor_perl”
Aunque ni asi me funciona. Pruebe lo siguiente
- http://www.jethrocarr.com/2012/05/26/munin-performance/
-
FIN
15-Marzo-2006 J.E.Gomez v1.0 Primera version
07-Mayo-2009 Aldo Fernando Vilardy Roa v1.1
Advertencia
Este documento es privado y es de uso exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra la ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal.