/
/

O que é ELK stack? Guia de Elasticsearch, Logstash e Kibana

por Team Ninja
ELK stack: Elasticsearch, Logstash, & Kibana blog banner image

Resumo instantâneo

Esta postagem do blog NinjaOne oferece uma lista abrangente de comandos CMD básicos e um mergulho profundo nos comandos do Windows, com +70 comandos CMD essenciais para usuários iniciantes e avançados. Explicamos sobre comandos práticos de prompt de comando para gerenciamento de arquivos, navegação em diretórios, solução de problemas de rede, operações de disco e automação, tudo com exemplos reais para maximizar a produtividade. Seja para aprender comandos básicos CMD ou dominar ferramentas avançadas de CLI do Windows, este guia ajuda você a usar o prompt de comando com mais eficiência.

Pontos principais

Definição de ELK Stack: o ELK Stack é uma solução poderosa e de código aberto para gerenciamento de logs, formada por Elasticsearch, Logstash e Kibana, usada para buscar, analisar e visualizar dados de log em tempo real.

Componentes do ELK:

  • Elasticsearch: mecanismo distribuído de busca e análise que indexa e consulta dados de log com eficiência.
  • Logstash: pipeline de processamento que ingere, transforma e encaminha logs de várias fontes.
  • Kibana: painel de visualização que interpreta os logs armazenados no Elasticsearch por meio de gráficos, diagramas e mapas.

Casos de uso:

  • gerenciamento centralizado de logs em servidores e aplicações;
  • análise e monitoramento em tempo real;
  • análise de causa raiz e diagnóstico de desempenho;
  • gerenciamento de informações e eventos de segurança (SIEM).

Benefícios do ELK Stack:

  • arquitetura escalável e flexível para grandes volumes de dados de log;
  • mais observabilidade, monitoramento de desempenho e análise de segurança;
  • código aberto e impulsionado pela comunidade, com opções de suporte corporativo;
  • integração com outras ferramentas e sistemas, incluindo Beats, Kafka e plataformas na nuvem.

Desafios e pontos de atenção:

  • configuração e manutenção complexas, sobretudo em larga escala;
  • alto consumo de recursos para ingestão, indexação e visualização;
  • retenção de dados e custos de armazenamento exigem planejamento cuidadoso.

Alternativas e complementos:

  • versões ampliadas do ELK pelo Elastic Stack (inclui os Beats);
  • provedores comerciais de hospedagem do ELK ou plataformas SaaS para simplificar o gerenciamento;
  • NinjaOne e outras ferramentas podem complementar ou substituir partes do ELK stack, conforme o caso de uso.

Gerenciar logs e analisar dados com eficiência é parte essencial de uma infraestrutura de TI sólida. Essas práticas permitem que as organizações cuidem dos sistemas de forma proativa, identifiquem e resolvam possíveis problemas e mantenham altos níveis de desempenho e segurança. Nesse cenário, o ELK stack tem papel indispensável. Ele oferece uma estrutura unificada para gerenciar, analisar e visualizar dados, o que simplifica e agiliza essas operações críticas.
O ELK stack (ou simplesmente ELK) evoluiu bastante desde que surgiu. No início, era voltado ao gerenciamento de logs; depois, ampliou os recursos até virar uma ferramenta completa para diversas tarefas de análise. Essa evolução mostra a demanda crescente por soluções integradas capazes de lidar com as complexidades do Big Data. O ELK é um ótimo exemplo dessa tendência, pois torna a análise de dados sofisticada mais acessível e aplicável tanto para empresas quanto para profissionais de TI.

O que é o ELK stack?

ELK é a sigla de Elasticsearch, Logstash e Kibana. Juntos, esses três componentes formam uma solução integrada e potente para gerenciar grandes volumes de dados, com insights em tempo real e um conjunto completo de recursos analíticos.

  • Elasticsearch é o núcleo do stack. Funciona como um mecanismo de busca e análise altamente eficiente, capaz de processar volumes enormes de dados com rapidez e precisão.
  • Logstash é o componente de processamento de dados. Ele coleta, enriquece e transporta dados, deixando tudo pronto para análise.
  • Kibana é a interface do usuário. Permite criar e gerenciar painéis e visualizações, transformando dados em formatos fáceis de entender.

O ELK virou ferramenta-chave na era do Big Data porque responde aos desafios complexos de gerenciamento e análise de dados. Hoje é a solução preferida de organizações que querem extrair valor dos próprios dados.
A sinergia entre Elasticsearch, Logstash e Kibana é a base da eficácia do ELK e realmente faz o todo valer mais do que a soma das partes. Cada componente complementa os outros e forma um conjunto de ferramentas poderoso, que ajuda as empresas a transformar dados brutos em insights relevantes. Essa sinergia entrega busca sofisticada, processamento eficiente e visualizações dinâmicas, tudo em uma única plataforma integrada.

