12.2 Instalación y configuración de Elasticsearch

Debe instalar Elasticsearch en el modo de clúster para efectuar la indexación ampliable y distribuida de eventos. El clúster Elasticsearch que instale para Sentinel debe utilizarse para indexar solo datos de Sentinel.

12.2.1 Requisitos previos

Cumpla con los siguientes requisitos previos antes de instalar Elasticsearch:

  • Defina la memoria virtual añadiendo la siguiente propiedad en el archivo /etc/sysctl.conf:

    VM.max_map_count=262144

  • Defina los descriptores de archivo añadiendo las siguientes propiedades en el archivo /etc/security/limits.conf:

    elasticsearch hard nofile 65536

    elasticsearch soft nofile 65536

    elasticsearch soft as unlimited

IMPORTANTE:Una vez completados los requisitos previos anteriores, ejecute el comando sysctl -p para volver a cargar los cambios realizados en los archivos.

12.2.2 Instalación y configuración de Elasticsearch

Debe instalar Elasticsearch y los módulos auxiliares requeridos en cada nodo del clúster de dicho motor.

Para instalar y configurar Elasticsearch:

  1. Instale la versión de JDK compatible con Elasticsearch.

  2. Descargue la versión certificada de RPM de Elasticsearch. Para obtener información sobre la versión certificada de Elasticsearch y la URL de descarga, consulte la página de Información técnica de Sentinel.

  3. Instale Elasticsearch:

    rpm -i elasticsearch-<version>.rpm

  4. Realice las tareas mencionadas en pantalla en las instrucciones posteriores a la instalación de RPM.

  5. Asegúrese de que el usuario de Elasticsearch tiene acceso a Java ejecutando el siguiente comando:

    sudo -u elasticsearch java -version

  6. Configure el archivo /etc/elasticsearch/elasticsearch.yml mediante la actualización o adición de la siguiente información:

    Propiedad y valor

    Notas

    cluster.name: <Elasticsearch _cluster_name>

    El nombre del clúster que especifique debe ser el mismo para todos los nodos.

    node.name: <node_name>

    El nombre del nodo debe ser exclusivo para cada nodo.

    network.host: _<networkInterface>:ipv4_

     

    discovery.zen.ping.unicast.hosts: ["<FQDN of elasticsearch node1>", "<FQDN of elasticsearch node2>", etcétera"]

     

    thread_pool.bulk.queue_size: 300

     

    thread_pool.search.queue_size: 10000

    Una vez que el tamaño de la cola de búsqueda alcance el límite, Elasticsearch descartará cualquier solicitud de búsqueda que haya pendiente en la cola.

    Puede aumentar el tamaño de la cola de la búsqueda en función del siguiente cálculo:threadpool.search.queue_size = Número medio de consultas de widget por usuario por consola x número de particiones (por índice de día) x número de días (duración de la búsqueda)

    index.codec: best_compression

     

    path.data: ["/<es1>", "/<es2>"]

    Distribuya los datos en varias ubicaciones o discos independientes para reducir la latencia de E/S del disco.

    Configure varias vías para almacenar los datos de Elasticsearch. Por ejemplo /es1, /es2 y así sucesivamente.

    Para obtener un mejor rendimiento y facilidad de gestión, monte cada vía en un disco físico independiente (JBOD).

  7. Actualice el tamaño de pila de Elasticsearch por defecto en el archivo /etc/elasticsearch/jvm.options.

    El tamaño de la pila debe ser el 50% de la memoria del servidor. Por ejemplo, en un nodo de Elasticsearch de 24 GB, asigne 12 GB como tamaño de pila para un rendimiento óptimo.

  8. Inicie Elasticsearch:

    /etc/init.d/elasticsearch start

  9. Repita los pasos indicados anteriormente en cada nodo del clúster de Elasticsearch.