DEV Community

Beatriz Oliveira for Sysadminas

Posted on • Edited on • Originally published at Medium

2

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.

Image of Docusign

Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more

Top comments (0)

Billboard image

Try REST API Generation for MS SQL Server.

DevOps for Private APIs. With DreamFactory API Generation, you get:

  • Auto-generated live APIs mapped from database schema
  • Interactive Swagger API documentation
  • Scripting engine to customize your API
  • Built-in role-based access control

Learn more