Diferencias

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

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
es:documentation:06_metaconsole:03_installation [2021/07/21 21:10]
jimmy.olano [Recomendaciones previas al lanzamiento del Command Center] Boleto GitLab # 7835 ticket.
es:documentation:06_metaconsole:03_installation [2021/09/16 09:17]
Línea 1: Línea 1:
-====== Instalar y Configurar ====== 
-{{indexmenu_n>3}} 
- 
-[[es:documentation:start|Volver al Índice de Documentación Pandora FMS]] 
- 
- 
-===== Instalar y Configurar ===== 
- 
-En este apartado figurarán todos los aspectos necesarios para instalar y configurar una Metaconsola y sus Instancias (nodos). 
- 
-<WRAP center round info 60%> Versión NG 755 o anteriores: deberá configurar el uso del **Command Center**, en la [[:es:documentation:06_metaconsole:03_installation#command_center|sección 1.5 de este artículo]], dispone allí de toda la información pertinente para ello. 
- 
-</WRAP> 
-==== 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 
- 
-<WRAP center round tip 60%> 
-Las Instancias no necesitan estar comunicadas entre ellas en ningún momento. 
-</WRAP> 
- 
-Para entender mejor este requisito puede echar un vistazo a la [[es:documentation:06_metaconsole:02_architecture#Arquitectura|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 muestren esos datos en la Metaconsola, será falsa. 
- 
-=== 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 cómo instalar una instancia podemos visitar el siguiente [[es:documentation:06_metaconsole:03_installation|enlace.]] 
- 
-=== Metaconsola === 
-Una Metaconsola es una instalación de Pandora FMS Enterprise con una licencia de Metaconsola. 
- 
-<WRAP center round tip 60%> 
-No se puede utilizar a la vez la consola de Pandora FMS y la Metaconsola. 
-</WRAP> 
- 
-Es necesario tener activo un servidor para poder realizar distintas operaciones referentes a la Metaconsola, como la “migración”, “autoprovisionamiento”, ejecución de servicios, etc. 
- 
-=== 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á una pantalla de bienvenida para aceptar la licencia.  
- 
-Para saber más acerca de cómo se activa la licencia puede visitar el siguiente [[es:quickguides:general_quick_guide#Activacion_de_la_licencia_Enterprise|enlace.]] 
- 
-<WRAP center round tip 60%> 
-Para poder activar la Metaconsola necesita una licencia de Metaconsola. Si activa la licencia de nodo le aparecerá la consola normal. 
-</WRAP> 
- 
-==== 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 validada, registraremos cada una de las Instancias deseadas (se explica 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 Ártica en [[mailto:[email protected]|[email protected]]]. 
- 
-==== Configuración ==== 
-Para que las Instancias se comuniquen con la Metaconsola y viceversa, hay que configurar ambas partes apropiadamente. 
- 
-=== Metaconsola === 
-== 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 conocer una serie de parámetros referentes a la Instancia que queremos manejar. Si se trata del 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//. 
- 
-{{ wiki:Configure_Instances_editor3.png }} 
- 
-En caso de ser una instalación de Pandora FMS 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. 
- 
-{{ wiki:Configure Instances list new4.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 muestra 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 muestra 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 indicador 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 aparecer en color verde 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.  
- 
-<WRAP center round tip 60%> 
-Una Instancia puede estar bien configurada, pero sin replicar sus eventos. 
-</WRAP> 
- 
-<WRAP center round tip 60%> 
-Una vez se haya escogido replicar los eventos, toda la gestión de los mismos se realizará desde la Metaconsola, dejando a los eventos de la Instancia como meramente informativos. 
-</WRAP> 
- 
-<WRAP center round important 60%> 
-En caso de habilitar el encriptado de la base datos, **todos los nodos y la metaconsola deben utilizar la misma configuración de encryption_passphrase**. 
-</WRAP> 
- 
-== 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:  
- 
-<code> 
- 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; 
-</code> 
- 
-<WRAP center round tip 60%> 
-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. 
-</WRAP> 
- 
-<WRAP center round important 60%> 
-Para mejorar el rendimiento de los eventos en la metaconsola en entornos grandes,es recomendable añadir los siguientes indices en la base de datos: 
- 
-**ALTER TABLE** tmetaconsole_agent_secondary_group **ADD INDEX** id_tagente (id_tagente); 
- 
-**ALTER TABLE** tmetaconsole_event **ADD INDEX** server_id (server_id); 
-</WRAP> 
- 
-== Programación de informes == 
-Es preciso instalar los paquetes (Open y Enterprise) del servidor en el sistema donde esté instalada 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 [[es:documentation:04_using:11_managing_and_administration#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 línea, 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/log/console.log 
- 
-<WRAP center round important 60%> 
-Para versiones anteriores a la 747 la ruta será: **/var/www/pandora_console/pandora_console.log**. 
-</WRAP> 
- 
-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: 
- 
-{{ wiki:Mail metaconsola1.png }} 
- 
-=== Instancias === 
-En las Instancias hay una serie de parámetros para garantizar el acceso de sus datos con la Metaconsola. 
- 
-== 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.  
- 
-**Base de datos** 
- 
-Como hemos mencionado anteriormente, se deberán conocer 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 <InstanceDatabaseName>.* to <UserName>@<HostAddress> IDENTIFIED BY <UserPass>; 
- 
-Por ejemplo: 
- 
-  GRANT ALL PRIVILEGES on PandoraMetaBase.* to [email protected] IDENTIFIED BY pandora; 
- 
- 
-**API** 
- 
-El acceso a la API de la Instancia se garantizará con los siguientes parámetros: 
- 
-  * **Usuario y contraseña**: Se deberán conocer 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. 
- 
-{{ wiki:Imagen setup2.png }} 
- 
-== 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//. Dicha contraseña la ponemos en el campo de “Auth token” de la configuración de la instancia en la Metaconsola. 
- 
-{{ wiki:Autologin hash2.png }} 
- 
-<WRAP center round tip 60%> 
-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. 
-</WRAP> 
- 
-== 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 cuántos segundos el servidor replicará los eventos generados desde la última replicación a la base de datos de la Metaconsola.  
- 
-<WRAP center round tip 60%> 
-Si se tiene configurado, por ejemplo, 60 segundos, la primera replicación sucederá a los 60 segundos de haber iniciado el servidor. 
-</WRAP> 
- 
-  * **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). 
- 
-{{ wiki:Replication events setup2.png }} 
- 
-La replicación de eventos la hace el servidor. En el fichero de configuración debe haber un token habilitado: //event_replication 1// 
- 
-{{ wiki:Replication events conf token2.png }} 
- 
-<WRAP center round important 60%> 
-Para hacer efectivo cualquier cambio de configuración en la replicación de eventos será necesario reiniciar el servidor. 
-</WRAP> 
- 
-<WRAP center round important 60%> 
-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. 
-</WRAP> 
- 
-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 FMS 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"; 
- 
-<WRAP center round important 60%> 
-Si tiene activada en los nodos hijos la seguridad SELinux puede que la replicación no funcione; por favor, desactívela. 
-</WRAP> 
- 
-== Autoprovisión desde la Metaconsola == 
-A partir de Pandora 7 puede encontrar en el setup de configuración de la Metaconsola la opción de dar de alta el nodo en la Metaconsola.  
- 
-Además, se puede chequear si se está llegando vía API a la Metaconsola y si el nodo está dado de alta en la misma. 
- 
-Es necesario indicar las credenciales adecuadas para la conexión con el nodo, la base de datos y la API. 
- 
-<WRAP center round tip 60%> 
-La primera vez que se realice esta configuración, se podrá indicar una contraseña para la API. En caso de actualización, se mantendrá la contraseña que tuviese el nodo. 
-</WRAP> 
- 
-La configuración que se encuentra en "opciones avanzadas" será la que se envíe al nodo para su conexión con la base de datos.  
- 
-{{ wiki:MetaAutoprovisionamiento2.png }} 
- 
-=== 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 FMS, a través de la ejecución del script de mantenimiento de bbdd que se encuentra 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 tiene porqué haber 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 
- 
-==== Sincronización de Metalicencia ==== 
- 
-A continuación, vamos a ver un ejemplo de cómo sincronizar la metalicencia entre una Metaconsola y una Instancia. 
- 
-En primer lugar, tenemos una Instancia con su propia clave generada y correctamente validada: 
- 
-{{  :wiki:metalicencia1.jpg  |metalicencia1.jpg}} 
- 
-Una vez tenemos el nodo generado y correctamente validado, a continuación lo configuraremos en la Metaconsola para posteriormente poder sincronizar la licencia: 
- 
-{{  :wiki:configure_instances_list_new4.png  }} 
- 
-Cuando ya tenemos estos pasos, iremos a la licencia de la Metaconsola y daremos a "Validate" para sincronizar la metalicencia con la Instancia. 
- 
-{{  :wiki:metalicencia1.jpg  |metalicencia1.jpg}} 
- 
-El resultado será que tendremos la metalicencia en la Instancia. 
- 
-===== Command Center ===== 
- 
-A partir de la versión 756 de Pandora FMS se ha rediseñado desde cero el sistema de sincronización para entornos con modo centralizado, haciéndolo más rápido y eficiente, ya que los cambios se replicarán a los nodos de forma automática sin necesidad de la sincronización manual que se hacía hasta ahora. 
- 
-Este cambio deja en desuso el sistema anterior por lo que en entornos en los que estuviera activo, se deberá pasar por el sistema automático de mezclado (//merge//) previo para usar el nuevo sistema de centralización **y poder garantizar la integridad de los datos.** 
- 
-Al actualizar, todos los entornos de Metaconsola ya centralizados serán forzados a pasar por el nuevo **Command Center** para poder estar centralizados de nuevo de forma correcta. 
- 
-{{  :wiki:pfms-metaconsole-command_center_01.png  }}{{  :wiki:pfms-metaconsole-command_center_02.png  }} 
- 
-El Command Center hará una mezcla de los distintos elementos de las bases de datos de los nodos y la Metaconsola (de aquellos que deban gestionarse desde Metaconsola) de la siguiente forma: 
- 
-Se establecerá un orden de prioridad entre los nodos y la Metaconsola, ubicando en la parte superior de la lista los elementos más prioritarios y en la inferior los menos. 
- 
-Por ejemplo: 
- 
-<code> 
-    - Metaconsola 
-    - Nodo 1 
-    - Nodo 2 
- 
-</code> 
- 
-{{  :wiki:pfms-metaconsole-command_center_03.png  }} 
- 
-Esta lista de prioridad sirve para casos en los que un mismo elemento exista en los distintos nodos pero tenga configuraciones distintas. Por ejemplo, que los 2 nodos y la Metaconsola tengan el grupo "Databases". Con este orden de prioridad se tomará para todos la configuración del elemento más prioritario, en el ejemplo de la Metaconsola. 
- 
-En otro caso, si por ejemplo solo los nodos 1 y 2 contasen con una política llamada "Windows", para todos los nodos y la Metaconsola la configuración para esa política sería la del Nodo 1 (nos saltamos la Metaconsola porque no la tiene). 
- 
-<WRAP center round important 60%>\\ 
-Solo para las configuraciones propias de la política (grupo, descripción,…). Los módulos, alertas y demás elementos de la política se consideran elementos aparte e independientes a la política y por lo tanto se mezclan también.\\ 
-</WRAP>\\ 
-Es decir, en el caso de la política y viéndolo solo con módulos, si tenemos: 
- 
-<code> 
-    - Metaconsola 
-        - Política: Linux 
-    - Nodo 1 
-        - Política: Windows 
-            - Módulo: MOD1 (con configuracion A) 
-            - Módulo: MOD2 (con configuracion B) 
-    - Nodo 2 
-        - Política: Windows 
-            - Módulo: MOD1 (con configuracion C) 
-            - Módulo: MOD4 (con configuracion D) 
-        - Política: Solaris 
-            - Módulo: MOD5 (con configuracion E) 
- 
-</code> 
- 
-El resultado del Command Center sería: 
- 
-<code> 
-    - Metaconsola 
-        - Política: Linux 
-        - Política: Windows 
-            - Módulo: MOD1 (con configuración A) 
-            - Módulo: MOD2 (con configuración B) 
-            - Módulo: MOD4 (con configuración D) 
-        - Política: Solaris 
-            - Módulo: MOD5 (con configuración E) 
-    - Nodo 1 
-        - Política: Linux 
-        - Política: Windows 
-            - Módulo: MOD1 (con configuración A) 
-            - Módulo: MOD2 (con configuración B) 
-            - Módulo: MOD4 (con configuración D) 
-        - Política: Solaris 
-            - Módulo: MOD5 (con configuración E) 
-    - Nodo 2 
-        - Política: Linux 
-        - Política: Windows 
-            - Módulo: MOD1 (con configuración A) 
-            - Módulo: MOD2 (con configuración B) 
-            - Módulo: MOD4 (con configuración D) 
-        - Política: Solaris 
-            - Módulo: MOD5 (con configuración E) 
- 
-</code> 
- 
-Esto permite que el resultado tenga el máximo posible de configuraciones distintas para que ya podamos gestionarlas desde la Metaconsola. 
- 
- 
-==== Requisitos previos a lanzar la combinación de bases de datos del Command Center ==== 
- 
-  * La Metaconsola debe poder conectarse a todas las bases de datos y a todas las APIs de los nodos. Hay que asegurarse de que la configuración de "Consoles setup" sea la correcta y tengamos los indicadores en verde. 
- 
-{{  :wiki:pfms-metaconsole-command_center_04.png  }} 
- 
-  * Las Consolas de los nodos deben poder conectarse a la base de datos de la Metaconsola. Normalmente esto no será un problema, a no ser que se tengan las consolas en equipos distintos a los servidores de Pandora FMS. Hay que asegurarse de que los parámetros de la configuración de **Setup**  → **Enterprise**  para la Metaconsola en los nodos sea la correcta. 
-  * Cada Metaconsola y nodo debe poder conectarse a su propia base de datos de histórico, en caso de tenerla configurada. 
-  * Todos los nodos y la Metaconsola se deben encontrar en la misma versión. 
-  * Todos los nodos y la Metaconsola se deben encontrar en el mismo MR (actualización de esquema de la base de datos). 
-  * Todos los nodos y la Metaconsola deben tener configurado el mismo tamaño máximo de colección. 
- 
-<WRAP center round important 60%> \\ **Importante:** \\ </WRAP> 
- 
-  * Para evitar errores, la Metaconsola deben tener configurado el parámetro ''memory_limit''  del [[:es:documentation:07_technical_annexes:14_php_7#centos1|fichero de configuración]]''php.ini''  a ''-1'', es decir, sin límite, //pero solo para el proceso de mezcla//. Tras terminarlo se recomienda volver a ajustarlo al valor anterior (800M por defecto). Esto es así, ya que se utiliza bastante memoria para hacer la mezcla de los nodos, y en entorno muy grande (con muchos elementos distintos) se puede usar gran cantidad de memoria, de esta forma nos aseguramos que el sistema pueda usar toda la memoria disponible. Si los elementos a mezclar superan el valor de la memoria física disponible en el servidor, el Command Center fallará por un error inesperado, y en los //logs//  de la consola/apache se verá la línea que indique el exceso de memoria alcanzado. 
-  * Todos los nodos deben tener un valor para el parámetro ''post_max_size''  del [[:es:documentation:07_technical_annexes:14_php_7#centos1|fichero de configuración]]''php.ini''  que sea mayor o igual al valor configurado para el mismo parámetro en la Metaconsola. 
-  * Todos los nodos deben tener un valor para el parámetro ''upload_max_filesize''  del [[:es:documentation:07_technical_annexes:14_php_7#centos1|fichero de configuración]]''php.ini''  que sea mayor o igual al valor configurado para el mismo parámetro en la Metaconsola. 
- 
-<WRAP center round info 60%> \\ Si no se cumplen todos esos requisitos, no se realizará la mezcla de nodos y nos arrojará un error. Si consultamos los errores del resultado nos dará un mensaje de los requisitos aún pendientes. \\ </WRAP> 
- 
-<WRAP center round important 60%>Es importante una vez realizado la unificación de bases de datos que se vuelva a poner el valor correspondiente el parámetro ''memory_limit''  del [[:es:documentation:07_technical_annexes:14_php_7#centos1|fichero de configuración]] ''php.ini''. Recordar que para que el cambio tenga efecto se debe reiniciar el **servicio de apache httpd**</WRAP> 
- 
-==== Recomendaciones previas al lanzamiento del Command Center ==== 
- 
-  * Detener el **pandora_server**  de todos los nodos y la Metaconsola mientras dure el proceso. Como se van a cambiar elementos fundamentales como grupos, sus IDs se pueden modificar, y no es recomendado tener el proceso del servidor incluyendo nuevas referencias al entorno mientras este dure. No obstante, el servidor en ejecución no debería ser un problema en la mayoría de los casos. 
-  * Deshabilitar el proceso del **pandora_db**  del **cron**  temporalmente mientras dure el proceso, por los mismos motivos que el servidor. 
- 
-<WRAP center round important 60%> \\ Cuando se inicia el proceso de mezcla tanto los nodos como la Metaconsola entran en un modo de mantenimiento. El propósito de esto es el mismo que la recomendación de detener los servidores y el **pandora_db**, evitar que un usuario modifique elementos durante el proceso y eso provoque errores o incongruencias. \\ </WRAP> 
- 
-{{  :wiki:pfms-metaconsole-command_center_05.png  }} 
- 
-<WRAP center round important 60%> \\ Solo se tienen en cuenta para el proceso de mezcla los nodos configurados en la Metaconsola que no estén deshabilitados. \\ </WRAP> 
- 
-El proceso de mezcla tiene 2 fases diferenciadas, divididas a su vez en otras 2 fases diferenciadas en 2 barras de progreso: 
- 
- 
-=== Fase 1 elementos === 
- 
-  * **Initialize:**  Comprueba todos los requisitos anteriores, genera los //backups //correspondientes (si se cumplen los requisitos) por si alguna parte del proceso falla, y genera en memoria el resultado de la mezcla de las bases de datos. Si este proceso falla por algún motivo las bases de datos aún no se habrán modificado, por lo que no hará falta restaurar //backups//. Los //backups //se almacenan en cada nodo/Metaconsola en el directorio: ''pandora_console/attachment/merge_backups'' 
-  * **Apply:**  Si la fase de inicialización anterior ha tenido éxito, se empezará a aplicar el resultado de la unificación en todos los nodos y la Metaconsola. Este proceso es secuencial en orden de prioridad, de modo que cuando termine con uno empezará con el siguiente. Si se producen errores durante este proceso (//por ejemplo, perdida de conexión con alguna base de datos//), el propio proceso tratará de restaurar los //backups //generados (se verá una tercera barra de progreso roja que marcará el progreso en la restauración). Si el motivo del fallo impidiese que se recuperasen los //backups//, la recuperación se deberá hacer manualmente. 
-=== Fase 2 eventos === 
- 
-  * **Base de datos principal:**  Como los eventos son un gran volumen de información que también se ve afectado, este proceso de actualización se realiza en paralelo con el funcionamiento normal del entorno ya mezclado. En este punto el servidor y **pandora_db**  se pueden volver a iniciar normalmente, y los usuarios estándar son capaces de volver a acceder a la Consola. Eso sí, verán en la vista de eventos la barra de proceso de actualización de todos los eventos, por lo que para esa parte aún podrán tener incongruencias (respecto a filtros por ejemplo) solo para los eventos que hubiese antes de la mezcla. //Los nuevos eventos se generarían de forma normal//. Esta fase y proceso es lanzado por cada uno de los nodos, mediante una tarea específica del **cron**  de la Consola. Por el volumen de información puede ser una tarea pesada y que tome bastante tiempo, por lo que en la medida de lo posible cuanta menos carga tenga el entorno en ese momento mejor (procurar lanzarlo fuera de las horas de más actividad en Pandora FMS). 
-=== Base de datos de histórico === 
- 
-  * Sería la continuación del punto anterior, actualizando los eventos en la base de datos de histórico bajo las mismas características ya indicadas. 
- 
-Ya terminada la fase 1, el entorno se considerará centralizado, y a partir de ahí podremos gestionar todo desde la metaconsola. La sincronización de elementos también se ha cambiado, siendo ahora el proceso del **pandora_ha**  de cada nodo el que se encarga de sincronizar su base de datos con la de la Metaconsola (este proceso se ejecuta junto con el servidor a partir de la versión 755). 
- 
-Cuando en la Metaconsola hacemos algún cambio (por ejemplo, crear un usuario) esto encola para los nodos las consultas necesarias a la base de datos (''INSERTS'', ''UPDATES'', etc.) las cuales el **pandora_ha**  lee de forma ordenada y va ejecutando en cada **server_threshold**. Esto asegura que si un servidor está detenido durante un tiempo, cuando se inicie de nuevo pueda ponerse al día de forma correcta. 
- 
-Esta lista de consultas pendientes se podrá ver desde la Metaconsola en la sección de **Consoles setup**. Si por algún motivo alguna consulta falla, el nodo no seguirá con las demás, podremos ver un error en **Consoles setup** y será necesario tratarlo manualmente por un administrador. En la mayoría de los casos se debería de poder solucionar lanzando de nuevo el proceso de mezcla en el Command Center. 
- 
- 
-=== Inclusión de nodos nuevos === 
- 
-Inclusión de nodos nuevos 
- 
-==== Elementos incluidos en la sincronización ==== 
- 
-Elementos incluidos en la sincronización 
- 
-[[:es:documentation:start|Volver al Índice de Documentación Pandora FMS]] 
- 
  
ºº