Pandora: Metaconsole: Documentation es: InstallAndConfigure

From Pandora FMS Wiki
Jump to: navigation, search

Volver a Indice de Documentacion Pandora FMS

1 Instalar y Configurar

En este apartado figurarán todos los aspectos necesarios para instalar y configurar una Metaconsola y sus Instancias.

1.1 Instalación

Las instalaciones de las Instancias y la Metaconsola tienen como requisito estar alojadas en servidores que estén comunicados en ambos sentidos.

Por lo que nos tendremos que asegurar de que:

  • La Metaconsola puede contactar con las Instancias
  • Las Instancias puedan contactar con la Metaconsola

Info.png

Las Instancias no necesitan estar comunicadas entre ellas en ningún momento

 


Para entender mejor este requisito puede echar un vistazo a la Arquitectura de la Metaconsola.

La configuración horaria debe ser la misma. Cuanto más sincronizados estén los relojes de Instancias y Metaconsola más exactos serán los datos visualizados.

Por ejemplo: Si una Instancia tiene 5 minutos de diferencia respecto a la Metaconsola, la visualización del tiempo transcurrido desde que se generaron sus eventos cuando se muestran esos datos en la Metaconsola serán falsos.

1.1.1 Instancias

Una Instancia es una instalación típica de Pandora FMS Enterprise.

Una instancia se compone de un Servidor y una Consola Web.

Todos los detalles de cómo instalar las Instancias los encontramos en el apartado de la documentación Instalación de Pandora FMS

1.1.2 Metaconsola

Una Metaconsola es una instalación de Pandora FMS Enteprise con una licencia de metaconsola.

Info.png

No se puede utilizar a la vez la consola de Pandora FMS y la Metaconsola

 


La Metaconsola es solamente la Consola Web. No utiliza servidor ya que no alojará agentes ni monitores

En algunos casos se puede necesitar de las librerías del servidor para ejecutar el script de mantenimiento de la base de datos en la metaconsola. Por simplicidad esto se hace instalando el servidor pero sin arrancarlo. Más información en Configuración adicional de la metaconsola

1.1.3 Configuración adicional de la metaconsola

La metaconsola, si se ha activado la replicación de eventos de los nodos, alberga datos de eventos en su propia base de datos. Para su mantenimiento estos datos se pueden borrar y/o mover a la bbdd de histórico de eventos de la metaconsola. Esto se hace, como en una instancia de pandora, a través de la ejecución del script de mantenimiento de bbdd que se encuenta en /usr/share/pandora_server/util/pandora_db.pl. Generalmente para lanzarlo se utiliza el fichero del servidor, solo que al ser una metaconsola, no hay servidor. Para ello, coja una copia del fichero /etc/pandora/pandora_server.conf de uno de los nodos, edítelo, y modifique los datos relativos a la BBDD (hostname, nombre de la BBDD, usuario y password) y guarde el fichero, por ejemplo, como :

/etc/pandora/pandora_meta.conf

Cree un script en /etc/cron.daily/pandora_meta_db con el siguiente contenido:

/usr/share/pandora_server/util/pandora_db.pl /etc/pandora/pandora_meta.conf

Y modifique los permisos de este mediante chmod:

chmod 755 /etc/cron.daily/pandora_meta_db

Para poder ejecutarlo, es necesario que tenga instalados los paquetes necesarios para ejecutar (aunque no lo haga) el servidor de Pandora FMS y su parte enterprise.

Ejecútelo a mano para comprobar que funciona y no da errores:

/etc/cron.daily/pandora_meta_db

1.1.4 Activación de la licencia

Tras instalar la versión Enterprise de la Consola de Pandora FMS, sea cual sea el método de instalación, deberá acceder a la consola de Pandora ( http://IP/pandora_console/ ) y le aparecerá la siguiente pantalla de bienvenida para aceptar la licencia:


License accept.png


Tras aceptar la misma, el esquema de la base de datos de Pandora FMS cambiará, añadiéndose las nuevas tablas necesarias para la utilización de la versión Enterprise, y le aparecerá una nueva pantalla donde podrá introducir el código de licencia que desde Artica le habrán enviado.


License setup.png


Para poder activar la metaconsola necesita una licencia de metaconsola. Si activa la licencia de nodo le aparecerá la consola normal.

1.2 Metalicencia

A partir de la versión 7.0NG de PandoraFMS disponemos de una licencia única para el entorno de Metaconsola. Esta licencia se aplica únicamente en la Metaconsola y se sincroniza con el resto de instancias permitiendo una centralización del número de agentes que hay desplegado en todo el entorno, pudiendo realizar de forma dinámica la asignación de agentes entre las diferentes instancias de Pandora FMS siempre y cuando no se sobrepase el número de agentes total dentro de la Metaconsola.

De esta forma en una instalación desde cero de Metaconsola e instancia, el primer elemento que hay que instalar es la Metaconsola y una vez registrada la misma se van añadiendo las diferentes instancias.

1.2.1 Dar de alta una nueva instancia perteneciente a un entorno de Metaconsola

Para ello realizamos el proceso de instalación habitual de cualquier instancia. Una vez que se haya creado correctamente la base de datos y estemos en la pantalla que nos pide la introducción de la licencia:


License setup.png


Procedemos a dar de alta la instancia en la Metaconsola. Para que se pueda dar de alta correctamente debemos realizar los "grants" necesarios en la base de datos de Metaconsola y nodos. Una vez estén todas las bases de datos con acceso, procedemos a registrar la instancia en la Metaconsola.

En el apartado de Metasetup, se podrá configurar las Instancias con las que se enlazará la Metaconsola.

La configuración de una instancia tiene una serie de parámetros que debemos configurar y obtener de las Instancias:



Configure Instances editor.png



Una vez creada la instancia, se configuraran todos los elementos automáticamente en la instancia y se habrá registrado correctamente la instancia pudiendo a partir de ahora levantar el servicio del servidor de Pandora en la instancia y empezar a deplegar la monitorización.



Instancia correcta.png



En el caso de tratarse de una actualización de licencia de Pandora FMS, se deberá actualizar la licencia dentro de la Metaconsola y pulsar sobre Validar y Sincronizar. Automáticamente se sincronizará la licencia en todas las instancias instaladas dentro de la Metaconsola.



Sync license.png



Si alguna de las instancias no ha sincronizado correctamente su licencia, habra que forzar su sincronización en el apartado licencia de la metaconsola o en su defecto volver a registrar la instancia de nuevo en la Metaconsola.

1.3 Configuración

Para que las Instancias se comuniquen con la Metaconsola y viceversa, hay que configurar ambos lados apropiadamente.

1.3.1 Instancias

En las Instancias hay una serie de parámetros para garantizar el acceso de sus datos con la Metaconsola.

1.3.1.1 Dar acceso a la Metaconsola

La Metaconsola accede de dos maneras a una Instancia:

  • Acceso remoto a la Base de Datos para ver y editar los datos almacenados en las instancias
  • Acceso a la API para algunas acciones como la edición de ficheros de configuración o la monitorización NetFlow.

La Instancia deberá configurarse para garantizar ambos accesos a la Metaconsola.

1.3.1.1.1 Base de datos

Se deberán saber las credenciales de la base de datos para configurar más tarde la Instancia en la Metaconsola. (Host, Base de datos, Usuario y Contraseña).

Otro punto importante es dar permisos al usuario para que acceda remotamente a la base de datos.

Se hace con el comando GRANT de MySQL:

GRANT ALL PRIVILEGES on <MetaconsoleDatabaseName>.* to <UserName>@<HostAddress> IDENTIFIED BY <UserPass>;
1.3.1.1.2 API

El acceso a la API de la Instancia se garantizará con los siguientes parámetros:

  • Usuario y contraseña: Se deberá saber un usuario y contraseña válidos en la Instancia.
  • Contraseña API: Se deberá conocer la contraseña de acceso a la API configurada en la Instancia.
  • Lista de IPs con acceso a la API: En la configuración de la instancia hay una lista de IPs que pueden acceder a la API. Se puede usar '*' como comodín para dar acceso a todas las IPs o a una subred.

1.3.1.2 Auto-autenticación

En algunas partes de la metaconsola hay accesos a la Consola Web de la Instancia.

Por ejemplo, en el visor de eventos al pinchar en el Agente asociado a un evento (si lo hay) nos llevará a la vista de ese agente en la consola de la Instancia a la que pertenece.

Para este acceso se utiliza Auto-autenticación.

Esta autenticación se realiza con un hash para el que se necesita una cadena configurada en la Instancia: La contraseña de auto identificación.

Esta configuración no es necesaria para configurar la Instancia en la Metaconsola, pero sin ella, al pinchar en uno de los enlaces que nos llevan a la Instancia, tendremos que autenticarnos.

1.3.1.3 Replicación de eventos

Para que en la Metaconsola se vean los eventos de las Instancias, estas tienen que tener acceso a la base de datos de la Metaconsola.

Las Instancias replicarán cada cierto tiempo sus eventos almacenando la fecha y hora del último replicado para continuar desde ahí la próxima vez.

Además de replicar los eventos, harán efectiva la autovalidación en la Metaconsola. Esto es, para los eventos que están asociados a un módulo, cuando repliquen el evento a la Metaconsola, validarán todos los eventos anteriores asignados al mismo módulo.

Para configurar la replicación de eventos, en el apartado de Configuración Enterprise de las Instancias activaremos la Replicación de Eventos.

Se configurará:

  • Intervalo: Cada cuantos segundos el servidor replicará los eventos generados desde la última replicación a la base de datos de la Metaconsola.

Info.png

Si se tiene configurado por ejemplo 60 segundos, la primera replicación sucederá a los 60 segundos de haber iniciado el servidor.

 


  • Modo de replicación: Si se replicarán todos los eventos o solo los validados.
  • Mostrar lista de eventos en consola local (solo lectura): Cuando la replicación de eventos está activada, la gestión de los eventos se lleva a cabo en la metaconsola y en la instancia no se tiene acceso a ellos. Con esta opción se tendrá acceso a una vista de los eventos en modo solo lectura.
  • Credenciales de la base de datos de la Metaconsola: Host, Base de datos, Usuario, Contraseña y Puerto (Si el puerto no se indica se utilizará el puerto por defecto)


Replication events setup.png



La replicación de eventos la hace el servidor. En el fichero de configuración debe haber un token habilitado: event_replication 1



Replication events conf token.png



Template warning.png

Para hacer efectivo cualquier cambio de configuración en la replicación de eventos será necesario reiniciar el servidor.

 


Template warning.png

Si añade un nodo que ya contiene muchos eventos a una metaconsola, le llevará mucho tiempo copiar todos los eventos que tiene a la metaconsola.

 


Si quiere modificar manualmente la fecha a partir de la cual el nodo va a sincronizar eventos con la metaconsola (por ejemplo, para forzar a que replique eventos a partir de la fecha actual, tendrá que lanzar la siguiente query contra la BBDD del nodo para versiones de Pandora anteriores a la 5.1SP3:

UPDATE tconfig SET `value` = UNIX_TIMESTAMP() WHERE `token` = "replication_copy_last_utimestamp"

Para versiones posteriores a la 5.1SP3 ejecute la siguiente consulta:

UPDATE tconfig SET `value` = (SELECT MAX(id_evento) FROM tevento) WHERE `token` = "replication_copy_last_id";

Template warning.png

Si tiene activado en los nodos hijos la seguridad SELinux puede que la replicación no funcione, por favor desactivelo.

 


1.3.1.4 Autoprovisión desde el nodo

A partir de Pandora 7 puedes encontrar en el setup de configuración enterprise, la opción de dar de alta el nodo en la metaconsola introduciendo menos datos que en el formulario de nodos en la metaconsola.

Ademas puedes chequear si esta llegas vía api a la metaconsola y chequear si esta dado de alta el nodo en la metaconsola.


Autoprovision nodo formuario.png


1.3.2 Metaconsola

1.3.2.1 Dar acceso a las Instancias

De igual modo que las Instancias dan permisos a la Metaconsola para acceder remotamente a la base de datos, la Metaconsola debe realizar lo mismo para que las Instancias puedan replicar sus eventos.

1.3.2.2 Configuración de las Instancias

En el apartado de Metasetup, se podrá configurar las Instancias con las que se enlazará la Metaconsola.

La configuración de una instancia tiene una serie de parámetros que debemos configurar y obtener de las Instancias:



Configure Instances editor.png



En la vista de las Instancias configuradas veremos que las instancias pueden ser editadas, desactivadas y eliminadas.

Además hay unos indicadores que chequean cierta información de la configuración de cada Instancia. Esos chequeos se hacen al cargar esta vista, pero también se pueden hacer individualmente haciendo click sobre ellos.



Configure Instances list.png



Los indicadores son los siguientes:

  • Base de datos: Si hemos configurado mal la base de datos de la Instancia o no tenemos los permisos necesarios, el indicador estará en rojo y nos dará información del problema.
  • API: Este indicador hará una prueba a la API de la Instancia. Si falla nos dará información del fallo.
  • Compatibilidad: Este indicador hace un chequeo de algunos requisitos que tiene que haber entre Instancia y Metaconsola. El nombre del servidor de la Instancia, por ejemplo, debe coincidir con el nombre que se le dé en su configuración en la Metaconsola.
  • Replicación de eventos: Este indicador indica si la Instancia tiene activada la replicación de eventos y si ya se han recibido eventos de la Instancia hace cuánto tiempo fue la última replicación.

Los tres primeros indicadores deben estar verdes para que la Instancia esté debidamente enlazada y comencemos a ver sus datos. En cambio el indicador de Replicación de eventos sólamente nos da información de esta característica.


Info.png

Una Instancia puede estar bien configurada pero sin replicar sus eventos

 


1.3.2.3 Escalado de índices

La mayor parte de la sincronización entre metaconsola e instancias se realiza por nombre, independientemente del ID interno de los elementos.

Como excepciones a esto, están los grupos, tags y alertas, cuyos IDs es importante que estén sincronizados.

Para asegurar que los IDs de los grupos, tags, alertas, sistemas operativos y grupos de modulos que se sincronizan desde la metaconsola no existan en las instancias, aumentaremos el valor AUTO_INCREMENT de las tablas tgrupo, ttag, talert_templates, talert_actions, talert_commands, tconfig_os y tmodule_group sensiblemente. De este modo, daremos un margen amplio por si se crean elementos en las instancias por causas ajenas a la metaconsola.

Para ello ejecutaremos en la base de datos de la metaconsola la siguiente consulta:

ALTER TABLE tgrupo AUTO_INCREMENT = 3000;
ALTER TABLE ttag AUTO_INCREMENT = 3000;
ALTER TABLE talert_templates AUTO_INCREMENT = 3000;
ALTER TABLE talert_actions AUTO_INCREMENT = 3000;
ALTER TABLE talert_commands AUTO_INCREMENT = 3000;
ALTER TABLE tconfig_os AUTO_INCREMENT = 3000;
ALTER TABLE tmodule_group AUTO_INCREMENT = 3000;

Info.png

Si se sospecha que el número de elementos de una instancia creados de forma ajena a la metaconsola puede superar los 3000, se puede configurar un valor superior.

 


1.3.2.4 Programación de informes

Aunque la metaconsola no dispone de un "servidor", es preciso instalar los paquetes (open y enterprise) del servidor en el sistema donde esté instalado la metaconsola a fin de poder lanzar el script de mantenimiento de Base de datos (pandora_db). Debe asegurarse de que queda correctamente programado para su ejecución en el cron cada hora (tal y como se detalla en el procedimiento de instalacion de un servidor regular de pandora fms).

Por otro lado si va a utilizar los informes bajo demanda (enviados por email), necesita programar la ejecución de la extensión cron al igual que se hace en una consola Enterprise normal. Generalmente esto se hace metiendo en el cron la siguiente linea ajustando los paths locales que correspondan:

 */5 * * * * <user> wget -q -O - http://x.x.x.x/pandora_console/enterprise/extensions/cron/cron.php >> /var/www/pandora_console/pandora_console.log

Por último, para configurar el SMTP de envío de emails, hay que editar los parámetros correspondientes en la sección de configuración de mail, que por defecto tienen los siguientes valores:

  Email from = "pandora@pandorafms.org"
  Email from name = "Pandora FMS"
  Email smtpServer = "mail.artica.es"
  Email smtpPort = 25
  Email username =  ""
  Email password = ""