martes, 1 de diciembre de 2009

Crear Iconos Mapas Zabbix

Últimamente le he puesto un poco de color a mi Zabbix y quería compartirlo con vosotros.

Para crear vuestros iconos tenéis que instalaros la aplicación GIMP y usar esta plantilla que os pongo a continuación:

http://www.bimind.es/files/zabbix/icons.psd

En ella encontraréis unos cuantos iconos separados por capas.

Simplemente tenéis que guardar las imágenes en png y el resultado de los iconos tendría que ser algo parecido a esto.

Para integrar los iconos en Zabbix id al menú "Configuration" --> "General". A la derecha tenéis un desplegable donde debéis seleccionar "Images" y clickar en el botón "Create Image".

martes, 14 de julio de 2009

Problemas de memoria con Windows 2008 y agente Zabbix

Os dejo esta entrada porque a mi me a vuelto loco encontrar la solución.

Windows 2008 cuando se monitoriza mediante Zabbix y se usan los contadores de rendimiento (perf_counter) el agente de Zabbix empieza a comerse todo la memoria del servidor.

Esto es un problema del API de Windows 2008 y no tiene nada que ver con el agente de Zabbix.

Aquí os dejo el link del support de Microsoft donde os podéis descargar el parche para corregir este problema.

http://support.microsoft.com/kb/970838

sábado, 11 de julio de 2009

Cambiar el idioma de los contadores de rendimiento de Windows

Actualmente Zabbix tiene algunas incompatibilidades con los acentos y otros caracteres que se utilizan en los contadores de rendimiento en español.

Por eso os dejo un pequeño truco para cambiar todos los contadores de rendimiento de Windows al inglés. También os podrá servir para no tener que traducir las plantillas que incorpora zabbix en lo que al idioma de los contadores de rendimiento se refiere.

Tenemos que entrar en el registro de Windows.

Inicio -> Ejecutar -> regedit.exe

Localizamos la siguiente clave:

"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib"

Aquí nos encontraremos dos subclaves:

009 (contadores en ingles)

00A (contadores en español)

Hacemos una copia de la clave 00A por si en un futuro queremos volver al español.

Copiamos los valores de:

"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009\Counter"

Y remplazamos los valores:

"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\00A\Counter"

Reiniciamos el agente de zabbix y ya tenemos nuestros contadores en inglés.

sábado, 4 de julio de 2009

Monitorizando dispositivos de red con ZABBIX

Para monitorizar dispositivos de red vamos a utilizar el protocolo SNMP (Protocolo Simple de Administración de Red).

Adjunto el link donde se describe el protocolo SNMP. http://es.wikipedia.org/wiki/Simple_Network_Management_Protocol

Las MIB’s (Base de Información de Administración) es una colección de información que está organizada jerárquicamente y son accedidas usando el protocolo de administración de red SNMP.
Las MIB’s más importantes para monitorizar los dispositivos de red son:

RFC1213

.1.3.6.1.2.1.1.1.0 sysDescr.0 (Descripción completa del sistema, versión, HW, OS)
.1.3.6.1.2.1.1.3.0 sysUpTime.0 (Tiempo desde la última reinicialización)

IF-MIB

.1.3.6.1.2.1.2.1.0 ifNumber.0 (El número de interfaces de red)
.1.3.6.1.2.1.2.2.1.2.1 ifDescr.1 (Descripción del interface de red)
.1.3.6.1.2.1.2.2.1.5.1 ifSpeed.1 (Velocidad del interface en bits/s)
.1.3.6.1.2.1.2.2.1.8.1 ifOperStatus.1 (El estado del interface)
.1.3.6.1.2.1.2.2.1.10.1 ifInOctets.1 (Número de octetos/s entrada del interface)
.1.3.6.1.2.1.2.2.1.16.1 ifOutOctets.1 (Número de octetos/s salida del interface)

Apunte para los de sistemas como yo: un octeto son 8 bits.

Una vez hecho un resumen del protocolo SNMP y las MIB’s que vamos a usar toca ponernos a configurar un dispositivo en ZABBIX.

Para ello os dejo una maravillosa plantilla que os podéis descargar en este link.
http://www.bimind.es/files/zabbix/BIMIND_Template_Network.xml

