Zabbix 1.8

Zabbix es un programa para la monitorización de redes

Autor: Javier Arencibia Díaz
Correo: arencibia88@hotmail.com

1.INSTALACION ZABBIX 1.8

- Instalamos los paquetes que necesitaremos:

- Obtenemos los source de zabbix:

- Instalamos:

- Dependencias: - Descomprimimos: - Entramos y creamos configuración:

Si no nos ha dado ningún problema tendríamos que ver unas líneas como las que mostramos a continuación tras ejecutar el comando anterior.

- Ejecutamos “make”:

No usaremos el comando “make install”, utilizaremos el comando checkinstall que nos da la opción de hacer primero un RPM y luego instalarlo.

- Esto nos da la ventaja de ser capaz de desinstalar de nuevo con zabbix rpm. Procedemos a instalarlo ya que no se encuentra en los repositorios de Centos.

- Usamos el comando checkinstall:

Ya que estamos en Centos elegiremos la opción [R]:

- Si todo ha salido bien tendríamos que ver el siguiente mensaje: Ya esta instalado Zabbix en el PC.

2.CREANDO BASE DE DATOS MYSQL

- Comprobamos estado de MySQL: - Iniciamos: - Si esta es la primera vez que iniciamos MySQL, probablemente tendrás un mensaje que indica que el root no tiene contraseña. Cambiamos la contraseña para root: - Usaremos el siguiente comando para hacer una instalación segura de MySQL:

1º Nos pide la contraseña de root.

2º Nos pide que si queremos cambiar la contraseña de root.

3º Nos pide que si queremos quitar el usuario anónimo.

4º Nos dice que si queremos prohibir el logueo de root remotamente.

5º Nos dice que si queremos quitar la base de datos “test” que viene por defecto.

6º Nos pide que si queremos actualizar los privilegios ahora.

- Conectamos con la base de datos: - Cuando introduzcamos la contraseña crearemos una base de datos con el siguiente comando: - Aplicamos privilegios:

Nota: Recordar siempre la contraseña para la configuración de los ficheros del Zabbix mas adelante.

- Dentro del directorio que nos encontrábamos anteriormente entramos en el siguiente directorio e importamos comandos de SQL: - Entramos de nuevo en MySQL y ejecutamos los siguientes comandos: - Si existe algún problema ejecutamos el comando siguiente para borrar la base de datos (No creo que sea nuestro caso), en caso de ejecutarlo habría que empezar de nuevo este apartado:

3. CONFIGURANDO ZABBIX

- Creamos una carpeta para Zabbix donde se alojaran los ficheros de configuración y copiamos ficheros en ese nuevo directorio:

- Abrimos el fichero zabbix_server.conf, ponemos el nombre de la base de datos en el primer parámetro, el usuario en el segundo y la contraseña en el tercer parámetro de abajo: - Es recomendable cambiar los permisos de este fichero de configuración ya que en el se encuentra la contraseña: - Zabbix sabrá ahora con quien tiene que conectar.

4. CREAMOS USUARIO E INICIAMOS ZABBIX SERVER

- Creamos usuario: - Ingresamos como ese usuario: - Ejecutamos los scripts para iniciar los servicios:

Nota importante: En un principio para hacer un “service zabbix_server restart” me daba error porque no encontraba el script de arriba en la dirección que se pedía. Lo solucioné copiándolo en el lugar que te dice cuando te pone error la primera vez. Si no se hace eso se tiene que volver a ejecutar los comandos de arriba para poder iniciar luego el servidor y agente.

- Con el siguiente comando deberíamos ver los procesos arrancados para zabbix_server y zabbix_agentd:

5.CREACIÓN DE SCRIPTS DE INICIO

- Nos logueamos como root:

- Copiamos los scripts de nuestra fuente Zabbix en /etc/init.d/ - Tras copiar zabbix_server y zabbix_agentd, abrimos este último y cambiamos progdir=”/usr/local/sbin/”: - Añadimos los 2 servicios para que se inicien al encender el PC: Nota: El zabbix_server puede que haya que arrancarlo SIEMPRE con el comando “service zabbix_server start”.

- Verificamos que se han añadido correctamente: - Damos permisos:

- Comandos para este servicio:

6.INSTALACIÓN DE LA INTERFAZ WEB

Tenemos Zabbix Server y el Agente instalado y funcionando en nuestro servidor, podemos controlar los servicios a éstos y el inicio cada vez que la máquina arranca en el nivel 3 o 5, pero todavía no tenemos nuestra interfaz web.

