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(nodos).

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 o nodo es una instalación típica de Pandora FMS Enterprise, compuesta por un servidor y una consola web

Para saber con detalle como instalar una instancia podemos visitar el siguiente enlace.

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

 


Es necesario tener activo un servidor para poder realizar distintas operaciones referentes a la metaconsola como la “migración”, “autoprovisionamiento”, ejecución de servicios…

1.1.3 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, se deberá acceder a la consola de Pandora (http://IP/pandora_console/) y le aparecerá la siguiente pantalla de bienvenida para aceptar la licencia. Para saber más de como se activa la licencia podemos visitar el siguiente enlace.

Info.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 un entorno con Metaconsola. Se podrán crear tantas instancias como se quiera, siempre y cuando no se sobrepase el número de agentes total dentro de la Metaconsola.

Esta licencia se aplica en la Metaconsola y se puede sincronizar en tantas instancias como se quiera, permitiendo así la gestión centralizada de los distintos agentes que se desplegarán en dichas Instancias.

Con esta licencia, si empezamos una instalación desde cero, primero deberemos instalar la Metaconsola validando su metalicencia. Una vez validado, registraremos cada una de las instancias deseadas (explicado en los siguientes apartados), sincronizando posteriormente la metalicencia para que podamos trabajar sobre todas ellas.

Al margen de fallos puntuales de red, los nodos de Pandora FMS deberán poder contactar con la Metaconsola de Pandora FMS en todo momento. Si necesita soportar nodos que puedan permanecer desconectados por periodos de tiempo arbitrariamente largos, contacte con Artica en [email protected].

1.3 Configuración

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

1.3.1 Metaconsola

1.3.1.1 Alta y Configuración de las Instancias

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

Para dar de alta una nueva instancia debemos de conocer una serie de parámetros referentes a la instancia que queremos manejar. Si se trata de un alta de una instancia que todavía no ha sido registrada con una licencia, los datos por defecto son:

  • Server name: localhost.localdomain
  • Auth token: vacía
  • Console URL: http://IP/pandora_console
  • API password: vacía
  • DB host: IP de la base de datos
  • DB name: pandora
  • DB user: pandora
  • DB password: pandora
  • DB port: 3306
  • Control user: admin
  • Console password: pandora

Campos avanzados

Para garantizar la conectividad entre nodo y Metaconsola, podemos configurar manualmente los datos de conexión.

  • Metaconsole DB host: IP de la base de datos
  • Metaconsole DB name: pandora
  • Metaconsole DB user: pandora
  • Metaconsole DB password: pandora
  • Metaconsole DB port: 3306


Estos campos indican la configuración de la conexión que establecerá el nodo contra la metaconsola.


800

En caso de ser una instalación de Pandora donde ya hemos incluido una licencia válida en la instancia, tendremos que obtener dichos datos del setup de la instancia y la base de datos de la misma.

En la vista de las Instancias configuradas veremos que las instancias pueden ser modificadas, desactivadas y eliminadas. Existen unos indicadores que chequean cierta información de la configuración de cada instancia. Esos chequeos se realizan al cargar esta vista, pero también se pueden hacer individualmente haciendo click sobre ellos.

Configure Instances list new2.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.
  • Caché del agente: Este indicador indica que los últimos estados de los agentes y módulos del nodo se han guardado correctamente en la base de datos de la Metaconsola. Cuando un cambio se genera, solo ese cambio será modificado en la base de datos.
  • Sincronización: Este indicar hace referencia a la posibilidad de poder realizar la sincronización de los distintos elementos desde la Metaconsola a las instancias.

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 solamente nos da información de esta característica.

Info.png

Una Instancia puede estar bien configurada, pero sin replicar sus eventos

 


Info.png

Una vez se haya escogido replicar los eventos, toda la gestión de los mismo se realizará desde la Metaconsola, dejando a los eventos de la instancia como meramente informativos.

 


1.3.1.2 Escalado de índices

La mayor parte de la sincronización entre la Metaconsola y las Instancias se realiza por nombre, independientemente del ID interno de los elementos, teniendo como excepción los grupos, tags, alertas, sistemas operativos y grupos de módulos, cuyos IDs es importante que estén sincronizados.

Para asegurar que los IDs de los grupos, tags, alertas, sistemas operativos y grupos de módulos 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.1.3 Programación de informes

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 siguiente Pandora:Documentation_es:Gestion_y_Administracion#Cron_Job |enlace.]]).

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:

Mail metaconsola.png

1.3.2 Instancias

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

1.3.2.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.2.1.1 Base de datos

Como hemos dicho anteriormente se deberán saber las credenciales de la base de datos para configurar la instancia en la Metaconsola. (Host, Base de datos, Usuario y Contraseña).

Además de ello, 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>;

Por ejemplo:

GRANT ALL PRIVILEGES on PandoraMetaBase.* to [email protected] IDENTIFIED BY pandora;


1.3.2.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.

Imagen setup.png


1.3.2.2 Auto-autenticación

En algunas partes de la metaconsola hay accesos a la Consola Web de la Instancia como, 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. Dicha contraseña la ponemos en el campo de “Auth token” de la configuración de la instancia en la metaconsola.

Autologin hash.png

Info.png

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.2.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.2.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.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.4 Sincronización de Metalicencia

A continuación vamos a ver un ejemplo de como sincronizar la metalicencia entre una metaconsola y una instancia.

En primer lugar, tenemos una instancia con su propia clave generada y correctamente validada.

Nodo licenciasuya.png

Una vez tenemos el nodo generado y correctamente validado, a continuación lo configuraremos en la metaconsola para posteriormente poder sincronizar la licencia:

Sincronodo meta2.png

Cuando ya tenemos estos pasos, nos iremos a la licencia de la metaconsola y daremos a "Validate and sync" para sincronizar la Metalicencia con la instancia.

Meta sincrolicencia.png

El resultado será que tendremos la metalicencia en la instancia como se puede ver a continuación:

Meta sincrolicenciaNodo.png