Pare de reagir e comece a liderar. Veja como adotar uma estratégia proativa de gerenciamento de TI com nosso guia passo a passo. Comece agora.

Principais componentes do ELK stack

Elasticsearch

Em essência, o Elasticsearch é um mecanismo distribuído de busca e análise. Ele se destaca no gerenciamento e na análise de grandes volumes de dados.
Principais recursos:

  • busca avançada em texto completo;
  • indexação eficiente para recuperar dados rapidamente;
  • funções robustas de consulta de dados.

O Elasticsearch é reconhecido pela escalabilidade e pela confiabilidade, sobretudo com conjuntos de dados muito grandes. Foi projetado para escalar horizontalmente, então a capacidade de análise cresce junto com as necessidades de dados da organização.

Logstash

O Logstash é peça central do ELK stack: coleta, transforma e enriquece dados. Ele é versátil e lida com fontes e formatos variados, incluindo logs estruturados e não estruturados. O ecossistema de plugins é um grande diferencial, pois permite ampliar as funcionalidades com plugins personalizados para necessidades específicas.

Kibana

O Kibana é a janela para o ELK stack e oferece uma plataforma robusta para visualizar e explorar dados. Com ele, dá para criar diferentes representações visuais, como painéis dinâmicos em tempo real e gráficos detalhados para análises aprofundadas. O Kibana foi pensado na experiência do usuário: a interface é intuitiva, fácil de navegar e com amplas opções de personalização.

Funcionalidades e benefícios do ELK

Gerenciamento e análise de logs

O ELK se destaca ao centralizar o armazenamento de logs e viabilizar análises completas. Ele suporta processamento de logs em tempo real e indexação eficiente, o que agiliza a recuperação e a análise dos dados.

Visualização de dados e painéis

O Kibana é uma ferramenta poderosa para criar visualizações e painéis interativos. Essas visualizações ajudam a extrair insights acionáveis dos logs e tornam conjuntos de dados complexos compreensíveis e úteis.

Monitoramento e análise

O ELK é muito eficaz no monitoramento de desempenho e na análise de sistemas. Os recursos vão além: detectam anomalias, ajudam na solução de problemas e otimizam toda a infraestrutura de TI. Aplicações mais avançadas do ELK stack incluem análise preditiva e machine learning, o que mostra sua versatilidade e adaptação a diferentes casos de uso.

Como instalar o ELK

Um dos grandes pontos fortes do ELK é a natureza versátil e distribuída, que permite várias configurações de implantação. Dá para instalar tudo em uma única máquina, o que funciona bem em ambientes menores ou em testes iniciais. Já em redes mais robustas, distribuídas ou escaladas horizontalmente, cada componente do ELK stack pode ficar em servidores separados. Essa escalabilidade garante que a implantação do ELK dê conta de cargas de dados crescentes e de demandas operacionais diversas.
Antes de seguir com esta instalação do ELK no Linux, avalie as necessidades da sua infraestrutura: o processo muda bastante conforme você opte por uma instalação em nó único ou por um ambiente distribuído mais complexo.

Passo 1: atualize o sistema

Atualize o sistema para os pacotes mais recentes:
sudo yum update

Passo 2: instale o Java

O Elasticsearch precisa de Java, então instale a versão mais recente do OpenJDK:
sudo yum install java-latest-openjdk
Depois da instalação, verifique a versão do Java:
java -version

A partir do Elasticsearch 8.x, um JDK integrado vem incluído por padrão, então não é preciso instalar o Java separadamente, a menos que você queira usar uma versão específica ou gerenciar o Java por conta própria.

Se optar por instalar o Java manualmente (por exemplo, para padronizar ambientes ou facilitar a depuração), execute:

sudo yum install java-17-openjdk

O Elasticsearch 8.x é testado com o Java 17, então vale usar essa mesma versão se for instalar o Java. Verifique a instalação com:

java -version

Passo 3: configure o repositório

Todos os componentes principais do ELK usam o mesmo repositório de pacotes, caso você precise instalá-los em sistemas diferentes.

  1. Importe a chave GPG pública do Elasticsearch para o RPM:

sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

  1. Crie um arquivo de repositório para o Elasticsearch:
    sudo vim /etc/yum.repos.d/elastic.repo
  2. Adicione o seguinte conteúdo:
    [elastic-8.x]
    name=Elastic repository for 8.x packages
    baseurl=https://artifacts.elastic.co/packages/8.x/yum
    gpgcheck=1
    gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
    enabled=1
    autorefresh=1
    type=rpm-md
    EOF
  3. Atualize o banco de dados do repositório local:
    sudo yum update

Passo 4: instale Elasticsearch, Logstash e Kibana

  • Se for instalar o ELK em um único sistema, execute a linha a seguir. Caso precise instalar o ELK em servidores separados, basta omitir os nomes dos pacotes que não forem necessários:

sudo yum install elasticsearch kibana logstash

  • Habilite e inicie o serviço do Elasticsearch:
    sudo systemctl enable elasticsearch
    sudo systemctl start elasticsearch
  • Habilite e inicie o serviço do Logstash:
    sudo systemctl enable logstash
    sudo systemctl start logstash
  • Habilite e inicie o serviço do Kibana:
    sudo systemctl enable kibana
    sudo systemctl start kibana

Passo 5: configure o firewall

  1. Se houver um firewall ativo, abra as portas necessárias. O Elasticsearch, por exemplo, usa a porta 9200 por padrão, e o Kibana usa a 5601:
    sudo firewall-cmd --add-port=5601/tcp –permanent
    sudo firewall-cmd --add-port=9200/tcp –permanent
    sudo firewall-cmd –reload
  2. No caso do Logstash, as portas a abrir dependem dos plugins de entrada em uso e de como você os configurou. O Logstash não tem porta padrão, já que pode ser configurado para escutar em qualquer porta, conforme a necessidade do seu pipeline. Use o exemplo a seguir para liberar portas arbitrárias no firewall:

sudo firewall-cmd –add-port=PORT_NUMBER/tcp –permanent

sudo firewall-cmd –reload

Veja alguns cenários comuns:

  • Entrada Beats: se você usa Beats (como Filebeat ou Metricbeat) para enviar dados ao Logstash, a porta padrão do plugin de entrada Beats é a 5044.
  • Entrada HTTP: com o plugin de entrada HTTP, é comum configurar a escuta em uma porta HTTP usual, como 8080 ou 9200.
  • Entrada TCP/UDP: para entradas genéricas TCP ou UDP, configure o Logstash para escutar em qualquer porta adequada à sua configuração, como a 5000.
  • Entrada syslog: se o Logstash for coletar mensagens de syslog, o usual é adotar portas padrão de syslog, como a 514 (para UDP).

Passo 6: acesse o Kibana

Depois da instalação, acesse o Kibana pelo navegador em http://seu_ip_do_servidor:5601.

Mas, por padrão, o Kibana só escuta em localhost. Para acessá-lo de uma máquina remota, edite o arquivo de configuração do Kibana:

sudo vim /etc/kibana/kibana.yml

Localize ou adicione a linha a seguir:

server.host: "0.0.0.0"

Definir 0.0.0.0 deixa o Kibana acessível a partir de qualquer endereço IP. Use essa opção sempre com regras de firewall e autenticação adequadas, para não expor o Kibana publicamente sem proteção.

Configurações adicionais

Cada componente do ELK stack tem seu próprio arquivo de configuração:

  • Elasticsearch: /etc/elasticsearch/elasticsearch.yml
  • Kibana: /etc/kibana/kibana.yml
  • Logstash: /etc/logstash/logstash.yml

Ajuste esses arquivos conforme necessário para adaptar o stack ao seu ambiente.

Configuração de segurança

O Elasticsearch 8.x já vem com vários recursos de segurança ativados por padrão, entre eles:

  • criptografia TLS nas camadas de transporte e HTTP;
  • autenticação básica com usuários e funções integrados.

Nas versões anteriores à 8.x, esses recursos precisavam ser ativados e configurados manualmente.

Em ambientes de produção, recomenda-se fortemente:

  • proteger as comunicações com HTTPS
  • configurar autenticação e autorização de usuários
  • configurar controle de acesso baseado em função (RBAC)
  • ativar logs de auditoria e outros recursos de segurança do X-Pack (hoje incluídos na licença Basic, que é gratuita)

Observações importantes

  • Os números de versão e os links de repositório podem mudar, então consulte a documentação oficial para ter as informações mais atuais.
  • Verifique se o sistema atende aos requisitos mínimos de hardware e de sistema operacional de cada componente.
  • Se for expor o ELK stack a redes externas, use regras de firewall, TLS e mecanismos robustos de autenticação para proteger o ambiente.

Integrações e casos de uso do ELK

A capacidade de integração do ELK stack com outras ferramentas e plataformas amplia bastante suas funcionalidades e sua utilidade nos mais diversos ambientes. Ele é altamente adaptável e serve tanto a implantações pequenas quanto corporativas.
Entre as integrações mais comuns e relevantes, estão:

  • Beats (por exemplo, Filebeat, Metricbeat): agentes leves que encaminham logs, métricas e outros tipos de dados ao Logstash ou ao Elasticsearch para processamento e indexação.
  • Agentes de APM: os agentes de Application Performance Monitoring (APM) da Elastic acompanham métricas de desempenho e rastreiam problemas no nível da aplicação, com visibilidade detalhada de serviços e transações.
  • Conectores do Kafka: a integração com o Apache Kafka viabiliza o streaming em tempo real e a ingestão de eventos de alto volume nos pipelines do ELK.

