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
es:documentation:06_metaconsole:04_command [2021/08/18 10:35]
laura.cano [Inclusión de nodos nuevos a la Metaconsola]
es:documentation:06_metaconsole:04_command [2022/04/13 02:25] (actual)
jimmy.olano
Línea 1: Línea 1:
-{{indexmenu_n>11}}+{{indexmenu_n>4}}
  
 ====== Command Center ====== ====== Command Center ======
  
 [[:es:documentation:start|Volver al Índice de Documentación Pandora FMS]] [[:es:documentation:start|Volver al Índice de Documentación Pandora FMS]]
- 
  
 ===== Command Center ===== ===== Command Center =====
Línea 45: Línea 44:
  
 Esto permite que el resultado tenga el máximo posible de configuraciones distintas para que ya podamos gestionarlas desde la Metaconsola. Esto permite que el resultado tenga el máximo posible de configuraciones distintas para que ya podamos gestionarlas desde la Metaconsola.
- 
  
 ==== Elementos centralizados por el Command Center ==== ==== Elementos centralizados por el Command Center ====
Línea 84: Línea 82:
  
 {{  :wiki:07_policies_centralised.png  }} {{  :wiki:07_policies_centralised.png  }}
- 
  
 ==== Requisitos previos a lanzar la unificación de bases de datos del Command Center ==== ==== Requisitos previos a lanzar la unificación de bases de datos del Command Center ====
Línea 101: Línea 98:
  
   * Los **servidores**  de todos los nodos deben tener su **configuración del API**  correcta en "**pandora_server.conf**" o su configuración de **URL pública**  en el "**Setup**" de la consola. Si no se tiene configurado, los servidores deberán alojarse en las mismas máquinas en las que se encuentren sus consolas.   * Los **servidores**  de todos los nodos deben tener su **configuración del API**  correcta en "**pandora_server.conf**" o su configuración de **URL pública**  en el "**Setup**" de la consola. Si no se tiene configurado, los servidores deberán alojarse en las mismas máquinas en las que se encuentren sus consolas.
- 
 <code> <code>
 +
 console_api_url http://localhost/pandora_console/include/api.php console_api_url http://localhost/pandora_console/include/api.php
 console_api_pass pandora console_api_pass pandora
Línea 134: Línea 131:
  
 <WRAP center round info 60%> \\ Si no se cumplen todos esos requisitos, no se realizará la mezcla de nodos y se arrojará un error. Si se consultan los errores del resultado, dará un mensaje de los requisitos aún pendientes. \\ </WRAP> \\ <WRAP center round important 60%> \\ Es importante una vez realizada la unificación de bases de datos, que se vuelva a poner el valor correspondiente el parámetro ''memory_limit''  del fichero de configuración ''php.ini''. Recordar que para que el cambio tenga efecto se debe reiniciar el servicio de apache ''httpd''. \\ </WRAP> <WRAP center round info 60%> \\ Si no se cumplen todos esos requisitos, no se realizará la mezcla de nodos y se arrojará un error. Si se consultan los errores del resultado, dará un mensaje de los requisitos aún pendientes. \\ </WRAP> \\ <WRAP center round important 60%> \\ Es importante una vez realizada la unificación de bases de datos, que se vuelva a poner el valor correspondiente el parámetro ''memory_limit''  del 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 ==== ==== Recomendaciones previas al lanzamiento del Command Center ====
Línea 143: Línea 139:
   * **Detener el proceso de **''pandora_db'' ** del cron temporalmente mientras dure el proceso**, por los mismos motivos que el servidor.   * **Detener el proceso de **''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 para los usuarios estándar (no para los administradores). 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:16_console_inaccesible.png  }} <WRAP center round important 60%> \\ Cuando se inicia el proceso de mezcla tanto los nodos como la Metaconsola entran en un modo de mantenimiento para los usuarios estándar (no para los administradores). 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:16_console_inaccesible.png  }}
- 
  
 ==== Ejecución del proceso de mezcla ==== ==== Ejecución del proceso de mezcla ====
  
-El proceso de mezcla tiene **2 fases** diferenciadas, una primera fase para **sincronizar los distintos elementos** gestionables desde la Metaconsola y una segunda fase para **actualizar las referencias que haya en los eventos a esos elementos** centralizados. Este proceso se hace de esta forma para permitir que la consola sea accesible de nuevo lo antes posible, dado que la actualización de los eventos es la parte del proceso que más tiempo puede tomar al tratarse por lo general del mayor volumen de información. Ambas fases se encuentran a su vez divididas en otras 2 subfases diferenciadas en 2 barras de progreso. +El proceso de mezcla tiene **2 fases**  diferenciadas, una primera fase para **sincronizar los distintos elementos**  gestionables desde la Metaconsola y una segunda fase para **actualizar las referencias que haya en los eventos a esos elementos**  centralizados. Este proceso se hace de esta forma para permitir que la consola sea accesible de nuevo lo antes posible, dado que la actualización de los eventos es la parte del proceso que más tiempo puede tomar al tratarse por lo general del mayor volumen de información. Ambas fases se encuentran a su vez divididas en otras 2 subfases diferenciadas en 2 barras de progreso.
  
 === Fase 1: Sincronización del entorno === === Fase 1: Sincronización del entorno ===
  
