Artigo publicado originalmente no Medium
Elasticsearch: O que é? Como usar? | by Beatriz Oliveira | SysAdminas | Medium
Beatriz Oliveira ・ ・
Medium
Comecei a utilizar o Elastic à 1 ano atrás e o diferencial dele em relação as outras ferramentas era o fato de que eu tinha as informações que eu precisava em tempo real.
Nessa época, eu tive meu primeiro contato com aplicações de larga escala, com milhões de acessos simultâneos e eu e minha equipe tínhamos como objetivo manter o ambiente operando com o máximo de disponibilidade possível, porém era comum acontecer problemas e nós precisávamos descobrir o que estava acontecendo com muita agilidade. A primeira coisa que fazíamos era iniciar o nosso troubleshooting através da leitura de logs que estavam centralizados no Elastic. Isso facilitava muito a nossa vida, pois seria inviável em um momento de crise entrar em 20 servidores e olhar todos os logs que estavam em cada um deles.
A partir desse momento comecei a conhecer e a estudar sobre o assunto, encontrei alguns artigos, livros e o próprio material do site da Elastic vem me ajudando bastante, por isso escrevi esse breve artigo para simplificar tudo que venho lendo e aprendendo, pois acredito que pode ajudar quem está começando sua jornada com o Elastic assim como eu.
O que é o ElasticSearch?
O Elasticsearch é uma ferramenta open source para buscas desenvolvida em Java e também é uma solução NoSQL de armazenamento de dados que tem capacidade para tratar de grandes quantidades de dados em tempo real.
O desenvolvimento do Elastic tem como base a biblioteca Lucene, que é um motor de buscas open source bem conhecido e usado até pela Wikipédia para buscas textuais.
Para fazer buscas e visualizar os logs que ficam armazenados no Elastic, utilizamos o Kibana, com ele é possível criar dashboards e métricas para consolidar os dados contidos nos logs.
Por onde começar?
Agora vou mostrar como instalar e configurar o Elastic junto com o Kibana no mesmo servidor, mas em produção não é recomendado colocar os dois juntos no mesmo nó, por isso separe quando for executar em prod, ok?! ;)
Instalação e configuração do ElasticSearch e do Kibana
Para baixar os pacotes de instalação, acesse a página de download no site da Elastic e selecione a versão compatível com o seu sistema operacional. No exemplo estamos utilizando o sistema operacional CentOS.
Faça o download do Elastic:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.0.0-x86_64.rpm
Execute a instalação:
sudo rpm -ivh Elasticsearch-7.0.0-x86_64.rpm
Edite o config que fica no diretório /etc/elasticsearch/ seguindo as instruções do site da Elastic:
vim /etc/elasticsearch/elasticsearch.yml
Habilite o Elastic para subir automaticamente toda vez que o servidor for iniciado:
systemctl enable elasticsearch
Inicie o Elastic:
systemctl start elasticsearch
Teste o Elastic:
curl -X GET "localhost:9200"
O resultado do comando acima deverá ser esse:
{
"name" : "elastic01",
"cluster_name" : "elastic-cluster",
"cluster_uuid" : "2PNd56pDRrC1N71AIirAQQ",
"version" : {
"number" : "7.0.1",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "e4efcb5",
"build_date" : "2019-04-29T12:56:03.145736Z",
"build_snapshot" : false,
"lucene_version" : "8.0.0",
"minimum_wire_compatibility_version" : "6.7.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
Faça o download do Kibana:
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.0.0-x86_64.rpm
Execute o Kibana:
sudo rpm -ivh kibana-7.0.0-x86_64.rpm
Edite o config que fica no diretório /etc/kibana seguindo as instruções do site da Elastic:
vim /etc/kibana/kibana.yml
Habilite o Kibana para subir automaticamente toda vez que o servidor for iniciado:
systemctl enable kibana
Inicie o Kibana:
systemctl start kibana
Por fim, abra um navegador e aponte para o seguinte endereço:
http://ip_do_host:5601
Se você seguiu todos os passos acima, o resultado deverá ser equivalente a esse aqui:
E assim terminamos de instalar o Elastic e o Kibana de uma maneira bem simples e ágil. Nos próximos artigos vou explorar mais sobre o Logstash, os Beats e o APM.
O Elastic é uma ótima solução de monitoração e tem crescido muito nos últimos tempos, por isso vale a pena conhecer e contribuir com o projeto.
Top comments (0)