Aquí es donde Apache y PHP entran en juego. Tendremos que instalar algunos paquetes adicionales php para funcionalidad completa: - Creamos la carpeta para los archivos web en /var/www/html/ y copiamos ficheros: Decir que “frontends” es una carpeta que se localiza en el lugar donde descomprimimos las carpetas del zabbix.

- Para poder acceder a la página a través http://localhost/zabbix tendremos que cambiar el nombre de la carpeta a zabbix. Nota: Para entrar yo en enlace web tuve que poner la siguiente dirección: http://localhost/html/zabbix/. También modifique el fichero “httpd.conf” para poder acceder (Igual no hace falta pero así me funcionó): - Cambie lo siguiente: - Comente las líneas siguientes: - Una vez ingresado la dirección web nos tiene que salir una imagen como la siguiente donde se nos da la bienvenida:

- Le damos a Next y veremos la pantalla de la licencia:

- Tras poner “I agree” le damos a siguiente para pasar a la pantalla de los pre-requisitos:

- Vemos que nos dará muchos failed la primera vez, es porque nos hace falta modificar un fichero para que este acorde con lo que pide el Zabbix.

- Entramos en el fichero a modificar: - Cambiamos las líneas siguientes con los nuevos parámetros:

- Reiniciamos “httpd” para efectuar cambios: - Tras dar a “Retry” en la imagen anterior deberíamos ver una imagen como la siguiente, de no ser así comprobar que se cambiaron bien los parámetros anteriores:

- Damos a Next y pasamos a la pantalla de “Configuración de la base de datos”:

- Introducimos los datos que se nos pide y le damos a “Test connection” para comprobar que hay conexión del usuario con la base de datos. Si da “Ok” pasamos a la siguiente pantalla de “Detalles de Zabbiz Server”:

- En la siguiente página nos aparece los detalles de la instalación y tras comprobar que todo está correcto pasamos a la siguiente pantalla donde se instalará.

- Posiblemente nos saldrá un “fail”, esto se debe a que tenemos que instalarlo manualmente. Para ello cliqueamos sobre “Save configuration file” y el archivo que genera lo guardamos en “/var/www/html/zabbix/conf/zabbix.conf.php” y finalmente damos a “Retry” para que nos salga un “Ok” y se quite el “Fail”.

- Pasamos a la siguiente pantalla y solo nos queda dar a “Finish”.

- Ya tenemos zabbix instalado como agente y servidor. Ahora tendriamos que instalar el agente zabbix en los PCs que queramos monitorizar.

7. INSTALAR AGENTE ZABBIX EN CENTOS.

- Creamos usuario zabbix, descargamos e instalamos: - Copiamos la configuración estándar:

- Editamos la configuración del segundo archivo /etc/zabbix/zabbix_agentd.conf

- Di todos los permisos a /etc/zabbix/zabbix_agentd.conf para asegurarme que funcionará, aplicar los adecuados según la ocasión: - Copiamos los siguientes archivos: - Editamos /etc/init.d/zabbix_agentd

- En /etc/init.d/zabbix_agentd añadimos, justo debajo de #! /bin/sh

- Ejecutamos comando para que el servicio se inicie al encender el PC: - Iniciamos los agentes: - Si sale un error como el de abajo ejecutar el siguiente comando e intentamos iniciar el servicio: -Si tenemos algún tipo de error así: Nota: Aun con el comando anterior puede seguir dando fallo, lo arregle de la siguiente manera: - Copiamos el contenido de la carpeta sbin en el lugar donde nos encontramos ahora: - Iniciamos ahora el servicio: - Y nos tiene que salir el siguiente mensaje: - Ya tenemos el agente zabbix instalado en el PC a monitorizar.

8. INSTALAR AGENTE ZABBIX EN WINDOWS.

- Descargamos el agente desde la siguiente dirección:

http://www.suiviperf.com/

- Descomprimimos el zip e ejecutamos el instalador.

- Configuramos el agente con la IP de nuestro servidor Zabbix. Habilitamos “Enable Remote Commands” si queremos que el servidor Zabbix pueda ejecutar comandos sobre este PC.

- Instalamos. En este momento el servicio Zabbix Agentd ya está configurado y es visible en la sección “Servicios” de nuestro servidor.

9. EJECUTAR COMANDOS REMOTOS EN OTROS PCs.

Si algún servicio de un PC cae, este puede ser iniciado nuevamente sin necesidad de ir al PC correcto para ejecutar el comando ya que zabbix puede hacerlo, para ello necesitamos que en cada PC que vayamos a ejecutar comandos remotos tenga la siguiente configuración:

