Entrar ou criar conta

ULC Lab · implementação reproduzível

Laboratório: Pipeline Completo de Logs com Elastic Stack (ELK) em Ambiente Local

Você terá um pipeline funcional de coleta, indexação e visualização de logs usando Elastic Stack em VMs locais. O laboratório leva entre 90 e 120 minutos para ser concluído.

Elastic Stack do zero à observabilidade full-stack
Ligado ao treinamento Elastic Stack do zero à observabilidade full-stack
ULC-LAB-OBSE-0002 · Status de validaçãoNão validado pela Upnetix: roteiro derivado da documentação oficial, para você executar e validar
Duração estimada
90 min
Passos
12
Validações
5
Versões da documentação consultada
ElasticSearch a versão estável atual · Logstash a versão estável atual · Kibana a versão estável atual · Filebeat a versão estável atual
Objetivo

Este laboratório ensina a montar, do zero, um pipeline de logs corporativos com Elastic Stack, usando apenas software livre. Você vai instalar ElasticSearch, Logstash, Kibana e Filebeat em máquinas virtuais, configurar o fluxo de logs de um servidor Linux até a visualização no Kibana, e validar cada etapa. O objetivo é entender, na prática, como cada componente se conecta e entrega valor em ambientes reais, como em redes de fibra dedicadas da Upnetix.

Topologia

Três máquinas virtuais: uma para ElasticSearch, uma para Logstash e Kibana, e uma para Filebeat (coletor de logs). Filebeat envia logs para Logstash, que processa e repassa para ElasticSearch. Kibana acessa ElasticSearch para visualização. Endereços de exemplo: 192.168.56.10 (ElasticSearch), 192.168.56.11 (Logstash/Kibana), 192.168.56.12 (Filebeat).

      [Filebeat VM]
        (192.168.56.12)
             |
             v
      [Logstash + Kibana VM]
        (192.168.56.11)
             |
             v
      [ElasticSearch VM]
        (192.168.56.10)

Kibana acessa ElasticSearch na 10.

Equipamentos e software

ItemRequisito, licença ou versão
VM ElasticSearch2 vCPU, 4 GB RAM, 10 GB disco, porta 9200 aberta
VM Logstash/Kibana2 vCPU, 4 GB RAM, 10 GB disco, portas 5601 e 5044 abertas
VM Filebeat1 vCPU, 1 GB RAM, 5 GB disco, acesso de saída na 5044
ElasticSearchApache 2.0 · a versão estável atual
LogstashApache 2.0 · a versão estável atual
KibanaApache 2.0 · a versão estável atual
FilebeatApache 2.0 · a versão estável atual