En ella encontrareis los intems de las MIB’s comentados anteriormente para 6 interfaces, los triggers que os avisarán si hay alguna de las 6 interfaces caídas o si se ha reiniciado el dispositivo y por último los gráficos de subida y bajada de las 6 interfaces.

La plantilla está configurada con la comunidad de lectura SNMP “public”. Acordaros que tiene que coincidir con la comunidad SNMP del dispositivo de red a monitorizar.

miércoles, 17 de junio de 2009

Cómo Actualizar Zabbix (1.6.5)

Ya tenemos aquí la nueva versión de zabbix 1.6.5 y aprovechando esta buena noticia voy a explicar como hacer la actualización.

Recuerdo que siempre es recomendable hacer una copia de seguridad de las base de datos y del directorio zabbix antes de actualizar a las nuevas versiones.

Paramos los servicios de zabbix

sudo /etc/init.d/zabbix-server stop

sudo /etc/init.d/zabbix-agent stop

Descargamos la última versión 1.6.5

wget http://puzzle.dl.sourceforge.net/sourceforge/zabbix/zabbix-1.6.5.tar.gz

La descomprimimos

tar zxvpf zabbix-1.6.5.tar.gz

Vamos a la carpeta que hemos descomprimido

cd zabbix-1.6.5

./configure --prefix=/usr --with-mysql --with-net-snmp --with-libcurl --with-jabber=/usr/ --enable-server --enable-agent && make
sudo make install

Copiamos los nuevos binarios.

sudo cp misc/init.d/debian/zabbix-server /etc/init.d
sudo cp misc/init.d/debian/zabbix-agent /etc/init.d

Y los reconfiguramos.

sudo nano /etc/init.d/zabbix-server

Buscamos la cadena:
DAEMON=/home/zabbix/bin/${NAME}
y la remplazamos por:
DAEMON=/usr/sbin/${NAME}

sudo nano /etc/init.d/zabbix-agent

Buscamos la cadena:
DAEMON=/home/zabbix/bin/${NAME}
y la remplazamos por:
DAEMON=/usr/sbin/${NAME}

Copiamos los nuevos archivos del frontend web

