DBAtlas · Atlas de operaciones de bases de datos

Instalación de un cluster de Elasticsearch (3+ nodos, TLS, Kibana)

ElasticsearchNivel: IntermedioDuración: 60–90 min

Crea desde cero un cluster de Elasticsearch 8.x / 9.x de 3 o más nodos: repositorio de Elastic, heap según la RAM, bloqueo de memoria, vm.max_map_count, seguridad automática en el primer nodo (TLS + contraseña de elastic), incorporación de los demás nodos con un enrollment token, roles master/data combinados o separados, instalación y enrollment de Kibana, un repositorio de snapshots compartido y una política SLM nocturna. El resultado es un cluster en estado green, protegido con TLS y contraseña, con Kibana y un snapshot cada noche. La operación diaria del cluster instalado (shards, disco, añadir/retirar nodos), el endurecimiento de la seguridad, snapshot/restore y la actualización de versión se tratan en guías de Elasticsearch independientes.

Topología: 3+ nodos de Elasticsearch (+ servidor de Kibana opcional)

Antes de empezar

  • Todos los servidores tienen la misma versión de sistema operativo, soportada y actualizada. Relojes sincronizados (chrony): con desfase horario, los certificados TLS y los tokens pueden considerarse no válidos.
  • Cada nodo tiene … GB de RAM (el heap será de … MB) y al menos 2 CPU. Elasticsearch incluye su propio JDK; no instale Java por separado.
  • … tiene espacio libre suficiente (con el disco al 85 % no se asignan shards nuevos al nodo data; al 90 % los shards empiezan a moverse a otros nodos). Se recomienda SSD.
  • Hostnames e IP fijos: ……=……, ………, …=……. Abiertos: 9300 (transport) entre los nodos, 9200 (HTTPS) desde los clientes a los nodos…, 5601 desde los usuarios a Kibana….
  • Los servidores pueden salir por HTTPS a artifacts.elastic.co (o hay un mirror interno configurado). Una vez añadido el repositorio, el comando siguiente lista las versiones instalables.
  • En los servidores no hay una instalación antigua de Elasticsearch ni un directorio de datos (los datos de un cluster antiguo impiden que el nodo se una al cluster nuevo).
  • … está montado desde el mismo recurso NFS en todos los nodos master y data (persistente en fstab). El usuario elasticsearch debe tener permiso de escritura en el recurso: si su UID no es el mismo en todos los nodos, use all_squash,anonuid=… en el lado NFS o iguale los UID.
  • Acceso root/sudo, ventana de mantenimiento y snapshot de los servidores preparados. Los enrollment tokens son válidos durante 30 minutos; ejecute sin pausas los pasos que incorporan los demás nodos.

Fases de la guía

  • Preparación del sistema operativo — Configurar el hostname · Configurar el hostname (Kibana) · Configurar la resolución de nombres (/etc/hosts) · Instalar herramientas básicas y sincronizar el reloj · Escribir los parámetros del kernel (vm.max_map_count) · Aplicar los parámetros sysctl …
  • Repositorio de Elastic e instalación del software — Importar la clave GPG de Elastic · Definir el repositorio de Elastic · Definir el repositorio de Elastic · Listar las versiones instalables · Instalar Elasticsearch · Bloquear la versión
  • Heap, bloqueo de memoria y directorios — Configurar el tamaño del heap · Configurar la propiedad del archivo (heap.options) · Permitir el bloqueo de memoria en systemd · Recargar systemd · Preparar el directorio de datos · Configurar los permisos del directorio de snapshots
  • Primer nodo: arrancar el cluster — Escribir elasticsearch.yml (nodo 1) · Configurar la propiedad del archivo (elasticsearch.yml) · Iniciar el servicio (nodo 1) · Definir la contraseña del usuario elastic · Crear un archivo temporal de credenciales para el acceso a la API · Comprobar el estado del cluster (un solo nodo) …
  • Completar la formación del cluster — Verificar que todos los nodos se han unido · Eliminar la línea cluster.initial_master_nodes · Convertir el nodo 1 en master dedicado: vaciar sus shards · Poner el rol del nodo 1 en master y limpiar su directorio de datos · Eliminar la regla de allocation temporal
  • Verificación — Comprobar la salud del cluster · Comprobar el bloqueo de memoria y el heap · Comprobar la elección del master y la configuración de votación · Comprobar la distribución de shards con un índice de prueba · Revisar el archivo de log
  • Instalación y enrollment de Kibana — Instalar Kibana · Configurar la dirección de escucha · Crear un enrollment token de Kibana · Conectar Kibana al cluster (kibana-setup) · Conectar Kibana a varios nodos · Generar las claves de cifrado …
  • Repositorio de snapshots — Registrar y verificar el repositorio · Definir la política de snapshots nocturna (SLM)
  • Después de la instalación — Crear el usuario y el rol de la aplicación · Preparar el certificado de la CA para los clientes · Aplicar la lista de control de monitorización y copias de seguridad · Borrar el archivo temporal de credenciales
Abrir el plan paso a paso para su entorno →