Roteiro

  1. Preparar as VMs

    Crie três VMs Linux (Ubuntu Server recomendado) com os endereços IP indicados. Isso isola os papéis e simula um ambiente real.

    O que você deve ver: Três VMs acessíveis entre si via ping.

  2. Instalar ElasticSearch

    No VM 192.168.56.10, instale ElasticSearch. Ele é o núcleo de indexação e busca.

    sudo apt update
    sudo apt install apt-transport-https wget -y
    wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
    echo "deb https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-8.x.list
    sudo apt update
    sudo apt install elasticsearch -y

    O que você deve ver: ElasticSearch instalado, serviço disponível na porta 9200.

  3. Configurar ElasticSearch

    Edite o arquivo de configuração para aceitar conexões externas e definir o cluster.

    sudo nano /etc/elasticsearch/elasticsearch.yml
    # Ajuste:
    network.host: 0.0.0.0
    cluster.name: elk-lab
    node.name: es01

    O que você deve ver: Arquivo salvo, configuração aplicada.

  4. Iniciar ElasticSearch

    Ative e inicie o serviço.

    sudo systemctl enable elasticsearch
    sudo systemctl start elasticsearch

    O que você deve ver: Serviço iniciado, status ativo.

  5. Instalar Logstash e Kibana

    Na VM 192.168.56.11, instale Logstash e Kibana. Logstash processa logs, Kibana visualiza.

    sudo apt update
    sudo apt install logstash kibana -y

    O que você deve ver: Ambos instalados, sem erros.

  6. Configurar Logstash para receber Filebeat

    Crie um pipeline Logstash para receber logs do Filebeat na porta 5044 e enviar para ElasticSearch.

    sudo nano /etc/logstash/conf.d/01-beats-input.conf
    input { beats { port => 5044 } }
    
    sudo nano /etc/logstash/conf.d/30-elasticsearch-output.conf
    output { elasticsearch { hosts => ["http://192.168.56.10:9200"] index => "lab-logs-%{+YYYY.MM.dd}" } }

    O que você deve ver: Arquivos criados, sintaxe correta.

  7. Iniciar Logstash e Kibana

    Ative e inicie Logstash e Kibana.

    sudo systemctl enable logstash kibana
    sudo systemctl start logstash kibana

    O que você deve ver: Ambos em execução, portas 5044 (Logstash) e 5601 (Kibana) abertas.

  8. Instalar Filebeat

    Na VM 192.168.56.12, instale Filebeat. Ele coleta logs locais e envia para Logstash.

    sudo apt update
    sudo apt install filebeat -y

    O que você deve ver: Filebeat instalado.

  9. Configurar Filebeat para enviar logs do syslog

    Edite o filebeat.yml para ativar o módulo system e enviar para Logstash.

    sudo filebeat modules enable system
    sudo nano /etc/filebeat/filebeat.yml
    # Ajuste:
    output.logstash:
      hosts: ["192.168.56.11:5044"]

    O que você deve ver: Configuração salva, módulo system ativado.

  10. Iniciar Filebeat

    Ative e inicie Filebeat.

    sudo systemctl enable filebeat
    sudo systemctl start filebeat

    O que você deve ver: Filebeat em execução, logs sendo enviados.

  11. Acessar Kibana

    No navegador, acesse http://192.168.56.11:5601. Kibana permite visualizar os dados indexados.

    O que você deve ver: Tela inicial do Kibana carregada.

  12. Configurar Index Pattern no Kibana

    No Kibana, crie um index pattern para 'lab-logs-*'. Isso permite buscar e visualizar os logs.

    O que você deve ver: Index pattern criado, logs visíveis na Discover.

Como saber que funcionou

TesteComandoCritério
ElasticSearch respondecurl http://192.168.56.10:9200Retorno JSON com informações do cluster.
Logstash escutando na porta 5044sudo netstat -plnt | grep 5044Porta 5044 aberta e associada ao processo logstash.
Filebeat envia logssudo tail -f /var/log/filebeat/filebeatMensagens de envio para Logstash sem erros.
Kibana acessívelcurl -I http://192.168.56.11:5601Resposta HTTP 200.
Logs visíveis no DiscoverLogs do sistema da VM Filebeat aparecem no Kibana.

Troubleshooting

SintomaCausa provávelCorreção
Kibana não carregaKibana não iniciado ou porta 5601 bloqueadaVerifique status do serviço e regras de firewall.
Logs não aparecem no KibanaFilebeat não envia ou Logstash não processaCheque logs do Filebeat e Logstash, valide conexões e permissões.
ElasticSearch não respondeServiço não iniciado ou configuração de rede incorretaRevise elasticsearch.yml e status do serviço.
Filebeat falha ao conectar ao LogstashPorta 5044 fechada ou erro no output.logstashConfirme IP, porta e firewall.
Logstash não envia para ElasticSearchErro na configuração do outputRevise o arquivo de output e consulte a documentação.

Segurança e hardening

  • Altere senhas padrão do ElasticSearch e Kibana após o laboratório.
  • Restrinja acesso externo às portas 9200, 5044 e 5601.
  • Implemente autenticação e TLS em produção (consulte a documentação).
  • Desabilite módulos e outputs não utilizados.

Checklist final

Verificação editorial
Publicado
09/09/2026
Última revisão
09/09/2026
Versão do conteúdo
1.0
Referências
0 oficiais
Revisão técnica
redação e revisão por IA, URLs conferidas na publicação
Status
Atual
Encontrou um erro? Escreva para comercial@upnetix.com.br com o endereço da página. A revisão semestral por IA nunca altera comandos ou configurações sem passar pela fila de revisão.