cp -R frontends/php/* /home/zabbix/public_html/

Creamos los índices recomendados por la actualizacion

sudo mysql -p -D zabbix –e “CREATE UNIQUE INDEX history_log_2 on history_log (itemid,id);

sudo mysql -p -D zabbix -e “CREATE UNIQUE INDEX history_text_2 on history_text (itemid,id);

sudo mysql -p -D zabbix -e “CREATE INDEX graphs_items_1 on graphs_items (itemid);

sudo mysql -p -D zabbix -e “CREATE INDEX graphs_items_2 on graphs_items (graphid);

sudo mysql -p -D zabbix -e "CREATE INDEX services_1 on services (triggerid);"

Iniciamos los servicios de zabbix

sudo /etc/init.d/zabbix-server start
sudo /etc/init.d/zabbix-agent start

Ya tenemos nuestro zabbix con la última versión

Zabbix 1.6.5 SO: Ubuntu 9.04

martes, 9 de junio de 2009

Explicación Tablas de la BBDD de Zabbix

Gracias a la aportación de OWEN os dejo la explicación de casi todas las tablas que forman parte de la BBDD de Zabbix.

Si alguien tiene más información que deje sus comentarios y lo iré completando.

- acknowledges: donde se alojan los comentarios cuando un problema es conocido/confirmado.
- actions: donde se alojan las acciones con su asunto, texto.
- alerts: el historial de alertas, enviado correo a tal, sms a tal, con el asunto del mensaje
- applications: poco que decir, donde se alojan las aplicaciones (repetidas para cada host)
- auditlog: lo que se muestra en administración -> auditoria -> audit logs
- conditions: relaciona una acción con una condición
- config: solo una fila con distintas configuraciones (tiempo de refresco, periodo de trabajo.. etc, configuraciones de la web)
- dchecks: comprobación de "discovery" (descubrir)
- drules: reglas para "discovery"
- dservices: ? algo de servicios de discovery pero nunca lo he utilizado
- escalations: registra las "escalaciones" a otro usuario cuando no puedes solucionar un problema
- events: donde se guarda el estado de los eventos, su fecha y el valor (on, off, unknown) y si esta ack (confirmado/conocido)
- functions: donde se guarda una relación de host (maquina) / item (elemento) / lanzador (trigger) y funcion (last, nodata, diff..)
- graphs: donde se guardan los datos de la grafica (alto, ancho, nombre.. )
- graphs_items: relación entre grafica y elemento (item) y otros valores de la relación (líneas, color..)
- groups: grupos de usuarios/maquinas
- help_items: la descripción de los items (elementos)
- history y history_*: se guarda la historia de los valores que se reciben de los hosts (maquinas)
- hosts: las maquinas, su nombre, ip y distintos valores
- hosts_groups: relación entre maquinas y grupos
- hosts_profiles: donde se alojan los perfiles de las maquinas
- hosts_profiles_ext: idem que el anterior pero cuando se crea un perfil mas avanzado
- hosts_templates: relación entre maquinas y plantillas
- housekeeper: esta tabla la tengo vacía, pero en teoría debería contener cada cuanto es el máximo de días que se contiene por cada tabla
- httpstep: los pasos que se siguen en configuración->web
- httpstepitem: relaciona la tabla anterior con la tabla de items (elementos)
- httptest: se guardan los test (ultima comprobación, próxima comprobación, periodo entre comprobaciones, aplicación relacionada..)
- httptestitem: relaciona la tabla anterior con la tabla de items (elementos)
- ids: es una tabla para saber el id de cada tabla, me imagino que es por compatibilidad con pgsql (que no tiene auto_increment, sino secuencias)

- images: las imágenes en un campo blob
- items: los elementos (system.uptime, proc.num[], etc) con configuraciones generales (tiempo del historial, tiempo de tendencia, template..)
- items_applications: relación de elementos (items) con las aplicaciones
- mappings: donde se guardan los "mapeos" (0 = off, 1 = on, etc)
- media: relación de usuarios/acciones y severidad (enviar sms a tal usuario cuando el problema es de alerta urgente, por ej.)
- media_type: los medios para enviar alertas (email pues su smtp, dirección de remitente; modem pues su puerto ttyS; script el nombre del script alojado en /etc/zabbix/alert.d/
- node_cksum: ? algo del checksum pero la tengo vacía
- nodes: ? algo de nodos, no lo utilizo
- opconditions: vacía
- operations: esta tengo que investigarla
- profiles: parece una tabla interna para distintas configuraciones (periodos de graficas, graficas favoritas.. )
- proxy_dhistory/proxy_history: historial del proxy (1.6)
- rights: permisos para los grupos
- screens: nombre de la pantalla y su tamaño
- screens_items: los mapas/elementos que se muestra dentro de las pantallas (screens)
- scripts: aplicaciones que se pueden ejecutar en las maquinas
- service_alarms, services, services_links, services_items: ?
- sessions: donse aloja el sessionid (identificador de la sesión) para cada usuario
- slides: donde se guardan configuración -> screens -> slides
- sysmaps: los mapas en si con el tamaño y configuraciones del titulo
- sysmaps_elements: los elementos dentro de cada mapa
- sysmaps_link_triggers, sysmaps_links: ?
- trends, trends_uint: donde se aloja la tendencia de los elementos (items) en los últimos X dias
- trigger_depends: dependencia de los triggers (yo nunca lo he usado)
- triggers: los triggers con la condición para que se lance y la plantilla/host a la que se relaciona
- users: los usuarios
- users_groups: relación usuarios/grupos
- usrgrp: ?
- valuemaps: ? parecen etiquetas para los mapas

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

miércoles, 1 de abril de 2009

Plugin de Zabbix para Firefox

Para poder ver el estado de nuestro zabbix sin tener que tener siempre una venta abierta tenemos un plugin para Firefox que se integra en las ventanas del navegador.

Podeis descargar el plugin en la siguiente página.

https://forxa.mancomun.org/frs/?group_id=205


Zabbix 1.6.2 SO: Ubuntu 8.10

jueves, 12 de marzo de 2009

Exportat e Importat Imagenes de Zabbix

Nuestro Zabbix tiene la posiblidad de importar imagenes desde el enorno web.
Configuration -> General -> Images -> Create Image.

Dejo un link donde podemos encontrar un monton de images para Zabbix.

http://www.zabbix.com/wiki/lib/exe/fetch.php?id=contrib%3Aicontemplates&cache=cache&media=contrib:art_icon_set1.zip

Una vez tenemos nuestras imagenes importadas, lo cual es un poco engorroso ya que se tienen que importar una por una, hay una manera de hacer una copia para poderlas importar en otro zabbix.

Exportar imagenes:

mysqldump --opt -u nombredeusuario -p zabbix images > images.sql

Donde pone nombredeusuario tenemos que poner el usuario mysql con permisos sobre la base de datos de Zabbix.

Importar imagenes:

mysql -u nombredeusuario -p -D zabbix < images.sql

Zabbix 1.6.2 SO: Ubuntu 8.10

Administrar Servidores Zabbix con Webmin

La herramienta Webmin es uns solución via web para administrar servidores Linux. Esta detecta las aplicaciones instaladas en nuestro servidor y mediante los módulos que lleva integrafos es capaz de administrarlas.

No lleva integrado ningun módulo para administrar Zabbix, ya que zabbix se administrar 100% via web pero lleva un módulo de MySQL muy interesante ya que nos permite planificar las copias de seguridad de nuestro zabbix.

Para instalarla en un servidor Debian/Ubuntu:

apt-get install libnet-ssleay-perl libauthen-pam-perl libio-pty-perl libmd5-perl

wget http://prdownloads.sourceforge.net/webadmin/webmin_1.450_all.deb

sudo dpkg -i webmin_1.450_all.deb

Zabbix 1.6.2 SO: Ubuntu 8.10

viernes, 6 de marzo de 2009

Alertas de Zabbix via Google Talk (jabber)

Zabbix tiene la posibilidad de alertar vía jabber y Google Talk usa el protocolo xmpp/jabber así que vamos a ver como se configura.

Lo primero que tenemos que hace es instalar los prerrequisitos de jabber.

sudo apt-get install libiksemel3 libiksemel-dev

A continuación compilamos el zabbix con la opción de jabber.

sudo /etc/init.d/zabbix-server stop
sudo /etc/init.d/zabbix-agent stop

cd /home/zabbix/zabbix-1.6.2/

./configure --prefix=/usr --with-mysql --with-net-snmp --with-libcurl --with-jabber=/usr/ --enable-server --enable-agent && make
sudo make install

Copiamos los nuevos binarios.

sudo cp misc/init.d/debian/zabbix-server /etc/init.d
sudo cp misc/init.d/debian/zabbix-agent /etc/init.d

Y los reconfiguramos.
sudo nano /etc/init.d/zabbix-server

Buscamos la cadena:
DAEMON=/home/zabbix/bin/${NAME}
y la remplazamos por:
DAEMON=/usr/sbin/${NAME}

sudo nano /etc/init.d/zabbix-agent

Buscamos la cadena:
DAEMON=/home/zabbix/bin/${NAME}
y la remplazamos por:
DAEMON=/usr/sbin/${NAME}

sudo /etc/init.d/zabbix-server start
sudo /etc/init.d/zabbix-agent start

Una vez ya tenemos preparado el zabbix para usar jabber vamos a la configuración de este.

1. Registramos una cuenta gratuita de jabber con jabberes.org.
2. Desde el Google Talk agregamos esta cuenta que hemos creado xxx@jabberes.org.
3. Desde algun cliente de jabber (psi por ejemplo) iniciamos sesión con la cuenta que hemos creado xxx@jabberes.org y aceptamos la invitación de usuario de Google Talk.

4. Desde el Zabbix GUI:
Administration->Media types->Create Media types->Type: Jabber.
Jabber Identifier: xxx@jabberes.org.
Password: la contraseña de la cuenta xxx@jabberes.org
5. Ahora en Administration->Users->Seleccionamos nuestro usuario y agregamos el jabber media creados.
Type: Jabber
Sent to: xxx@jabberes.org

Ahora solo faltaría crear una acción que envíe vía mensaje las alertas.

Zabbix 1.6.2 SO: Ubuntu 8.10

lunes, 2 de marzo de 2009

Instalar parches en Zabbix

En ocasiones, como en cualquier solución, encontramos defectos de software (bugs) en nuestro zabbix.

Cuando pasa esto podemos optar por esperar a que salga una nueva versión con el problema arreglado o instalar los parches que nos facilitan los desarrolladores de zabbix (.patch)

Yo voy a explicar los pasos a seguir para implementar los parches (.patch) en debian/ubuntu

- Lo primero de todo es tener instalada la aplicación patch.

apt-get install patch

- Ubicarnos donde tenemos el código fuente del zabbix:

cd /home/zabbix/zabbix-1.6.2/

- Comprobar que el patch sea para nuestra versión de zabbix

patch -p0 --dry-run < path_1.patch

- Ejecutar el patch en el directorio donde tenemos el codigo fuente del zabbix:

patch -p0 < path_1.patch

- Posteriormente tenemos que volver a compilar los binarios de zabbix:

sudo /etc/init.d/zabbix-server stop
sudo /etc/init.d/zabbix-agent stop

./configure --prefix=/usr --with-mysql --with-net-snmp \--with-libcurl --enable-server --enable-agent && make
sudo make install

- Copiamos los nuevos binarios:

sudo cp misc/init.d/debian/zabbix-server /etc/init.d
sudo cp misc/init.d/debian/zabbix-agent /etc/init.d

- Y los reconfiguramos:

sudo nano /etc/init.d/zabbix-server

Buscamos la cadena:
DAEMON=/home/zabbix/bin/${NAME}
y la remplazamos por:
DAEMON=/usr/sbin/${NAME}

sudo nano /etc/init.d/zabbix-agent

Buscamos la cadena:
DAEMON=/home/zabbix/bin/${NAME}
y la remplazamos por:
DAEMON=/usr/sbin/${NAME}

- Y finalmente iniciaremos de nuevo nuestr0 zabbix:

sudo /etc/init.d/zabbix-server start
sudo /etc/init.d/zabbix-agent start

Zabbix 1.6.2 SO: Ubuntu 8.10

miércoles, 11 de febrero de 2009

Utilizar WMIC en Zabbix

Windows Management Instrumentation Command-line (WMIC) nos revela una gran cantidad de información sobre los sistemas Windows y hardware subyacente, mediante el uso de Windows Management Instrumentation (WMI). El primer propósito de WMIC es facilitar administración de tareas automáticas y de script.

Por ejemplo, para mostrar los procesos activos tenemos que ejecutar bajo windows este commando:

WMIC process GET Name

Ahora vamos a implementar esta funcionalidad en Zabbix.

Zabbix tiene la posibilidad de ejecutar items mediante comandos externos a nuestros hosts utilizando el comando system.run.

Como requisito en los host tiene que estar habilitado el EnableRemoteCommands=1 en nuestro archivo de configuración del agente (zabbix_agentd.conf)

PRIMER EJEMPLO. Number of Stopped Auto Services

En este ejemplo veremos como enumerara los servicios de Windows configurados en estado automático y que estén parados.

Posteriormente si el número de servicios en estado automático y parados cambiara nos avisará con un trigger.

Esto es muy práctico para controlar si se para algún servicio que tendría que estar iniciado.

Configuración del Item:

Description: Number of Stopped Auto Services
Type: ZABBIX agent
Key: system.run[WMIC service WHERE "State="Stopped" AND StartMode="Auto"" GET Name /FORMAT:list find "Name" /c]
Type of information: Numeric (integer 64bit)

Configuración del Trigger:

Name: Number of Stopped Auto Services has Changed
Expression: {HOST:system.run[WMIC service WHERE "State="Stopped" AND StartMode="Auto"" GET Name /FORMAT:list find "Name" /c].change(0)}#0



SEGUNDO EJEMPLO: Number of Software Installed

En este ejemplo veremos como enumerara los programas instalados en Windows y que nos avise si se desinstala o instala alguno de nuevo.

Configuración del Item:

Description: Number of Stopped Auto Services
Type: ZABBIX agent
Key: system.run[WMIC product GET Name /FORMAT:list find "Name" /c]
Type of information: Numeric (integer 64bit)

Configuración del Trigger:

Name: Number of Software Installed has Changed
Expression: {HOST:system.run[WMIC product GET Name /FORMAT:list find "Name" /c].change(0)}#0

En este último ejemplo seguramente tendremos que cambiar el timeout del Servidor de Zabbix ya que WMIC tarda un poco en hacer la consulta.

sudo nano /etc/zabbix/zabbix_server.conf

# Specifies how long we wait for agent response (in sec)
# Must be between 1 and 30
Timeout=30

Zabbix 1.6.2 SO: Ubuntu 8.10

martes, 10 de febrero de 2009

Instalar el Agente de Zabbix en Windows

Como todo administrador de Windows uno quiere un instalable fácil, con su asistente, la opción de desinstalar en agregar y quitar programas e incluso la posibilidad de instalación desatendida para grandes despliegues.

Ahí va el link donde podemos encontrar el agente con la última versión empaquetada para poder ser instalado con todas estas opciones bajo plataformas Windows.

http://www.suiviperf.com/zabbix/

Zabbix 1.6.2 SO: Ubuntu 8.10

lunes, 9 de febrero de 2009

Crear Triggers con Umbrales Variables

Cuando hacemos una template de un host y éste tiene triggers configurados, muchas veces los umbrales de alertas no son equivalentes.

Es decir, no es lo mismo que te sobre 1 GB de espacio en un disco de 1 TB (1000 GB) que en un disco de 8 GB.

Tampoco es lo mismo que te sobre 256 MB de memoria en un host de 4 GB de memória física que en un host de 1 GB de memória física.

Entonces nos vemos con la necesidad de utilizar umbrales variables que se adapten a cada una de las características de nuestros hosts.

Primer ejemplo:

Este trigger nos alertará cuando se esté usado más del 90% del espacio de disco de la unidad C.

({Template_Windows:vfs.fs.size[c:,total].last(0)}*0.1)>{Template_Windows:vfs.fs.size[c:,free].last(0)}

Segundo ejemplo:

Este otro trigger nos alertará cuando se use más del 90% de la memória física.

({Template_Windows:vm.memory.size[total].last(0)}*0.1)>{Template_Windows:vm.memory.size[free].max(600)}

Zabbix 1.6.2 SO: Ubuntu 8.10

Copia de Seguridad (backup) de Zabbix mediante Web

Para actualizar la versión de Zabbix o simplemente para proteger la información almacenada es recomendable tener copias de seguridad de la Base de Datos (MYSQL).

Aprovechando la siempre agradecida administración web vamos a integrar la funcionalidad de copias de seguridad dentro de nuestro Zabbix.

Para ellos tenemos que ir a AdministrationScripts


Aquí crearemos un nuevo script mediante el Add script y le llamaremos Backup.
Ahora si nos vamos a MonitoringMaps cuando cliquemos en nuestro Zabbix nos aparecerá la nueva opción de Backup. Yo utilizo un script muy sencillo para hacer copias de seguridad de MYSQL que se llama automysqlbackup y lo podéis encontrar en el siguiente link:

http://members.lycos.co.uk/wipe_out/automysqlbackup/

Restaurar copia de seguridad

tar -xf (archivo).tar

mysql -u (usuario) -p -D (nombre bd) < (archivo).sql

Zabbix 1.6.2 SO: Ubuntu 8.10

Instalar Zabbix

Para no reescribir los pasos de instalación adjunto el link donde podemos encontrar paso a paso la instalación de Zabbix en varias plataformas y versiones.

http://www.zabbix.com/wiki/howto/install/start

Yo intentaré trabajar siempre con la última versión de Zabbix y actualmente bajo la plataforma Ubuntu Server Edition.

El link donde está la instalación de Zabbix bajo Ubuntu es el siguiente:

http://www.zabbix.com/wiki/howto/install/ubuntu/ubuntuinstall

Zabbix 1.6.2 SO: Ubuntu 8.10

martes, 3 de febrero de 2009

Introducción a Zabbix

Zabbix es un sistema de monitorización Open Source que permite el seguimiento de tus aplicaciones, redes y servidores.

Como principales características podemos destacar:
- Administración completamente web.
- Escalabilidad. Probado hasta 10.000 dispositivos.
- Posiblidad de monitorizar redes internas y externas.
- Sistema de alertas (email, SMS, Jabber)
- Creación de plantillas de configuración exportables/importables.
- Autodescubrimiento de dispositivos.
- Multiplataforma (Windows, Linux, AIX, FreeBSD, HP-UX, Solaris)
- Base de datos (Oracle, MySQL, PostgreSQL o SQLite).

Para más información visitad: http://www.zabbix.com/

Zabbix 1.6.2 SO: Ubuntu 8.10