1. Editar el fichero de configuración de Zabbix: 2. Descomentar la siguiente linea: 3. Reiniciamos Zabbix: 4. Editar los permisos de sudo para zabbix: 5. Cometar la siguiente linea: 6. Añadir la siguiente linea al final del fichero (para dar permisos al usuario zabbix de ejecutar comandos como root sin preguntar contraseña):

Nota: Para poder ejecutar comandos en equipos Windows tenemos que habilitar la casilla de “Enable remote commands” cuando estamos instalando el agente, tal y como hicimos en el apartado 8.

Ahora podemos crear una acción que cuando un iniciador cambie de estado se ejecute un comando concreto por ejemplo.

10. MANUAL DE USUARIO.

Antes que nada decir que el usuario ADMINISTRADOR de zabbix viene con una contraseña ya establecida es:

Usuario: admin

Contraseña: zabbix

Esta contraseña se puede cambiar en la pestaña de “Administración” del zabbix y señalando luego “usuarios”. Destacar que dentro de los usuarios podremos poner el lenguaje en español.

La aplicación Zabbix está compuesta por 5 menús que dependiendo del usuario que creamos podremos verlos todos o no. Estos 5 menús poseen a su vez una serie de submenús.

Ahora nombraremos cada uno de ellos:

1º Monitorización: En esta pestaña podremos ver todo lo que estamos monitorizando, en esta parte no se configura nada ya que para la configuración de todo lo que monitorizaremos esta la pestaña de “Configuración”.

-Dashboard : Es la pantalla principal del programa (si no la cambiamos), en ella vemos un resumen del estado de lo que estamos monitorizando como: El estado de zabbix, estado del sistema, estado de los equipos, los últimos 20 temas, estado de las páginas web que estamos monitorizando y el descubrimiento de la red según la regla que configuramos en la pestaña de configuración. En la parte izquierda de esta pantalla podemos agregar nuestros gráficos, pantallas y mapas favoritos.

Estado de zabbix:

Estado del sistema y estado de los equipos:

Últimos 20 temas:

Estado de las páginas web monitorizadas y descubrimiento de la red:

-Vistazo general: Aquí vemos detalles mas ampliados de los equipos que tenemos monitorizando.

-Web: Este submenú es para ver el estado de las web que estamos monitorizando, si entramos en ellas podremos ver unas graficas que nos muestra la velocidad y el tiempo de respuesta con la página web configurada.

-Última fecha: Vemos últimos datos de los PCs monitorizados con sus respectivas gráficas.

-Iniciadores: Los iniciadores son alertas que se ejecutan cuando cumplen una condición especifica como por ejemplo avisan de si un servicio esta apagado. En esta pantalla podremos ver las alertas que han surgido en cada ordenador dependiendo del PCs que seleccionemos. Podremos crear iniciadores para un grupo especifico o un PC en concreto en el apartado de “Configuración → Equipos” entrando en iniciadores.

-Eventos: Vemos el estado de los eventos configurados.

-Gráficos, pantallas y mapas: Podremos ver en cada uno de estos submenús las imágenes especificas de cada una de ellas que hayamos creado en los submenús de la pestaña de configuración. Ver las imágenes en este apartado tiene la ventaja de que se actualizan solas según el tiempo que hayamos puesto en el apartado de nuestro usuario. En la parte inferior tenemos una barra con el cual podemos movernos por el historial de las graficas tiempo atras.

Ejemplo de una gráfica:

Ejemplo de un mapa:

-Descubrimiento: Podemos ver los equipos que se han descubierta según la regla que hayamos puesto en la pestaña de configuración. Podremos ver cuanto tiempo hace que un equipo esta activo o cuanto tiempo hace que no lo esta.

-Servicios TI: En este submenú podemos ver el estado de los servicios que hemos creado y tambíen ver una gráfica del estado de cada servicio.

2º Inventario: En este apartado podemos ver el nombre del equipo, el grupo, nombre, sistema operativo, nº de serie, etiqueta y dirección MAC de los PC creados, para poder ver estos datos en este apartado hace falta que ingresemos estos datos en el apartado de “perfiles” a la hora de crear un nuevo equipo:

Lugar donde se ingresan estos datos (En la configuración de los equipos o cuando ser agrega un equipo nuevo):

3º Informes: Este menú posee 4 submenús en los que se puede ojear mas detenidamente lo que esta ocurriendo en los agentes, teniendo la posibilidad de filtrar informes para encontrar uno deseado.

4º Configuración: Este menú es prácticamente el más importante de la aplicación. Se divide en varios submenús:

-Grupos de equipos: En el se podrá crear grupos para luego ingresar PCs y monitores en ellos.

-Equipos: En este submenú es donde se crea los equipos, plantillas, monitores, iniciadores (alertas), gráficos y aplicaciones.

Cuando creas un equipo podrás ver si este esta disponible o no, debería estar disponible si tiene el agente instalado en el y además lo tiene iniciado.

Ejemplo de equipo disponible:

Ejemplo de equipo no disponible:

Como vemos si esta disponible para su monitorización veremos que la “Z” de la derecha esta en verde y si no lo esta estará en rojo.

Podemos crear también aplicaciones, monitores, iniciadores y gráficos para un equipo especifico entrando en los enlaces que tienen en la misma fila dicho equipo.

-Maintenance: Para crear mantenimientos.

-Web: Creando un escenario podemos monitorizar también páginas web.

-Acciones: Con las acciones podremos hacer que zabbix realice una serie de cosas cuando ocurra algún acontecimiento en cualquier PC. Por ejemplo: si se apaga un servicio podemos volver a activarlo indicándole a zabbix que ejecute un comando cuando este se apague. Para este caso anterior crearíamos una acción con un tipo de origen del evento llamada “Iniciadores”, elegimos esta opción porque la acción se ejecutará cuando la alarma o iniciador del servicio este apagado. Para crear la acción tenemos 3 cuadros: “Accion” (donde están los datos principales), “Action conditions” (donde pondremos los requisitos que se tienen que cumplir para que luego se ejecute la acción, y “Action operations” (donde elegiremos que acciones se ejecutara cuando salte la alarma en este caso).

En la imagen siguiente vemos que cuando el equipo sea igual a “Zabbix Server” y el Iniciador sea igual a “SSH server esta apagado en Zabbix Server” ejecutaremos un comando sudo /etc/init.d/sshd start para iniciar el servicio SSH. Pondremos delante del comando {HOSTNAME} o nombre del equipo seguido de dos puntos y luego el comando. En el siguiente enlace podremos ver las macros que podemos usar para las acciones o las alertas:

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

Imagen de como crear una acción para que cada vez que se apague el servicio SSH en “Zabbix Server” este se inicie automaticamente:

Destacar que hay 3 tipos de “Origen del evento”: Iniciadores, Descubrimiento y Auto registration. Para los “iniciadores” hace falta que salte una alarma para que se ejecute una acción. En “descubrimiento” se ejecutará una acción cuando se cumpla algún requisito del apartado de descubrimiento. Por último, para “auto registration” se ejecutará una acción cuando este cumpla una condición de las que posee esta opción.

-Pantallas: Aquí podemos crear un panel en el que puede contener todos los gráficos que queramos y así tener una agrupación de gráficos sin tener que movernos mucho por la aplicación para cambiar entre ellos.

-Mapas: Para crear un mapa de nuestra distribución de la red.

-Servicios TI: Aquí se crea servicios para calculen el estado de por ejemplo, si falla algún iniciador.

-Descubrimiento: Creando una regla podemos localizar los equipos que se encuentra en la red. Luego en la pestaña de “Monitorización” podemos ver si están activos o no.

-Exportar/Importar: Podremos guardar una copia de seguridad de los diferentes objetos de zabbix como son los PCs y tambíen importarlas.

5º Administración: En este apartado se centra mayormente en el control de zabbix, la creación de usuario, tipos de medios para enviar correos o sms, las auditorias para ver los sucesos, scripts para ejecutar en el apartado de “Monitorización –> mapas” sobre los objetos, “Authentication” para asegurarse una conexión segura, Colas de mensajes, Notificaciones e Instalation, para instalar de nuevo el zabbix.

REFERENCIAS.

http://www.zabbix.com/wiki/howto/install/centos/centosinstall
http://www.zabbix.com/documentation/1.8/complete
http://www.zabbix.com/documentation/1.8/manual/about/what_s_new
http://redes-privadas-virtuales.blogspot.com/2009/06/monitorizacion-de-servicios-con-zabbix_14.html
Instalar agente zabbix en Centos
Instalar agente zabbix en Windows
Ejecutar comandos remotos
http://zabbix-es.blogspot.com/
http://www.zabbix.com/
http://redes-privadas-virtuales.blogspot.com/2010/02/instalacion-del-servidor-zabbix-partir.html
http://redes-privadas-virtuales.blogspot.com/2009/06/monitorizacion-de-servicios-con-zabbix_09.html
http://blog.e2h.net/2010/05/07/instalando-zabbix-la-ultima-solucion-de-monitorizacion-de-codigo-abierto/#more-673