martes, 26 de mayo de 2009

Backup BBDD Zabbix sin histórico

En la BBDD de Zabbix tenemos almacenado tanto la configuración de este como el histórico de los valores que vamos recogiendo.

El histórico de Zabbix es el que va aumentando durante la vida de nuestro servidor y lo que hace que la copia de la base de datos a veces sea muy lenta.

Nos podemos encontrar con la necesidad de crear un Zabbix de test con la misma configuración que el de producción pero sin datos o simplemente vaciar el histórico para aumentar la velocidad o el espacio de disco.

Lo primero que vamos hacer es extraer el listado de tablas de nuestro zabbix a un archivo:

mysql -p zabbix -e 'show tables' > tables.txt

Ahora exportaremos los datos de la BBDD exceptuando las tablas history:

grep -v Tables ./tables.txt | grep -v history | xargs mysqldump -p zabbix > backup.sql

Y con esto ya tenemos una copia de nuestro Zabbix sin el histórico lista para importar donde queramos.

Zabbix 1.6.5 SO: Ubuntu 9.04

miércoles, 13 de mayo de 2009

Ejecutar comandos remotos en Zabbix

Voy a intentar explicar las opciones para usar comandos remotos para administrar nuestros dispositivos monitorizados. Como requisito previo en la configuración del agente de nuestros dispositivos “zabbix_agentd.conf” tenemos que habilitar la opción de ejecutar comandos remotos “EnableRemoteCommands=1”.

Tenemos varias opciones para diferentes escenarios.

OPCIÓN 1. Comando remoto mediante Configuration-Intems.

Esta opción sirve para recoger la información que produce un comando de manera periódica.

system.run[comando_remoto]

OPCIÓN 2. Comando remoto mediante Configuration-Actions.

Esta opción la utilizaríamos para ejecutar un comando de manera automática si se produce alguna condición previamente configurada.

{HOSTNAME}:comando_remoto

OPCIÓN 3. Comando remoto mediante Administration-Scrips.

Esta opción sirve para ejecutar de manera manual un comando y ver el resultado.

zabbix_get -s {HOST.CONN} -k system.run[comando_remoto]



Zabbix 1.6.2 SO: Ubuntu 8.10

martes, 5 de mayo de 2009

Ejemplo mensaje Alerta/Acción para zabbix

Aquí os dejo un pequeño ejemplo para configurar un mensaje de alerta/acción para zabbix "Configuration-Actions".

Default subject:

{HOSTNAME} {TRIGGER.NAME}: {STATUS}

Default message:

Date: {DATE}

Time: {TIME}

Hostname: {HOSTNAME}

IP: {IPADDRESS}

Severity: {TRIGGER.SEVERITY}

Last Key:
{{HOSTNAME}:{TRIGGER.KEY}.last(0)}

Preview Key:
{{HOSTNAME}:{TRIGGER.KEY}.prev(0)}

Por último os dejo un link con varias variables para utilizar en los mensajes.

http://www.zabbix.com/wiki/howto/config/alerts/customizing_your_alerts

Zabbix 1.6.2 SO: Ubuntu 8.10

lunes, 4 de mayo de 2009

Visor de Sucesos de Windows con Zabbix

Para empezar a monitorizar el visor de sucesos de Windows guardaremos esta plantilla en formato xml y posteriormente la importaremos desde "Configuration-Import/Export".

http://www.zabbix.com/wiki/lib/exe/fetch.php?id=contrib%3Atemplates&cache=cache&media=contrib:zabbix_export.xml

Una vez importada la plantilla podremos observar que los tipos de items son activos con lo cual es el host quien envía la información y no Zabbix Server quien la pide. Esto significa que el nombre del host que publiquéis en zabbix "Configuration-Hosts-Name" y el hostname que escribas en el archivo de configuración del cliente "zabbix_agentd.conf" tienen que coincidir para que Zabbix sepa de qué host proviene la información.

Tener en cuenta que el hostname tiene que ser único y distingue mayúsculas de minúsculas.

Una vez empiece a funcionar los agentes de Windows empezaran a enviar todo el visor de sucesos al zabbix de manera secuencial. Esto lo comento porque empezareis a recibir alertas antiguas hasta que no se cargue todo el visor de sucesos. Es recomendable deshabilitar los triggers hasta que finalice el proceso.

Y ahora un poco de sintaxis para parametrizar los triggers y así se adapten a nuestras necesidades.

Esto deshabilitará la alerta del trigger si el visor de sucesos no nos envía mas alertas en los últimos 30 segundos.

({HOST:eventlog[Application].logseverity(4)}=4)&({HOST:eventlog[Application].nodata(30)}#1)

En este trigger le indicamos el origen del visor de sucesos

({HOST:eventlog[Application].logseverity(4) }=4)&({HOST:eventlog[Application].logsource(Origen)}=1)

En este trigger le indicamos un texto a buscar en el visor de sucesos.

({HOST:eventlog[Application].logseverity(4)}=4)&({HOST:eventlog[Application]. str(Texto a buscar)}=1)

Zabbix 1.6.2 SO: Ubuntu 8.10