-En esta fase **se sincronizan los elementos** encontrados en las bases de datos de todos los nodos que sean gestionables desde la Metaconsola. Se trata del proceso de mezcla como tal y se subdivide en otras 2 fases, cada una con su barra de progreso:+En esta fase **se sincronizan los elementos**  encontrados en las bases de datos de todos los nodos que sean gestionables desde la Metaconsola. Se trata del proceso de mezcla como tal y se subdivide en otras 2 fases, cada una con su barra de progreso:
  
-   * **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 dentro de su directorio "attachment" en ''attachment/merge_backups''.+  * **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 dentro de su directorio "attachment" en ''attachment/merge_backups''.
   * **Apply**: Si la fase de inicialización anterior ha tenido éxito, se empezará a aplicar la mezcla 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.   * **Apply**: Si la fase de inicialización anterior ha tenido éxito, se empezará a aplicar la mezcla 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.
 {{  :wiki:18_merge_success.png  }} {{  :wiki:18_merge_success.png  }}
Línea 163: Línea 157:
  
 <WRAP center round important 60%> \\ En ocasiones se pueden producir errores inesperados, por ejemplo la perdida de conexión momentanea entre la Metaconsola y la base de datos de un nodo o la imposibilidad de crear un //backup//  por no tener espacio suficiente en el disco, por lo que es posible que el mensaje de error mostrado sea genérico. Si es el caso y lo necesita, póngase en contacto con el equipo de soporte de Pandora FMS para recibir asistencia. \\ </WRAP> <WRAP center round important 60%> \\ En ocasiones se pueden producir errores inesperados, por ejemplo la perdida de conexión momentanea entre la Metaconsola y la base de datos de un nodo o la imposibilidad de crear un //backup//  por no tener espacio suficiente en el disco, por lo que es posible que el mensaje de error mostrado sea genérico. Si es el caso y lo necesita, póngase en contacto con el equipo de soporte de Pandora FMS para recibir asistencia. \\ </WRAP>
- 
  
 === Fase 2: Actualización de eventos === === Fase 2: Actualización de eventos ===
  
-En esta fase **se actualizarán las referencias existentes en los eventos a los distintos elementos que se hayan sincronizado** (por ejemplo a grupos). La fase se subdivide en la actualización de los eventos de la base de datos principal y la actualización de los eventos de la base de datos de histórico, y solo afectará a los eventos que existiesen antes de lanzar el proceso de mezcla. Los nuevos eventos que se generen habiendo ya centralizado el entorno tendrán todas las referencias correctamente y no será necesario actualizarlos.+En esta fase **se actualizarán las referencias existentes en los eventos a los distintos elementos que se hayan sincronizado**  (por ejemplo a grupos). La fase se subdivide en la actualización de los eventos de la base de datos principal y la actualización de los eventos de la base de datos de histórico, y solo afectará a los eventos que existiesen antes de lanzar el proceso de mezcla. Los nuevos eventos que se generen habiendo ya centralizado el entorno tendrán todas las referencias correctamente y no será necesario actualizarlos.
  
-   * **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 progreso 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.+  * **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 progreso 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.
   * **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.   * **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:20_events_success.png  }} {{  :wiki:20_events_success.png  }}
- 
  
 ==== Entorno ya centralizado mediante Command Center ==== ==== Entorno ya centralizado mediante Command Center ====
  
-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 ''pandora_ha'' de cada nodo el que se encarga de sincronizar su base de datos con la de la Metaconsola.+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 ''pandora_ha''  de cada nodo el que se encarga de sincronizar su base de datos con la de la Metaconsola.
  
-Esto funciona de la siguiente forma. 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 de la base de datos de la Metaconsola y va ejecutando 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.+Esto funciona de la siguiente forma. 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 de la base de datos de la Metaconsola y va ejecutando 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. 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.
Línea 185: Línea 177:
  
 {{  :wiki:22_sync_queue.png  }} {{  :wiki:22_sync_queue.png  }}
- 
  
 === Inclusión de nodos nuevos a la Metaconsola === === Inclusión de nodos nuevos a la Metaconsola ===
  
-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**.+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 avisando al administrador de que haga esta tarea. Mientras no se haga el nodo permanecerá **bloqueado e inaccesible**, en estado "Pending to merge". No se le asignarán los cambios realizados ni se tendrá acceso a la consola hasta que no pase el proceso de merge. Se mostrará un mensaje avisando al administrador de que haga esta tarea. Mientras no se haga el nodo permanecerá **bloqueado e inaccesible**, en estado "Pending to merge". No se le asignarán los cambios realizados ni se tendrá acceso a la consola hasta que no pase el proceso de merge.
Línea 195: Línea 186:
 {{  :wiki:23_new_node.png  }} {{  :wiki:23_new_node.png  }}
  
-<WRAP center round tip 60%>\\ +<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>
-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>+
  
 [[:es:documentation:start|Volver al Índice de Documentación Pandora FMS]] [[:es:documentation:start|Volver al Índice de Documentación Pandora FMS]]
  
  
ºº