Pandora:Documentation es:Monitorizacion otra

From Pandora FMS Wiki

Jump to: navigation, search

Volver a Indice de Documentacion Pandora FMS

Otro tipo de monitorización

Introducción

Además de las característica como la monitorización remota, basada en agentes o web, Pandora FMS ofrece recursos avanzados para mejorar la monitorización. Con estos recursos puede realizar estimaciones sobre el histórico de datos o crear nuevos módulos basados en operaciones aritméticas de módulos existentes.

Monitorización con módulos sintéticos

Esta es una característica de la versión Enterprise. Un módulo sintético es un módulo que obtiene su valor de datos ya existentes en otros módulos. Veamos un par de ejemplos:

  • Un módulo llamado "Suma de tráfico" que suma los valores del tráfico de entrada y el tráfico de salida de un router, generando un nuevo módulo con el tráfico total de la interfaz.
  • Un módulo llamado "Usuarios totales" que suma los valores de diez módulos llamados "Usuarios conectados" en cada uno de los cinco servidores donde se monitoriza el nº de usuarios que se conectan.

Los módulos sintéticos son en suma, módulos fabricados a partir de datos de otros módulos, que pueden estar en el mismo agente o en agentes diferentes. Las operaciones que se pueden realizar son aritméticas (Sumar, restar, multiplicar y dividir) entre módulos y/o con valores absolutos.

El primer paso para crear un módulo sintético es ir a la sección de administración de un agente, y a la solapa de módulos, ahí escogeremos la opción de crear un módulo de tipo predictivo.



Synth 1.png



En nuestro primer ejemplo, crearemos un módulo ficticio que contendrá la media aritmética de dos módulos de dos agentes diferentes: CPUUse (Sancho-XP) y cpu_user (garfio). Ese módulo en cada máquina mide el % de uso de CPU y son dos máquinas Windows y Linux respectivamente. El resultado final será un módulo almacenado en Sancho-XP que contendrá la media de los dos valores.



Synth 2.png



El segundo ejemplo, crea un módulo llamado "Total accesses" con la media de los valores de los módulos "Apache_accesses" de dos agentes diferentes, llamados Sancho-XP y Sancho-XP_2


Synth 3.png



Otro ejemplo más sencillo, pero que puede ser útil, es el que se ha utilizado para crear el módulo "Total accesses" en Sancho-XP-2. Simplemente "copia" el valor de un módulo con el mismo nombre en Sancho-XP para producir el valor.



Synth 4.png



Para operar con otras operaciones lógicas (Multiplicación, resta, división), simplemente hay que tener en cuenta el orden de los operadores. Juegue con la interfaz para ver como se puede hacer cualquier operación aritmética entre diferentes módulos. Por otro lado puede utilizar un valor fijo (Fixed value en la captura) para agregarlo a sus operaciones lógicas.

Puede seleccionar varios agentes en la caja de la izquierda (usando control) y se le mostrarán en la caja del centro, todos los módulos "comunes" de los agentes seleccionados. Puede ser muy útil para hacer "medias" de módulos comunes de un grupo de servidores (p.e: CPU o espacio en disco).

Monitorización predictiva

Para monitorizar un elemento con un módulo de predicción se necesita tener un módulo anteriormente sobre el que realizar las predicciones. Un buen módulo para ello podría ser la cantidad de disco o RAM libre en un equipo, ya que la falta de los mismos puede causar un mal funcionamiento en el mismo. Otro módulo interesante podría ser la latencia que existe entre el servidor de Pandora FMS y un servidor de Internet, Google por ejemplo. Por ello se creará un agente y dentro de éste, un módulo de predicción que monitorice la latencia que existe con Google. Consulte la sección de creación de módulos de red para ello. Para que la predicción tenga sentido, es necesario que la información a predecir tenga algún patrón, preferiblemente que se repita en el tiempo, de forma diaria o semanal.

Con prediction server podemos trabajar en dos lineas:

  • Predecir cual sería un valor aceptable, en un margen de tiempo de 5-10 minutos (o más, pero con una aproximación peor cuanto mas tiempo en el futuro estimemos).
  • Decir si existe una anomalía o no en el valor recogido por el modulo "origen" que se está analizando.

Veamos como se puede definir un módulo de tipo predictivo.

En la sección de Resources de la consola de Pandora FMS pulse sobre Manage agents.



Administration agents.png


En la siguiente pantalla pulse el botón Create agent:



Mariposa2.jpg


Rellene los datos para su nuevo agente y pulse el botón Create:



Mariposa3.jpg



Una vez que haya creado el agente, pulse sobre la solapa superior de los módulos (Modules). En ella, seleccione crear un nuevo módulo de red y pulse el botón Create:



Mariposa4.jpg



Una vez que se pulse el botón Create, se mostrará un formulario en el que se han de rellenar los campos necesarios para poder crear un módulo de predicción.



Latencia.jpg



