Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa Próxima revisión Ambos lados, revisión siguiente | ||
es:documentation:03_monitoring:09_log_monitoring [2022/05/25 21:58] jimmy.olano [Restaurar una instantánea de la base de datos] Boleto GitLab # 8129. Reforma. |
es:documentation:03_monitoring:09_log_monitoring [2022/05/27 21:03] jimmy.olano Boleto GitLab # 9065 . |
||
---|---|---|---|
Línea 16: | Línea 16: | ||
- Obtener las líneas y el contexto de los mensajes de //log//. | - Obtener las líneas y el contexto de los mensajes de //log//. | ||
- **Basada en visualización combinada**: | - **Basada en visualización combinada**: | ||
- | A partir de la versión 7.0 NG 712, Pandora FMS incorpora [[wpes>es.wikipedia.org/ | + | A partir de la versión 7.0 NG 712, Pandora FMS incorpora [[wpes> |
===== Cómo funciona ===== | ===== Cómo funciona ===== | ||
Línea 46: | Línea 47: | ||
Con un entorno de un solo nodo con estas características se pueden almacenar hasta 1 GB de datos diarios y almacenarlos el tiempo por defecto que son 8 días. | Con un entorno de un solo nodo con estas características se pueden almacenar hasta 1 GB de datos diarios y almacenarlos el tiempo por defecto que son 8 días. | ||
- | En el caso de requerir una mayor resiliencia de datos, y tolerancia a fallos, será necesario la configuración de un clúster de Elasticsearch (mínimo 3 nodos para garantizar integridad de datos). Al pasar a un entorno de // | + | En el caso de requerir una mayor resiliencia de datos, y tolerancia a fallos, será necesario la configuración de un clúster de Elasticsearch (mínimo 3 nodos para garantizar integridad de datos). Al pasar a un entorno de clúster también |
Línea 60: | Línea 61: | ||
Para Rocky Linux 8 se recomienda la instalación por medio de paquete RPM, es un único paquete que contiene todo lo necesario para la instalación de la base de datos de Elasticsearch. | Para Rocky Linux 8 se recomienda la instalación por medio de paquete RPM, es un único paquete que contiene todo lo necesario para la instalación de la base de datos de Elasticsearch. | ||
- | Para su descarga vaya a [[https:// | + | Para su descarga vaya a [[https:// |
+ | '' | ||
Una vez haya descargado el paquete debe subirlo al servidor donde instalará Eleasticsearch, | Una vez haya descargado el paquete debe subirlo al servidor donde instalará Eleasticsearch, | ||
Línea 87: | Línea 89: | ||
- | ==== Configuración ==== | + | ==== Configuración |
<WRAP center round important 60%>\\ | <WRAP center round important 60%>\\ | ||
Línea 144: | Línea 146: | ||
**cluster.name** | **cluster.name** | ||
- | Será el nombre que recibirá el grupo o //cluster//. | + | Será el nombre que recibirá el grupo o clúster. |
**node.name** | **node.name** | ||
Línea 154: | Línea 156: | ||
Para '' | Para '' | ||
- | En caso de trabajar con un // | + | En caso de trabajar con un clúster necesita |
- | < | + | |
+ | < | ||
discover.seed_hosts : [" | discover.seed_hosts : [" | ||
Línea 227: | Línea 229: | ||
</ | </ | ||
- | Se recomienda visitar el enlace a las mejores | + | Se recomienda visitar el enlace a las //Best practices (M// |
- | [[https:// | + | * [[https:// |
+ | |||
+ | |||
+ | === Configuración de un clúster Elasticsearch === | ||
+ | * El tamaño mínimo de un clúster de servidores Elasticsearch es de 3 nodos y siempre debe ir creciendo en números impares para poder hacer uso del sistema de // | ||
+ | * Asegúrese de que tiene conectividad entre los 3 nodos y que los puertos 9200 y 9300 son accesibles entre todos y cada uno de los nodos. | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | |||
+ | Detenga el servicio Elasticsearch en todos y cada uno de los nodos: | ||
+ | < | ||
+ | |||
+ | systemctl stop elasticsearch.service | ||
+ | |||
+ | </ | ||
+ | |||
+ | Modifique en el fichero de configuración ''/ | ||
+ | |||
+ | < | ||
+ | # | ||
+ | # | ||
+ | |||
+ | </ | ||
+ | |||
+ | // | ||
+ | < | ||
+ | |||
+ | discovery.seed_hosts: | ||
+ | cluster.initial_master_nodes: | ||
+ | |||
+ | </ | ||
+ | |||
+ | Ejemplo con direcciones IP: | ||
+ | |||
+ | < | ||
+ | discovery.seed_hosts: | ||
+ | cluster.initial_master_nodes: | ||
+ | |||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> \\ Asegúrese que la línea '' | ||
+ | |||
+ | Antes de iniciar el servicio, debido a que los nodos se iniciaron por primera vez por sí solos (// | ||
+ | |||
+ | < | ||
+ | rm -rf / | ||
+ | |||
+ | </ | ||
+ | |||
+ | Ahora es momento de iniciar los servicios en todos y cada uno de los nodos. Inicie y compruebe que se están ejecutando con los comandos: | ||
+ | |||
+ | < | ||
+ | systemctl start elasticsearch.service && systemctl status elasticsearch.service | ||
+ | |||
+ | </ | ||
+ | |||
+ | Debe obtener una salida similar a: | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Una vez iniciados los servicios debe confirmar que los 3 nodos están unidos al clúster correctamente, | ||
+ | |||
+ | < | ||
+ | curl -XGET http:// | ||
+ | |||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Vuelva a revisar la configuración del // | ||
===== Modelos de datos y plantillas ===== | ===== Modelos de datos y plantillas ===== | ||
- | Antes de poner en producción un entorno, bien sea de un solo nodo o un //cluster// de datos, se recomienda aplicar las configuraciones correspondientes a este nodo o clúster en función a su utilización. En el caso de los índices generados por **Pandora FMS** la forma más efectiva de hacerlos es definiendo una plantilla (// | + | Antes de poner en producción un entorno, bien sea de un solo nodo o un clúster de |
<WRAP center round important 60%> Las plantillas o // | <WRAP center round important 60%> Las plantillas o // | ||
Línea 322: | Línea 393: | ||
</ | </ | ||
- | A través de la interfaz de Elasticsearch en Pandora FMS (**Admin tools** | + | A través de la interfaz de Elasticsearch en Pandora FMS (**Admin tools** |
* **PUT _template/< | * **PUT _template/< | ||
{{ : | {{ : | ||
- | También podrá consultar los // | + | También podrá consultar los // |
* **GET _template/< | * **GET _template/< | ||
+ | ==== Templates multinodo ==== | ||
+ | |||
+ | Para definir un **// | ||
+ | |||
+ | * Cuando realice la configuración del // | ||
+ | |||
+ | Por ejemplo, en un entorno de Pandora FMS con Elasticsearch con 3 nodos configurados, | ||
+ | |||
+ | < | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | |||
+ | </ | ||
+ | |||
+ | <WRAP center round info 75%> \\ Esto es una definición muy básica, para poder definir correctamente el dimensionamiento del entorno de Elasticsearch es recomendable tener en cuenta los factores descritos en este artículo:</ | ||
+ | |||
+ | * [[https:// | ||
+ | |||
+ | Desde la línea de comando puede listar los templates del entorno ejecutando: | ||
+ | < | ||
+ | |||
+ | curl -X GET " | ||
+ | |||
+ | </ | ||
+ | |||
+ | También puede ver los detalles de un, template, por ejemplo el que hemos creado para pandorafms ejecutando: | ||
+ | |||
+ | < | ||
+ | curl -X GET " | ||
+ | |||
+ | </ | ||
+ | |||
+ | el cual devolverá en formato JSON la configuración que tenga definida. | ||
+ | |||
+ | Puede realizar estas operaciones a través de la interfaz de Elasticsearch en Pandora FMS utilizando los comandos nativos de Elasticsearch. | ||
+ | |||
+ | * **PUT _template/< | ||
+ | * **GET _template/>< | ||
+ | {{ : | ||
+ | |||
{{ : | {{ : | ||
Línea 379: | Línea 495: | ||
<WRAP center round tip 60%> {{: | <WRAP center round tip 60%> {{: | ||
- | Este componente permite a Pandora FMS analizar el [[wpes>es.wikipedia.org/ | + | Este componente permite a Pandora FMS analizar el [[wpes> |
- | La ventaja principal del Syslog Server consiste en complementar la unificación de //logs//. Con apoyo de las características de exportado de Syslog Server de los entornos Linux® y Unix®, Syslog Server permite la consulta de // | + | La ventaja principal del Syslog Server consiste en complementar la unificación de //logs//. Con apoyo de las características de exportado de Syslog Server de los entornos Linux® y Unix®, Syslog Server permite la consulta de //logs// independientemente del origen, buscando en un único punto común (visor de //logs// de la consola de Pandora FMS). |
La instalación de Syslog Server se debe realizar tanto en cliente como en servidor, y para ejecutarla es necesario lanzar el siguiente comando: | La instalación de Syslog Server se debe realizar tanto en cliente como en servidor, y para ejecutarla es necesario lanzar el siguiente comando: | ||
Línea 390: | Línea 506: | ||
</ | </ | ||
- | Una vez instalado **syslog** | + | Una vez instalado **syslog** en los equipos a trabajar, hay que acceder al fichero de configuración ''/ |
< | < | ||
(...) | (...) | ||
Línea 407: | Línea 522: | ||
</ | </ | ||
- | Tras realizar este ajuste será necesario detener y volver a arrancar el servicio **rsyslog**. Una vez el servicio esté disponible, comprobar que el puerto '' | + | Tras realizar este ajuste será necesario detener y volver a arrancar el servicio **rsyslog**. Una vez el servicio esté disponible, comprobar que el puerto '' |
< | < | ||
netstat -ltnp | netstat -ltnp | ||
Línea 416: | Línea 530: | ||
Para más información de la configuración de rsyslog, [[https:// | Para más información de la configuración de rsyslog, [[https:// | ||
- | **En el cliente** | + | **En el cliente** configurar para que pueda enviar los //logs// al Syslog Server. Para ello acceda una vez más al fichero de configuración de **rsyslog** ''/ |
< | < | ||
Línea 423: | Línea 537: | ||
</ | </ | ||
- | <WRAP center round tip 60%> El envío de // | + | <WRAP center round tip 60%> El envío de //logs// genera un agente contenedor con el nombre del cliente por lo que se recomienda crear los agentes con “**alias as name**” haciendo que coincida con el // |
- | + | ||
- | Para activar esta funcionalidad en Pandora FMS Server, habilite en el archivo '' | + | |
+ | Para activar esta funcionalidad en Pandora FMS Server, habilite en el archivo '' | ||
< | < | ||
# Enable (1) or disable (0) the Pandora FMS Syslog Server | # Enable (1) or disable (0) the Pandora FMS Syslog Server | ||
Línea 463: | Línea 576: | ||
<WRAP center round important 60%> Necesitará un servidor Elasticsearch habilitado y configurado; | <WRAP center round important 60%> Necesitará un servidor Elasticsearch habilitado y configurado; | ||
- | <WRAP center round tip 60%> Recuerde que es necesario que modifique la configuración de su dispositivo para que los // | + | <WRAP center round tip 60%> Recuerde que es necesario que modifique la configuración de su dispositivo para que los //logs// se envíen al servidor de Pandora FMS. </ |
===== Migración al sistema Elasticsearch ===== | ===== Migración al sistema Elasticsearch ===== | ||
- | <WRAP center round info 60%> \\ Versión 712 o anteriores. Luego deberá actualizar a la versión vigente, consulte " | + | <WRAP center round info 60%>\\ |
+ | Versión 712 o anteriores. Luego deberá actualizar a la versión vigente, consulte " | ||
</ | </ | ||
Una vez configurado el nuevo sistema de almacenamiento de //logs//, puede migrar todos los datos almacenados previamente en Pandora FMS, en forma distribuida en directorios al nuevo sistema. | Una vez configurado el nuevo sistema de almacenamiento de //logs//, puede migrar todos los datos almacenados previamente en Pandora FMS, en forma distribuida en directorios al nuevo sistema. | ||
- | Para ello deberá ejecutar el siguiente // | + | Para ello deberá ejecutar el siguiente //script// que se encuentra en\\ |
+ | ''/ | ||
< | < | ||
Línea 479: | Línea 595: | ||
</ | </ | ||
+ | |||
===== Configuración de la consola ===== | ===== Configuración de la consola ===== | ||
Línea 671: | Línea 788: | ||
==== Restaurar una instantánea de la base de datos ==== | ==== Restaurar una instantánea de la base de datos ==== | ||
- | <WRAP center round important | + | <WRAP center round important |
- | Para restaurar un índice de un snapshot este debe estar cerrado, aparte de otras consideraciones técnicas. Por favor consulte todo lo relacionado al respecto en este enlace: | + | Para restaurar un índice de un //snapshot// este debe estar cerrado, |
- | | + | * [[https:// |
- | </ | + | </ |
Para restaurar un índice se debe hacer de alguna de estas dos maneras: | Para restaurar un índice se debe hacer de alguna de estas dos maneras: | ||
Línea 683: | Línea 800: | ||
- Renombrar el índice restaurado. | - Renombrar el índice restaurado. | ||
- | A continuación se presentan ambos casos. | + | A continuación se presentan ambos casos utilizando como ejemplo '' |
- | * **Borrar, restaurar | + | * **Borrar y restaurar**: |
La forma más sencilla de evitar conflictos es borrar un índice o flujo de datos existente //antes de restaurarlo// | La forma más sencilla de evitar conflictos es borrar un índice o flujo de datos existente //antes de restaurarlo// | ||
Línea 691: | Línea 808: | ||
Para borrar un índice: | Para borrar un índice: | ||
- | |||
< | < | ||
+ | |||
curl -X DELETE " | curl -X DELETE " | ||
Línea 707: | Línea 824: | ||
</ | </ | ||
+ | * **Renombrar al restaurar**< | ||
+ | De esta manera repetirá la información que ya tenga almacenada y en algunos escenarios puede ser útil este proceso, por ejemplo: | ||
+ | |||
+ | * Necesita confirmar que se haya realizado una recuperación correcta de datos. Cada uno de los índices y su copia renombrada deberá contener la misma información y arrojar los mismos resultados en sendas búsquedas. | ||
+ | * Validar auditorías de datos realizadas por terceros. | ||
+ | |||
+ | < | ||
+ | curl -X POST " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ' | ||
+ | |||
+ | </ | ||
+ | === Restaurar por completo un nodo === | ||
+ | |||
+ | En el caso de querer restaurar un nodo entero con todos sus índices se recomienda parar los servicios de indexación antes de la ejecución de la restauración, | ||
- | En el caso de querer restaurar un nodo entero con todos sus índices se recomienda parar los servicios de indexación antes de la ejecución de la restauración, | + | * [[https:// |