DEV Community

Beatriz Oliveira for Sysadminas

Posted on • Updated on • Originally published at Medium

Elasticsearch: O que é? Como usar?

Alt Text

Artigo publicado originalmente no 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.

  1. Faça o download do Elastic:
    wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.0.0-x86_64.rpm

  2. Execute a instalação:
    sudo rpm -ivh Elasticsearch-7.0.0-x86_64.rpm

  3. Edite o config que fica no diretório /etc/elasticsearch/ seguindo as instruções do site da Elastic:
    vim /etc/elasticsearch/elasticsearch.yml

  4. Habilite o Elastic para subir automaticamente toda vez que o servidor for iniciado:
    systemctl enable elasticsearch

  5. Inicie o Elastic:
    systemctl start elasticsearch

  6. 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"
}

  1. Faça o download do Kibana:
    wget https://artifacts.elastic.co/downloads/kibana/kibana-7.0.0-x86_64.rpm

  2. Execute o Kibana:
    sudo rpm -ivh kibana-7.0.0-x86_64.rpm

  3. Edite o config que fica no diretório /etc/kibana seguindo as instruções do site da Elastic:
    vim /etc/kibana/kibana.yml

  4. Habilite o Kibana para subir automaticamente toda vez que o servidor for iniciado:
    systemctl enable kibana

  5. Inicie o Kibana:
    systemctl start kibana

  6. 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:
Alt Text

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)