12.2 Instalando e configurando o Elasticsearch

Para indexação escalável e distribuída de eventos, você deve instalar o Elasticsearch em modo de cluster. O cluster Elasticsearch instalado para o Sentinel deve ser usado para indexar somente dados do Sentinel.

12.2.1 Pré-requisitos

Conclua os seguintes pré-requisitos antes de instalar o Elasticsearch:

  • Defina a memória virtual ao adicionar a seguinte propriedade no arquivo /etc/sysctl.conf:

    vm.max_map_count=262144

  • Defina os descritores de arquivos ao adicionar as seguintes propriedades no arquivo /etc/security/limits.conf:

    elasticsearch hard nofile 65536

    elasticsearch soft nofile 65536

    elasticsearch soft as unlimited

IMPORTANTE:Após concluir os pré-requisitos acima, execute o comando sysctl -p para recarregar as mudanças feitas nos arquivos.

12.2.2 Instalando e configurando o Elasticsearch

Você deve instalar o Elasticsearch e os plug-ins solicitados em cada nó do cluster do Elasticsearch.

Para instalar e configurar o Elasticsearch:

  1. Instale a versão do JDK suportada pelo Elasticsearch.

  2. Faça download da versão certificada do Elasticsearch RPM. Para obter informações sobre a versão certificada do Elasticsearch e o URL de download, consulte a página Technical Information for Sentinel (Informações técnicas do Sentinel).

  3. Instale o Elasticsearch:

    rpm -i elasticsearch-<versão>.rpm

  4. Conclua as tarefas conforme mencionado na tela nas instruções pós-instalação do RPM.

  5. Verifique se o usuário do Elasticsearch tem acesso ao Java executando o comando a seguir:

    sudo -u elasticsearch java -version

  6. Configure o arquivo /etc/elasticsearch/elasticsearch.yml atualizando ou adicionando a seguinte informação:

    Propriedade e valor

    Notas

    cluster.name: <Elasticsearch _nome_do_cluster>

    O nome do cluster que você especifica deve ser o mesmo para todos os nós.

    node.name: <nome_do_nó>

    Cada nó deve ter um nome exclusivo.

    network.host: _<networkInterface>:ipv4_

     

    discovery.zen.ping.unicast.hosts: ["<FQDN do nó1 elasticsearch>", "<FQDN do nó2 elasticsearch>" e assim por diante]

     

    thread_pool.bulk.queue_size: 300

     

    thread_pool.search.queue_size: 10000

    Uma vez que o tamanho da fila de pesquisa atinge seu limite, o Elasticsearch descarta todos os pedidos de pesquisa pendentes na fila.

    É possível aumentar o tamanho da fila de pesquisa com base no cálculo abaixo: threadpool.search.queue_size = Número médio de consultas de barra de rolagem por usuário para um painel de controle X número de fragmentos (por índice de dia) X número de dias (duração da pesquisa)

    index.codec: best_compression 

     

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

    Distribua dados em vários locais ou discos independentes para reduzir a latência de E/S de disco.

    Configure vários caminhos para armazenar dados do Elasticsearch. Por exemplo /es1, /es2 etc.

    Para obter melhor desempenho e gerenciabilidade, monte cada caminho em um disco físico separado (JBOD).

  7. Atualize o tamanho do heap do Elasticsearch padrão no arquivo /etc/elasticsearch/jvm.options.

    O tamanho do heap deve ser 50% da memória do servidor. Por exemplo, em um nó do Elasticsearch de 24 GB, aloque 12 GB como o tamanho do heap para obter o desempenho ideal.

  8. Iniciar Elasticsearch:

    /etc/init.d/elasticsearch start

  9. Repita todas as etapas acima em cada nó do cluster do Elasticsearch.