A continuación se detallan los campos del formulario:

  • Name: nombre del módulo
  • Disabled: indica si el módulo está desactivado.
  • Type: tipo de datos que monitorizará el módulo; éstos pueden ser booleanos y numéricos. En función de cual sea el tipo, actuaremos como detector de anomalías (Módulo de tipo booleano) o como "predictor" del valor del módulo en el futuro (Módulo de tipo dato numérico).
  • Module Group: grupo para el módulo.
  • Source module: Los módulos predictivos pueden operar en varios modos de trabajo, aquí estamos operando con modulos de tipo predictivo simple, y seleccionaremos el tipo "Modulo". Aquí tenemos tres campos para seleccionar la fuente de la información:
    • Agente. Basta con poner un trozo del nombre y buscará agentes con ese trozo en el nombre.
    • Módulo. Una vez seleccionado el agente, nos mostrará que modulos tiene.
    • Periodo. La versión 4.0 de Pandora, permite elegir períodos diferentes a la hora de calcular la predicción, siendo posible en ciclos diarios, mensuales o semanales.

Por último no debemos olvidarnos de un campo que aparece en propiedades avanzadas:

  • Intervalo (en las propiedades avanzadas): El intervalo va desde 5 minutos hasta 3 años. Si los intevalos que aparecen en el combo no se ajustan a nuestras necesidades, se puede personalizar eligiendo unidades desde los segundos hasta los años (si es de tipo predictivo, no detector de anomalías).

Como se ve, se ha seleccionado el módulo Host Latency de un agente previamente creado llamado Google. Éstos son los datos del agente Google:



Dido.jpg



Y los datos que se han obtenido para los dos módulos, en un momento dado, son los siguientes:



Dido1.jpg



Haciendo un seguimiento de los datos de latencia, pulsando sobre el cuadro con 101 bajo la columna Graph, veremos los datos recibidos en estado crudo para el último día:



Dido2.jpg



Aunque se dispone de pocos datos, en este caso se ve que entre 13 y 15 segundos va a estar, más o menos, la media. Si se desviase de estos valores, entonces el módulo de predicción advertiría de ello. No obstante se necesita, al menos, una semana de datos para que la predicción funcione.

A continuación se explica en detalle cómo trabaja el módulo:

El servidor de inteligencia artificial y predicción de Pandora FMS implementa de forma estadística una previsión de datos en base a datos pasados (con una profundidad de hasta 30 días en cuatro referencias temporales).

Se ha diseñado un modelo de datos complementario al de Pandora FMS que permite que los módulos que contienen datos de predicción se alimenten de datos de módulos reales. Los módulos de tipo predictivo son procesados por un servidor que trabaja sólo con datos de tipo predictivo de forma completamente modular, de forma que es fácil implementar (incluso en diferentes lenguajes) diferentes motores de procesado de la información para generar predicciones mucho mas completas en base al tratamiento de redes neuronales o redes bayesianas.

Actualmente la predicción soporta dos tipos de módulos. Una predicción numérica del dato basado en un margen temporal (definido como intervalo en el nuevo módulo predictivo), o una detección de la desviación del comportamiento «normal» dentro de un margen temporal definido como 1/2 del intervalo definido. Cuando más amplio sea el margen temporal, mas error tiene la predicción y más rango de valores posibles son contemplados. Estos dos módulos se implementan por un lado con modulos booleanos, que pertenecen al segundo tipo de predicción (anomalías); numéricos y numéricos incrementales, perteneciendo estos dos últimos al segundo tipo de predicción.

Para que la predicción funcione ha de tener al menos datos de una semana de antigüedad. De lo contrario no puede predecir. La predicción se hace mediante el cálculo de los valores medios del valor del módulo en un intervalo dado, en cuatro momentos del tiempo, t1, t2, t3, t4. Siendo t1 el valor hace una semana, t2 el valor hace dos semanas, y así hasta t4. Si trabajamos en ciclos mensuales t1 es el valor hace un mes y t2 el valor hace dos meses, lo mismo si los ciclos son días.

Para el cálculo de las anomalías, se calcula también la desviación típica para aquellas muestras con valores diferentes de 0, y se compara el valor real sobre el valor «predicho» +/- la desviación típica.

La cantidad de muestras se puede ajustar, dado que por defecto Pandora FMS borra datos de más de 45 días.

Un parámetro esencial en la predicción es el intervalo de la misma, disponible en las opciones avanzadas del módulo:



Riro.jpg



El resto de campos de las propiedades avanzadas son iguales al resto de módulos.

Monitorización Netflow

Es un caso especial de monitorización con el prediction server, sólo para la version Enterprise.

Los módulos de Netflow enterprise permiten calcular la media de tráfico en un intervalo para un patrón de tráfico IP definido en un filtro de Netflow. La media se calcula en bits por segundo.

El primer paso es definir el filtro. Por ejemplo, para configurar un módulo que devuelva el tráfico Web medio cada 10 minutos vamos a Resources > Netflow Filters (Administration > Netflow Filters en versiones anteriores) y creamos un filtro nuevo con la siguiente configuración:



Netflow module filter.png



Hay que tener en cuenta que los campos Aggregate by y Output format sólo afectan a las gráficas de Netflow, no a los módulos.

A continuación hay que crear el módulo, para ello vamos a Resources->Manage agents y seleccionamos el agente deseado haciendo click en Modules:



Netflow module edit.png



Seleccionamos Create a new prediction server module y hacemos click en Create:



Netflow module create.png



Por último configuramos como fuente Netflow, seleccionamos el filtro que acabábamos de crear y configuramos un intervalo de 600 segundos (10 minutos).



Netflow module.png



Volver a Indice de Documentacion Pandora FMS