vMA como syslog server con vilogger
Hola amigos, soy Florián Murillo y en el post de hoy vamos a revisar la configuración de la vMA como recolector de logs de ESX y ESXi.
Para ello configuraremos un ESX y un ESXi para enviar logs a la vMA y después configuraremos el servicio vilogger para recolectar los logs.
Para configurar un ESX, nos conectamos por ssh y editamos el archivo /etc/syslog.cfg añadimos la línea:
*.* @10.1.1.1
Siendo 10.1.1.1 la IP de la vMA. A continuación hemos de permitir que el tráfico de syslog salga del ESX por lo que hemos de añadir la regla en el firewall del Service Console:
esxcfg-firewall -o 514, out, udp, trafico_syslog
y reiniciamos el servicio syslog:
service syslog restart
Para configurar un ESXi, utilizamos la propia vMA para lanzar una ejecución remota del comando vCLI que redirige el tráfico syslog hacia la vMA.
vicfg-syslog -s 10.1.1.1
Ahora solo nos falta configurar la vMA como syslog server con el servicio vilogger:
Lo primero que hacemos es cambiar la configuración del servicio syslog server en el servidor vMA para que acepte logs remotos:
sudo service syslog stop
cambiamos el archivo /etc/sysconfig/syslog, la línea SYSLOGD_OPTIONS ha de quedar como sigue:
SYSLOGD_OPTIONS=”-r -m 0”
y volvemos a levantar el servicio syslog con la nueva configuración:
sudo service syslog start
para permitir el tráfico de syslog, hemos de configurar el firewall de la vMA:
sudo iptables -I INPUT -i eth0 -p udp –dport 514 -j ACCEPT
y como queremos que este cambio sobreviva a los reinicios de vMA, también añadimos la regla de firewall (sin el comando sudo) al final del archivo /etc/rc.local
Ahora ya podemos empezar a utiliza vilogger, la utilidad que estructura los logs recogidos de los ESX/ESXi:
Primero iniciamos vi-fastpass ejecutando el comando vifpinit y a continuación facultamos a vilogger para recoger los logs de un host con:
vilogger –server esxi.dominio.local enable
No nos autenticamos en el host porque lo hace vi-fastpass por nosotros.
Cada host que activemos crea un directorio con el nombre del host en /var/log/vmware, en este directorio se almacenan los logs recogidos. SI quieres modificar el directorio por defecto de alojamiento de los logs, modifica el archivo /etc/vmware/viconfig/vilogdefault.xml
Verás algo parecido a la siguiente secuencia de comandos:
[vi-admin@localhost ~]$ vilogger list
Target Server: esxi.dominio.local
Log Status CollectionPeriod NumRotation MaxFileSize Location
(Seconds) (MegaBytes)
hostd Disabled – – – –
messages Disabled – – – –
vpxa Disabled – – – –
$ vilogger –server esxi.dominio.local enable
Target Server: esx1.dominio.local
hostd … Enabled
messages … Enabled
vpxa … Enabled
$ vilogger list
Target Server: esxi.dominio.local
Log Status Collec NumRot MaxFilSize Location
(Seconds) (MB)
hostd Enabled 10 5 5 /var/log/vmware/esxi.dominio.local/hostd.log
messages Enabled 10 5 5 /var/log/vmware/esxi.dominio.local/messages.log
vpxa Enabled 10 5 5 /var/log/vmware/esxi.dominio.local/vpxa.log
Con vilogger list verás el estado de todos los equipos registrados en vi-fastpass, es decir, vilogger utiliza vi-fastpass.
Con vilogger updatepolicy podemos modificar el intervalo entre recogidas de logs, el número de archivos a guardar o el tamaño de estos archivos, incluso podemos tener políticas diferentes por archivo de log.
Con vilogger –logname NOMBRE podemos desactivar la recolección de un log en concreto.
Como curiosidad, si entras en /var/log/vmware/esxi.dominio.local verás que los archivo de log anteriores al actual no los comprime como hace cuando se almacenan en el ESX/ESXi.
La semana próxima (la última antes de las vacaciones) seguiremos mejorando la configuración del vMA.
Ser felices.