Essas integrações fazem do ELK o núcleo de um stack moderno de observabilidade, capaz de ingerir dados de várias fontes e convertê-los em insights acionáveis.

Principais casos de uso

O ELK stack é usado em inúmeros setores e áreas de TI. Entre os casos de uso mais comuns, estão:

  • Segurança avançada e detecção de ameaças: monitorar logs em busca de atividades suspeitas, integrar com plataformas de SIEM e detectar anomalias com o Elastic Security.
  • Business intelligence e análise de dados aprofundada: coletar e analisar dados estruturados e não estruturados para revelar padrões operacionais e tendências de negócio.
  • Monitoramento completo do desempenho de aplicações: usar agentes de APM para identificar problemas de latência, otimizar o uso de recursos e melhorar a experiência do usuário final.

Conforme a infraestrutura de dados e as necessidades de observabilidade evoluem, o ELK stack evolui junto. Com atualizações frequentes, mais integrações e suporte crescente a machine learning e detecção de anomalias, o ELK segue como ferramenta crítica no ecossistema de dados atual.

Elasticsearch, Logstash e Kibana trazem recursos próprios e poderosos ao ELK stack

O ELK é indispensável para gerenciamento de logs, análise e monitoramento de sistemas. Sua importância em TI é enorme, com aplicações que vão da simples agregação de logs até análises complexas e modelagem preditiva.
Qualquer pessoa pode se aprofundar no ELK stack. Há muitos recursos disponíveis para quem quer ampliar conhecimento e habilidades, de guias completos a fóruns ativos e redes profissionais. O ELK stack não é apenas um conjunto de ferramentas: é a porta de entrada para explorar todo o potencial dos dados e impulsionar a inovação tecnológica e de negócios.

FAQs

O ELK Stack é um conjunto poderoso de três ferramentas de código aberto:

  • Elasticsearch: armazenamento, busca e análise de dados.
  • Logstash: coleta, processamento e transformação de dados.
  • Kibana: visualização e exploração de dados. Juntas, elas permitem analisar logs e outros dados gerados por máquinas em tempo real.

Os dados passam da coleta (Beats/Logstash) para o armazenamento e a indexação (Elasticsearch) e depois para a visualização (Kibana), onde são analisados.

Ele é popular pelo registro centralizado de logs, pela análise em tempo real, pela escalabilidade e por ser de código aberto, entregando insights valiosos sobre os dados.

Os principais usos são análise de logs e eventos, monitoramento de desempenho de aplicações (APM), análise de segurança (SIEM) e monitoramento de infraestrutura.

Ele dá conta de grandes volumes graças à escalabilidade horizontal do Elasticsearch: basta adicionar nós para distribuir dados e cargas de processamento com eficiência.

É uma opção forte de SIEM para organizações que precisam de uma solução flexível, escalável e com bom custo-benefício. Em compensação, pode exigir mais configuração e conhecimento técnico do que plataformas de SIEM prontas para uso.

Recomendados para você

Pronto para simplificar as partes mais difíceis da TI?

Termos e condições NinjaOne

Ao clicar no botão “Aceito” abaixo, você indica sua aceitação dos seguintes termos legais, bem como dos nossos Termos de Uso:

  • Direitos de propriedade: A NinjaOne é proprietária e continuará a ser proprietária de todos os direitos, títulos e interesses relativos ao script (incluindo os direitos autorais). A NinjaOne está concedendo a você uma licença limitada para usar o script de acordo com os presentes termos legais.
  • Limitação de uso: Você só poderá usar o script para fins comerciais internos ou pessoais legítimos, sendo vedado compartilhar o script com terceiros.
  • Proibição de republicação: Em nenhuma circunstância você tem permissão para republicar o script em qualquer biblioteca de scripts pertencente ou sob o controle de qualquer outro fornecedor de software.
  • Isenção de responsabilidade da garantia: O script é fornecido “no estado em que se encontra” e “conforme disponível”, sem qualquer tipo de garantia. A NinjaOne não promete ou garante que o script estará livre de defeitos ou que atenderá às suas necessidades ou expectativas específicas.
  • Assunção de riscos: O uso do script é por sua própria conta e risco. Você reconhece que há certos riscos inerentes ao uso do script, e você compreende e assume cada um desses riscos.
  • Renúncia e isenção de responsabilidade: Você não responsabilizará a NinjaOne por consequências adversas ou não intencionais resultantes do seu uso do script e renunciará a quaisquer direitos ou tutelas legais que possa ter contra a NinjaOne em relação ao seu uso do script.
  • EULA: Se você for cliente da NinjaOne, o uso do script está sujeito ao Contrato de Licença de Usuário Final aplicável a você (EULA).