meta data de esta página
  •  

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
seguridad:monitorizacion:zabbix2:snmp [112015/03/ 11:02] – [Verificar que tenemos el demonio snmp arrancado] luiscaseguridad:monitorizacion:zabbix2:snmp [182023/01/ 13:46] (actual) – editor externo 127.0.0.1
Línea 1: Línea 1:
 +===== Monitorización de equipos por snmp =====
 +{{tag> web servicio zabbix monitorización plantilla SNMP ítem trigger}}
  
 +==== Verificar que tenemos el demonio snmp arrancado ====
 +Lo primero es verificar que se han instalado los paquetes de snmp
 +
 +<code>yum install -y net-snmp net-snmp-utils net-snmp-perl </code>
 +
 +Arrancamos el servicio snmpd y lo dejamos habiliado en el arranque por defecto
 +<code>systemctl snmpd enable
 +systemctl snmpd start</code>
 +
 +
 +Hacemos una prueba para ver que todo está funcionando 
 +<code>snmpwalk -v 2c -c public localhost system</code>
 +
 +
 +
 +==== Monitorizar equipos por snmp ====
 +Para monitorear un equipo con zabbix por snmp primero debemos localizar un MIB compatible con el equipo que vayamos a monitorear. Podemos buscar en la pagina web del fabricante o buscar en [[ http://mibsearch.com/index.php?find_name=apc&find_smiver=&vendor=&FILTER_logic=and&set_filter=Y&set_filter=Set+filter | esta página ]].
 +
 +Una vez encontremos el MIB correcto podemos usar varias herramientas para interpretarlo. Una de ellas es el uso de aplicaciones como por ejemplo [[https://www.manageengine.com/products/mibbrowser-free-tool/|MibBrowser]], que nos permite ver el árbol del MIB y desplegarlo para buscar lo que necesitemos.
 +
 +{{ :seguridad:monitorizacion:zabbix2:snmp1.png?nolink&600 |}}
 +
 +También podemos utilizar el comando **SNMPWALK** que nos mostrará todos los OID y los compara con los datos del MIB, además mostrará los datos de aquellos que coincidan.
 +
 +{{ :seguridad:monitorizacion:zabbix2:snmp2.png?nolink&600 |}}
 +<note> Es importante, una vez identificado el ítem que queremos utilizar, saber el OID de dicho ítem, ya que, deberemos usarlo en la creación de ítems de zabbix</note>
 +
 +Otra manera de encontrar un ítem para monitorizar nuestro equipo es a través de la herramienta **SNMP BUILDER** que nos proporciona zabbix. Para acceder a ella debemos seleccionar **" Configuration/SNMP Builder"**.
 +
 +{{ :seguridad:monitorizacion:zabbix2:snmp3.png?nolink&600 |}}
 +
 +Como podemos ver en la imagen, la pestaña de **SNMP Builder** consta de una cabecera que debemos rellenar. De izquierda a derecha nos encontramos:
 +
 +  * Template: aquí debemos seleccionar la plantilla en la que vamos a guardar el ítem. Podemos crear una plantilla nueva o usar una existente.
 +  * MIB: en este desplegable elegiremos un MIB para buscar los ítems.
 +  * Host: IP del equipo que queremos monitorizar.
 +  * SNMP Versión: la versión de SNMP que vamos a usar (1, 2c).
 +  * Community: es una clave que permite acceder al equipo (por defecto suele ser public pero se puede cambiar).
 +
 +Ahora que hemos configurado los requisitos previos se nos mostrará como en el **MIB Browser** el árbol del MIB a la izquierda. Sin embargo a la derecha se nos mostrará algo diferente.
 +
 +{{ :seguridad:monitorizacion:zabbix2:snmp4.png?nolink&600 |}}
 +
 +Si seleccionamos uno de los ítems del **"OID tree"**, a la derecha en **"OID name"** se nos mostrará el nombre, el tipo de dato y el valor del mismo (en el caso de que exista algún valor). Clicamos dos veces sobre el nombre del OID y aparecerá abajo en **"Ítems list"**. Por último, podemos seleccionar el intervalo en el que se va a recoger los datos del ítem y crear una grafica sobre el mismo si así lo deseamos (estos dos elementos pueden modificarse más tarde).
 +
 +Clicamos en **"save"** para añadir el ítem a la plantilla que hemos seleccionado.
 +
 +==== Configuración del Host ====
 +
 +Para crear un nuevo host en zabbix debemos ir a **"Configuration/hosts"**, una vez allí clicamos en **"créate host"**.
 +
 +{{ :seguridad:monitorizacion:zabbix2:snmp5.png?nolink&600 |}}
 +En la primera pestaña "Host" configuraremos los datos básicos del mismo.
 +
 +  * Host name: el nombre del equipo.
 +  * Groups: seleccionamos a qué grupo queremos añadir el equipo o creamos uno nuevo (new group).
 +  * Agent interfaces: aquí seleccionaremos el agente por el cuál queremos monitorizar nuestro equipo, en nuestro caso por **SNMP interface**. Clicamos en "add" y debemos indicar la IP o el nombre DNS del equipo (el puerto del SNMP es el 161).  
 +  * Status: elegimos empezar o no a monitorizar el equipo.
 +
 +En la siguiente pestaña elegimos la plantilla para nuestro equipo, por lo general la que tenga los ítems que queramos. 
 +
 +{{ :seguridad:monitorizacion:zabbix2:snmp6.png?nolink&600 |}}
 +<note>Las otras pestañas no hace falta configurarlas en este momento.</note>
 +
 +==== Configuración de los ítems ====
 +
 +Nos situamos en **"Configuration/Hosts"** y seleccionamos el equipo que acabamos de añadir y dentro elegimos la pestaña **"Ítems"**.
 +
 +Aquí crearemos los ítems que buscamos previamente con el **MIB Browser**, en caso de haberlo realizado con **SNMP Builder** aparecerá automáticamente. 
 +
 +Clicamos en **"créate item"**.
 +
 +{{ :seguridad:monitorizacion:zabbix2:snmp7.png?nolink&600 |}}
 +
 +{{ :seguridad:monitorizacion:zabbix2:snmp8.png?nolink&600 |}}
 +
 +  * Name: el nombre del ítem.
 +  * Type: el protocolo por el cuál se va a buscar el ítem (en nuestro caso SNMPv1 o SNMPv2).
 +  * Key: nombre clave del ítem (se usará para llamarlo en los triggers). Si elegimos SNMP aparecerá:
 +    * SNMP OID: la OID que buscamos con el **"MIB Browser**".
 +    * SNMP Community: la clave para acceder al equipo.
 +    * Port: el puerto por el que trabaja el SNMP (161).
 +  * Type of information: declarar si es númerico, texto, etc.
 +  * Update interval (in sec): cada cuanto tiempo se va a recoger el dato.
 +  * Description: una breve descripción de ítem.
 +
 +El resto de parámetros no los usaremos para este ejemplo.
 +
 +Cuando hayamos guardado en la pestaña ítems de nuestro equipo deberá aparecer todos los ítems que hayamos creado, para saber que estos funcionan correctamente debe aparecer a la derecha del todo una columna llamada **"Status"** en la que debe aparecer **"enabled"** si lo tenemos activado y a su derecha debe de haber un icono verde que indica que no hay errores al recoger el dato.
 +
 +{{ :seguridad:monitorizacion:zabbix2:snmp9.png?nolink&300 |}}
 +
 +<note> Puede darse el caso de que tengamos varios dispositivos similares a los que queramos monitorizar los mismos ítems, por lo que, sería conveniente crear los ítems y los triggers en la plantilla para no tener que crearlos para cada uno de los equipos.</note> 
 +
 +
 +==== Creación de Triggers ====
 +
 +Los triggers o disparadores son elementos que envían una notificación cuando se cumple una condición previamente establecida. Estos se refieren a un ítem en concreto.
 +
 +Seleccionamos **"triggers/Create trigger"**:
 +
 +{{ :seguridad:monitorizacion:zabbix2:snmp10.png?nolink&600 |}}
 +
 +  * Name: Nombre del trigger.
 +  * Expresion: aquí indicaremos la condición que debe cumplirse para que se desencadene el disparador.
 +  * Description: breve descripción de lo que hace el trigger.
 +  * Severity: aquí podemos elegir la magnitud del problema (se mostrará en la tabla de incidencias de monitoring).
 +
 +Respecto a **"Expresion"** la nomenclatura que hay que seguir es [[ https://www.zabbix.com/documentation/doku.php?id=1.8/manual/config/triggers | esta ]].
 +
 +Ejemplo:
 +
 +<code>
 +{nombreDelHost:NombreDelItem.función}(<, >, >=, <=, #, etc.) valor
 +
 +{UPS0004:upsAdvRunTimeRemaining.last(0)}<10m
 +</code>
 +
 +Este trigger nos avisará cuando el último valor (last) recogido del tiempo de carga restante (upsAdvRunTimeRemaining) del equipo UPS0004 es menor que 10 minutos ({x} < 10m). Si se cumple la condición mandará un aviso por zabbix según la importancia de la incidencia que hayamos indicado.
 +
 +===== Referencias =====
 +  * http://panicoenelcpd.blogspot.com.es/2011/07/plantilla-de-dispositivos-snmp-en.html