Ambos lados, revisión anterior
Revisión previa
Próxima revisión
|
Revisión previa
|
es:documentation:03_monitoring:09_log_monitoring [2022/05/26 12:35] jimmy.olano [Modelos de datos y plantillas] Boleto GitLab # 8129 . |
es:documentation:03_monitoring:09_log_monitoring [2022/05/27 21:03] (actual) jimmy.olano Boleto GitLab # 9065 . |
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 //cluster// también es posible distribuir la carga entre los nodos, duplicando (en el caso de 3 nodos) la capacidad de procesamiento del entorno. **Será necesario un sistema de balanceo de carga** si se quiere atacar con los diferentes nodos //de forma simultánea//. | 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 es posible distribuir la carga entre los nodos, duplicando (en el caso de 3 nodos) la capacidad de procesamiento del entorno. **Será necesario un sistema de balanceo de carga** si se quiere atacar con los diferentes nodos //de forma simultánea//. |
| |
| |
| |
| |
==== Configuración ==== | ==== Configuración de nodo ==== |
| |
<WRAP center round important 60%>\\ | <WRAP center round important 60%>\\ |
**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** |
Para ''network.host'' el valor ''0.0.0.0'' permite que Elasticsearch "escuche" en todas las interfaces de red (NIC), //coloque un valor específico para utilizar una //NIC //específica.// | Para ''network.host'' el valor ''0.0.0.0'' permite que Elasticsearch "escuche" en todas las interfaces de red (NIC), //coloque un valor específico para utilizar una //NIC //específica.// |
| |
En caso de trabajar con un //cluster// necesita completar el parámetro ''discovery.seed_hosts'' . | En caso de trabajar con un clúster necesita completar el parámetro ''discovery.seed_hosts'' . |
| |
<code> | <code> |
* [[https://www.elastic.co/guide/en/elasticsearch/reference/current/system-config.html#dev-vs-prod|https://www.elastic.co/guide/en/elasticsearch/reference/current/system-config.html#dev-vs-prod]] | * [[https://www.elastic.co/guide/en/elasticsearch/reference/current/system-config.html#dev-vs-prod|https://www.elastic.co/guide/en/elasticsearch/reference/current/system-config.html#dev-vs-prod]] |
| |
**Configuración de un cluster Elasticsearch** | |
| |
* El tamaño mínimo de un //cluster// de servidores Elasticsearch es de 3 nodos y siempre debe ir creciendo en números impares para poder hacer uso del sistema de //quorum// y garantizar la integridad de los datos. | === 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 //quorum// y garantizar la integridad de los datos. |
* 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. | * 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 important 60%> \\ Asegúrese que la línea ''cluster.initial_master_nodes'' esté definida solo una vez en el fichero de configuración, **en algunos casos la misma línea aparece en dos bloques diferentes del mismo fichero.** \\ </WRAP> | <WRAP center round important 60%> \\ Asegúrese que la línea ''cluster.initial_master_nodes'' esté definida solo una vez en el fichero de configuración, **en algunos casos la misma línea aparece en dos bloques diferentes del mismo fichero.** \\ </WRAP> |
| |
Antes de iniciar el servicio, debido a que los nodos se iniciaron por primera vez por sí solos (//standalone//), debe borrarse el contenido de la carpeta data (por defecto ''/var/lib/elasticsearch/'') para poder iniciar por primera vez el //cluster.// Hágalo con el comando: | Antes de iniciar el servicio, debido a que los nodos se iniciaron por primera vez por sí solos (//standalone//), debe borrarse el contenido de la carpeta data (por defecto ''/var/lib/elasticsearch/'') para poder iniciar por primera vez el clúster. Hágalo con el comando: |
| |
<code> | <code> |
{{ :wiki:pfms-systemctl_status_elasticsearch.service.png }} | {{ :wiki:pfms-systemctl_status_elasticsearch.service.png }} |
| |
Una vez iniciados los servicios debe confirmar que los 3 nodos están unidos al //cluster// correctamente, por lo que al ejecutar en cualquiera de los nodos el siguiente comando debe dar la misma respuesta: | Una vez iniciados los servicios debe confirmar que los 3 nodos están unidos al clúster correctamente, por lo que al ejecutar en cualquiera de los nodos el siguiente comando debe dar la misma respuesta: |
| |
<code> | <code> |
{{ :wiki:pfms-elasticsearch-curl-x-get-_cat-nodes.png }} | {{ :wiki:pfms-elasticsearch-curl-x-get-_cat-nodes.png }} |
| |
Vuelva a revisar la configuración del //firewall// siempre tomando en cuanta que los nodos deben comunicarse por los puertos ''9200'' y ''9300'' y que desde el servidor PFMS y la Consola web PFMS debe poder accederse al puerto ''9200'' también. Con estos pasos ya tendrá instalado y configurado el //cluster// de Elasticsearch para ser usado como motor de almacenamiento de //logs// de Pandora FMS. | Vuelva a revisar la configuración del //firewall// siempre tomando en cuanta que los nodos deben comunicarse por los puertos ''9200'' y ''9300'' y que desde el servidor PFMS y la Consola web PFMS debe poder accederse al puerto ''9200'' también. Con estos pasos ya tendrá instalado y configurado el clúster de Elasticsearch para ser usado como motor de almacenamiento de //logs// de Pandora FMS. |
| |
| |
===== 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 (//template//) para definir la configuración de los campos y los datos almacenados. | Antes de poner en producción un entorno, bien sea de un solo nodo o un clúster 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 (//template//) para definir la configuración de los campos y los datos almacenados. |
| |
<WRAP center round important 60%> Las plantillas o //templates// son configuraciones que solo se aplican en el momento de la creación del índice. Cambiar un //template// no tendrá ningún impacto en los índices ya existentes. </WRAP> | <WRAP center round important 60%> Las plantillas o //templates// son configuraciones que solo se aplican en el momento de la creación del índice. Cambiar un //template// no tendrá ningún impacto en los índices ya existentes. </WRAP> |