Pesquisa de site

Encaminhar logs Nginx do Droplet para o OpenSearch via Fluent Bit


Introdução

O gerenciamento de logs do servidor web é essencial para manter o desempenho, solucionar problemas e compreender o comportamento do usuário. Nginx gera logs valiosos de acesso e erros. Este tutorial irá guiá-lo na instalação do Fluent Bit em um Droplet, configurando-o para coletar logs Nginx e enviando-os para o Managed OpenSearch da DigitalOcean para análise.

Pré-requisitos

Antes de começar, certifique-se de ter o seguinte em vigor:

  1. Um Droplet/s DigitalOcean com servidor web Nginx instalado.
  2. Um cluster OpenSeach gerenciado.

Passo 1 - Instalando o Fluent Bit

Fluent Bit é um processador e encaminhador de log leve e de código aberto. Ele foi projetado para coletar dados e logs de várias fontes, processá-los ou transformá-los e depois encaminhá-los para diferentes destinos.

O FluentBit pode ser instalado em várias plataformas como Ubuntu, Debian, RedHat, CentOS executando o seguinte comando em seu terminal Droplet:

curl https://raw.githubusercontent.com/fluent/fluent-bit/master/install.sh | sh

Etapa 2 - Configurando o Fluent Bit para enviar logs ao OpenSearch

Por padrão, os arquivos de configuração do Fluent Bit estão localizados em /etc/fluent-bit/. Para encaminhar logs para o OpenSearch, você precisará modificar o arquivo fluent-bit.conf.

Entradas FluentBit

Fluent Bit fornece uma variedade de plug-ins de entrada para coletar dados de log e eventos de várias fontes. Para nosso caso de uso de coleta de logs de arquivos de log, usaremos o plugin de entrada tail. Este plug-in foi projetado especificamente para ler dados de arquivos, manipular a rotação de log e transmitir novas entradas à medida que são gravadas nos arquivos de log.

Atualize o arquivo fluent-bit.conf da seguinte forma:

[INPUT]
    name tail
    Tag nginx.access
    path /var/log/nginx/access.log
    parser  nginx

[INPUT]
    Name  tail
    Tag   nginx.error
    path  /var/log/nginx/error.log

Para obter mais informações sobre entradas Fluent Bit, consulte este link: https://docs.fluentbit.io/manual/pipeline/inputs.

fluentbit já fornece um analisador padrão para logs de acesso nginx.

Saídas FluentBit

Assim como os plug-ins de entrada, o fluentbit fornece um plug-in de saída que envia logs coletados e processados para diferentes destinos. Como estamos enviando logs para o OpenSearch, vamos usar o plugin de saída opensearch.

[OUTPUT]
    Name  opensearch
    Match nginx.access
    Host <OpenSearch_Host>
    port 25060
    HTTP_User doadmin
    HTTP_Passwd <OpenSearch_Password>
    Index fbit-nginx-access
    tls On
    Suppress_Type_Name On

[OUTPUT]
    Name  opensearch
    Match nginx.error
    Host <OpenSearch_Host>
    port 25060
    HTTP_User doadmin
    HTTP_Passwd <OpenSearch_Password>
    Index fbit-nginx-error
    tls On
    Suppress_Type_Name On 

Substitua pelo nome do host do seu servidor OpenSearch e pela sua senha do OpenSearch.

Depois que as configurações forem definidas, inicie o serviço de bit fluente executando:

systemctl enable fluent-bit.service
systemctl start fluent-bit.service
systemctl status fluent-bit.service

Solução de problemas

Verifique a conectividade

Você pode verificar se o Logstash pode se conectar ao OpenSearch testando a conectividade:

curl -u your_username:your_password -X GET "https://your-opensearch-server:25060/_cat/indices?v"

Substitua seu-servidor-OpenSearch pelo nome de host do seu servidor OpenSearch, seu_nome de usuário e sua_senha pelas suas credenciais do OpenSearch.

Ingestão de dados

Certifique-se de que os dados estejam indexados corretamente no OpenSearch:

curl -u your_username:your_password -X GET "http://your-opensearch-server:25060/<your-index-name>/_search?pretty"

Substitua your-OpenSearch-server pelo nome de host do seu servidor OpenSearch, your_username e your_password pelas suas credenciais do OpenSearch e your-index-name pelo nome do índice.

Configuração de firewall e rede

Certifique-se de que as regras de firewall e as configurações de rede permitam o tráfego entre Logstash e OpenSearch na porta.

Verifique os registros de bits fluentes

Por padrão, os logs são gravados no log do sistema.

sudo journalctl -u fluent-bit

Validar configuração

Certifique-se de que os arquivos de configuração estejam sintaticamente corretos.

/opt/fluent-bit/bin/fluent-bit -c /etc/fluent-bit/fluent-bit.conf --dry-run

Conclusão

Neste tutorial, percorremos o processo de instalação e configuração do Fluent Bit para coletar logs Nginx e encaminhá-los para o Managed OpenSearch da DigitalOcean para análise. Seguindo essas etapas, você deve agora ter um sistema de gerenciamento de log simplificado, permitindo monitorar e analisar com eficácia os logs do seu servidor web.

Instalação: Instalamos o Fluent Bit em um Droplet usando um comando curl simples adequado para várias plataformas.

Configuração: atualizamos o arquivo fluent-bit.conf para coletar logs de acesso e erros do Nginx usando o plugin de entrada tail e enviá-los para o OpenSearch usando o plugin de saída opensearch.

Gerenciamento de serviços: habilitamos e iniciamos o serviço Fluent Bit para garantir que ele funcione perfeitamente.

Solução de problemas: cobrimos etapas essenciais de solução de problemas, incluindo verificação de conectividade, verificação de ingestão de dados e revisão de logs do Fluent Bit.

Com o Fluent Bit configurado com sucesso, você poderá aproveitar os poderosos recursos de pesquisa e visualização do OpenSearch para obter insights de seus logs Nginx.

Artigos relacionados: