Saudações, galera!
Hoje vamos falar sobre o Packetbeat, uma das aplicações do Beats, da Elastic, que faz parte do Elastic Stack (anteriormente chamado de ELK, pois só incluía Elasticsearch, Logstash e Kibana).
Trata-se de um robusto agente que envia informações de tráfego de rede a 3 outras aplicações:
- Ao Logstash: caso o objetivo seja implementar grok filters para separar a saída padrão em campos personalizados;
- Ao Elasticsearch: caso o objetivo seja apenas enviar as saídas no formato original;
- Ao Kibana: caso o administrador queira exportar os templates de dashboards e views que já vêm com o pacote.
No nosso caso, vamos utilizar o Packetbeat enviando as saídas diretamente ao Elasticsearch e também vamos exportas os dashboards ao Kibana.
Para isso, vamos nos utilizar da infra com Elasticsearch e Kibana nas versões 6.0 (a mais recente versão estável da aplicação). A preparação deste ambiente está nesta nossa matéria anterior.
O servidor onde vamos implementar o agente é um Debian9.
Instalando o agente
Antes desta instalação, vale ressaltar que é necessária a instalação do java antes.
#apt-get install openjdk-8-jre -y
Agora, o download e a instalação do Packetbeat:
#wget –no-check-certificate https://artifacts.elastic.co/downloads/beats/packetbeat/packetbeat-6.0.0-amd64.deb
#dpkg -i packetbeat-6.0.0-amd64.deb
Configurando o agente
Como todas as aplicações do Beats, o Packetbeat também segue o formato YML para os seus arquivos de configuração.
#vim /etc/packetbeat/packetbeat.yml
A primeira coisa a ser definida é de qual interface vamos colher as estatísticas:
Neste caso, ‘any’ significa toda e qualquer interface existente. Isso também engloba a interface de loopack. Se para você for irrelevante, é só pôr o nome de sua interface de rede.
Agora, vamos definir quais protocolos e portas queremos :
Como vamos enviar os dashboards para o Kibana, precisamos configurar o endereço do servidor aqui dentro também:
Agora, o endereço do Elasticsearch, para onde vamos enviar os logs de pacotes de rede:
*Obs: apenas neste caso, o servidor do Elasticsearch é o mesmo onde está também o Kibana. Não tem que (e não deve) ser assim, o ideal é termos os 2 em servidores separados.
Agora é só reiniciar o serviço e dar uma olhada no log para ver se deu tudo certo:
#systemctl restart packetbeat
#tail -f /var/log/packetbeat/packetbeat.log
Exportando os dashboards para o Kibana:
#packetbeat setup –dashboards
Criando o index pattern no Kibana:
Acesso o Kibana digitando seu endereço no browser:
http://192.168.0.10:5601
Vá no botão “Management”, do lado esquerdo do menu do Kibana e escolha a opção “Index Patterns”
Digita packetbeat-*, pois o nome do index dele lá no Elasticsearch será packectbeat-<data> .
Escolha um campo de data para ele tomar como referência. Neste caso, eu prefiro @timestamp, pois vai ser o exato minuto da chegada ou saída do pacote do servidor.
Tendo feito isso, vamos em ‘Discover’ para visualizar os logs chegando:
Atente sempre para o index do lado esquerdo e para o intervalo de tempo no canto superior direito:
Dashboards e views
Agora vamos conferir os dashboards e visualizações que ele enviou para o Kibana:
Sem dúvida, um dos grandes atrativos do Kibana é a quantidade de opções para criação de views:
Quer se especializar na solução? Saiba sobre nosso treinamento Elastic Stack.
É isso, galera, vamos ficando por aqui. Até a próxima.
Abraço!