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/22 00:51]
jimmy.olano [Instalar y Configurar] Boleto GitLab # 7835 ticket retoques.
es:documentation:06_metaconsole:03_installation [2021/09/16 09:17] (actual)
Línea 12: Línea 12:
  
 </WRAP> </WRAP>
- 
  
 ==== Instalación ==== ==== Instalación ====
Línea 61: Línea 60:
 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. 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]|]].+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]|mailto:[email protected]]].
  
 ==== Configuración ==== ==== Configuración ====
Línea 268: Línea 267:
 {{  :wiki:metaautoprovisionamiento2.png  }} {{  :wiki:metaautoprovisionamiento2.png  }}
  
-=== Configuración adicional de la metaconsola ===+=== 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 :+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 :
  
 <code> <code>
Línea 320: Línea 319:
 ===== Command Center ===== ===== 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. +<WRAP center round info 60%> Versión NG 755 o anterioresdeberá configurar el uso del **[[:es:documentation:06_metaconsole:04_command|Command Center]]**, dispone allí de toda la información pertinente para ello.</WRAP>
- +
-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 grupossus 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. +
-{{  :wiki:pfms-metaconsole-command_center_06.png  }} +
- +
-=== 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. +
- +
-{{  :wiki:pfms-metaconsole-command_center_07.png  }}{{  :wiki:pfms-metaconsole-command_center_08.png  }} +
- +
-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. +
- +
-{{  :wiki:pfms-metaconsole-command_center_09.png  }} +
- +
-=== Inclusión de nodos nuevos === +
- +
-Si en un entorno ya centralizado agregamos un nuevo nodo, editamos alguno, o rehabilitamos uno ya existente que se hubiera quedado fuera de la mezcla, será necesario pasar de nuevo por el **Command Center**. +
- +
-Se mostrará un mensaje avisándolo al administrador que haga esta tarea, mientras no se haga el nodo permanecerá bloqueado e inaccesible, en estado de //pending to merge//. +
- +
-{{  :wiki:pfms-metaconsole-command_center_10.png  }} +
- +
-{{  :wiki:pfms-metaconsole-command_center_11.png  }} +
- +
-No se le asignarán los cambios realizados ni se tendrá acceso a la consola hasta que no pase el proceso de //merge//+
- +
-{{  :wiki:pfms-metaconsole-command_center_12.png  }} +
- +
-<WRAP center round tip 60%> \\ Si se requiere hacer un cambio en la consola para solucionar un error en el proceso de mezcla (como aplicar un OUM), se puede borrar el elemento de la lista de nodos para desbloquearlo temporalmente. \\ </WRAP> +
- +
-==== Elementos incluidos en la sincronización ==== +
- +
-  * **Usuarios**: Se gestiona únicamente desde la Metaconsola. Se desactiva la gestión en nodo. +
-  * **Perfiles**: Se gestiona únicamente desde la Metaconsola. //Se desactiva la gestión en nodo.// +
-  * **Grupos**: Se gestiona únicamente desde la Metaconsola. Se desactiva la gestión en nodo. +
-  * **Políticas**: Se gestiona únicamente desde la Metaconsola. //Se desactiva la gestión en nodo.//  En el nodo se permitirá aplicar las políticas previamente gestionadas por la meta. +
-  * **Agentes**: Permitimos la gestión de agentes en nodo, excepto su eliminación que debe hacerse desde la Metaconsola. +
-  * **Colecciones**: Se gestiona únicamente desde la Metaconsola. Se desactiva la gestión en nodo. +
-  * //**Tags**//  : Se gestiona únicamente desde la Metaconsola. //Se desactiva la gestión en nodo.// +
-  * **Alertas **  (//templates//, acciones y comandos): Se gestiona únicamente desde la Metaconsola. Se desactiva la gestión en nodo. +
-  * **OS**: Se gestiona únicamente desde la Metaconsola. Se desactiva la gestión en nodo. +
-  * **//Plugins//  de servidor**: Se gestiona únicamente desde la Metaconsola. Se desactiva la gestión en nodo. +
-  * **Componentes locales y remotos**: Se gestiona únicamente desde la Metaconsola. Se desactiva la gestión en nodo. +
-  * **Grupos y categorías de módulos**: Se gestiona únicamente desde la Metaconsola. //Se desactiva la gestión en nodo.// +
-  * **Módulos de inventario**: Se gestiona únicamente desde la Metaconsola. Se desactiva la gestión en nodo. +
-  * **Reglas de autoconfiguración**: Se gestiona únicamente desde la Metaconsola. //Se desactiva la gestión en nodo.// +
-Las secciones indicadas con gestión centralizada sólo pueden configurarse desde la Metaconsola. En caso de acceder a estos elementos desde los nodos, solo podremos listar los elementos, desapareciendo las opciones de edición y creación, y veremos un aviso que nos indicará que estamos en modo centralizado con un enlace que llevará al administrador a la sección de la Metaconsola correspondiente para la configuración de estos elementos. +
- +
-{{  :wiki:pfms-metaconsole-command_center_13.png  }}+
  
 [[:es:documentation:start|Volver al Índice de Documentación Pandora FMS]] [[:es:documentation:start|Volver al Índice de Documentación Pandora FMS]]