Introdução ao Databases for Elasticsearch

Este tutorial o orienta nas etapas para começar a usar rapidamente uma implantação do IBM Cloud® Databases for Elasticsearch, provisionando uma instância, definindo a senha do administrador e conectando-se a ela.

Siga estas etapas para concluir o tutorial:

Siga estas etapas para concluir o tutorial:

Siga estas etapas para concluir o tutorial:

Siga estas etapas para concluir o tutorial:

Antes de Iniciar

Etapa 1: Escolha seu plano

Databases for Elasticsearch oferece dois planos diferentes:

  • Databases for Elasticsearch Enterprise implementa a versão básica do Elasticsearch.

  • Databases for Elasticsearch Platinum implementa a versão Platinum do Elasticsearch.

Ambos os planos oferecem a você um serviço de Elasticsearch totalmente gerenciado e escalável, permitindo que você se concentre em seus aplicativos e dados, em vez de na infraestrutura subjacente. Consulte a visão geral do plano para obter detalhes sobre como acessar os recursos do plano.

Uso de APIs

Use a API Cloud Databases para trabalhar com sua instância Databases for Elasticsearch. A API do controlador de recursos é usada para provisionar uma instância.

Você precisará de uma chave de API para executar ações por meio da API. Siga estas etapas para criar uma chave de API do IBM Cloud que permite que você use a API para provisionar a infraestrutura em sua conta. É possível criar até 20 chaves API.

Por motivos de segurança, a chave API está disponível apenas para ser copiada ou transferida por download no momento da criação. Se a chave API for perdida, uma nova chave API deverá ser criada.

Etapa 2: Provisionamento por meio do console

  1. Efetue login no console do IBM Cloud.

  2. Clique no serviçoDatabases for Elasticsearch no catálogo.

  3. Siga estas etapas para provisionar uma instância Databases for Elasticsearch.

  4. Quando sua instância for provisionada, clique no nome da instância para ver mais informações.

Etapa 2: provisionamento por meio da CLI

Você pode provisionar uma instância Databases for Elasticsearch usando a CLI. Se ainda não o tiver, você precisará instalar a IBM Cloud CLI.

Você pode seguir estas etapas para provisionar uma instância Databases for Elasticsearch.

Etapa 2: provisionamento por meio da API do controlador de recursos

Siga estas etapas para provisionar uma instância Databases for Elasticsearch usando a API do Controlador de Recursos.

Etapa 2: provisionamento por meio do Terraform

Você precisa de uma chave de API para executar ações via Terraform. Siga estas etapas para criar uma chave de API do IBM Cloud que permita ao Terraform provisionar a infraestrutura em sua conta. É possível criar até 20 chaves API.

Por motivos de segurança, a chave API está disponível apenas para ser copiada ou transferida por download no momento da criação. Se a chave API for perdida, uma nova chave API deverá ser criada.

Depois que você tiver uma chave de API, siga estas etapas para provisionar uma instância Databases for Elasticsearch usando o Terraform.

Etapa 3: Defina a senha do administrador

O usuário administrativo

Quando você provisiona uma implantação Databases for Elasticsearch, um usuário " admin é criado automaticamente.

Defina a senha de administrador antes de usá-la para se conectar.

Defina a senha do administrador por meio da interface do usuário

Defina sua senha de administrador por meio da interface do usuário, selecionando sua instância na lista de recursos IBM Cloud Lista de recursos. Em seguida, selecione Configurações. Em seguida, selecione Change Database Admin password (Alterar senha do administrador do banco de dados).

Definir a senha do administrador por meio da CLI

Use o comando ' cdb user-password do plug-in IBM Cloud CLI Cloud Databases para definir a senha do administrador.

Por exemplo, para definir a senha de administrador da sua implantação, use o seguinte comando:

ibmcloud cdb user-password <INSTANCE_NAME_OR_CRN> admin <NEWPASSWORD>

Definir a senha do administrador por meio da API

Você pode usar o parâmetro " id obtido na resposta à Etapa 2 acima com o ponto de extremidade Definir senha do usuário especificado para definir a senha do administrador.

curl -X PATCH -H "Authorization: Bearer <TOKEN>" \
     -H 'Content-Type: application/json' \
     -d '{"password":"newrootpasswordsupersecure21"}' \
      "https://api.<REGION>.databases.cloud.ibm.com/v5/ibm/deployments/<DEPLOYMENT_ID>/users/database/admin"

O parâmetro id precisa ser URL-encoded para que a chamada de API acima funcione.

Configuração da senha de administrador por meio do Terraform

A senha do administrador é passada como um dos parâmetros de recurso do banco de dados no script do Terraform. Não há necessidade de nenhuma ação adicional.

Etapa 4: Conecte-se à sua instância Databases for Elasticsearch

Conecte-se à sua implantação usando o Kibana, uma ferramenta de código aberto que adiciona recursos de visualização ao seu banco de dados Elasticsearch. Este tutorial executa o Kibana em um contêiner do Docker utilizando a imagem do Kibana do repositório de imagens Docker.

Antes de Iniciar

Para se conectar, o Kibana precisa do nome de usuário, da senha, da URL e da porta da sua implantação Elasticsearch. Além disso, é necessário o certificado Elasticsearch TLS para acessar o banco de dados. Para obter isso, copie as informações do certificado da seção Endpoints na página Overview (Visão geral ) da instância criada do Elasticsearch. Em seguida, faça o download do certificado para uma pasta local Você pode usar o nome fornecido no download ou um nome de arquivo de sua escolha.

Lembre-se do local de salvamento do certificado no sistema de arquivos. Se você estiver executando o Kibana localmente, e não em Docker, o certificado deve ser colocado em $KIBANA_HOME/config/<filename>.

Configurar o Kibana

Antes de executar o contêiner do Docker que inclui o Kibana, crie um arquivo de configuração na mesma pasta com o certificado Elasticsearch transferido por download da Etapa 1. O arquivo de configuração conterá algumas configurações básicas do Kibana, conforme a seguir:

Crie um arquivo YAML chamado kibana.yml. Dentro do arquivo, são necessárias as definições de configuração do Kibana a seguir:

elasticsearch.ssl.certificateAuthorities: "/usr/share/kibana/config/cacert"
elasticsearch.username: "admin"
elasticsearch.password: "<password>"
elasticsearch.hosts: ["https://<hostname:port>"]
server.name: "kibana"
server.host: "0.0.0.0"

A primeira configuração, elasticsearch.ssl.certificateAuthorities, é o local onde o Docker armazenará o certificado Elasticsearch. Ele é colocado neste local quando você executa o Docker pela primeira vez. Você pode alterá-lo para o local de sua preferência, mas o caminho de exemplo é o diretório de configuração do Kibana. Assegure-se de que o nome do certificado (em nosso exemplo "cert") no kibana.yml e o arquivo de nome do certificado armazenado na Etapa 1 tenham o mesmo nome.

Em seguida, é elasticsearch.username e elasticsearch.password. Use o nome do usuário e a senha do administrador da implementação. Certifique-se de configurar a senha do administrador antes de tentar se conectar. Para elasticsearch.hosts, insira o nome do host e a porta da implantação, separados por um :.

Por fim, server.name é um nome legível por máquina para a instância do Kibana, e server.hosts é o host do servidor de back-end, onde você pode se conectar ao Kibana pelo seu navegador da web.

Essas configurações são apenas um exemplo simplificado para você começar. Para obter mais informações, consulte Configurar o Kibana.

Se você estiver executando o Kibana localmente, e não em Docker, o arquivo YAML deve ser colocado em $KIBANA_HOME/config/kibana.yml, onde o Kibana lê sua configuração.

Executar o contêiner do Kibana

Agora que o arquivo kibana.yml está configurado, use Docker para anexar o arquivo YAML e seu arquivo de certificado ao contêiner Docker, enquanto baixa a imagem <kibana_version> do repositório de imagens Docker.

Utilize uma imagem com uma versão do Kibana compatível com a versão do Elasticsearch em que sua implantação está sendo executada. Recupere a versão Elasticsearch do ponto de extremidade da API https_endpoint usando seu cliente http preferido. Para obter mais informações, consulte a matriz de compatibilidade do site Elasticsearch.

Aqui está um exemplo com curl. Se você não tiver o certificado instalado, use a sinalização --insecure para desativar a verificação de peer. O <http_endpoint> pode ser localizado na IU de Terminais de sua instância:

curl --cacert <path-to-cert> <https_endpoint>

Em seguida, execute o comando Docker no seu terminal para iniciar o contêiner do Kibana.

docker container run -it --name kibana \
-v <path_to_config_folder_created_in_step_1>:/usr/share/kibana/config \
-p 5601:5601 docker.elastic.co/kibana/kibana:<kibana_version>

O comando Docker tem um volume que está conectado à sinalização -v. Eles são montados no contêiner do Kibana no caminho /usr/share/kibana/config/, que é um diretório de configuração onde o Kibana procura os arquivos de configuração.

  • O parâmetro -p especifica qual porta é exposta a partir do contêiner e qual porta você usa para acessar o Kibana.
  • A versão do Kibana deve corresponder à versão do Elasticsearch que você está usando.

Quando você executar o comando por meio de seu terminal, ele fará download da imagem do Docker do Kibana e executará o Kibana. Assim que o Kibana tiver se conectado à sua implementação do Databases for Elasticsearch e estiver sendo executado com sucesso, você verá a saída em seu terminal.

log   [01:19:31.839] [info][status][plugin:<kibana_version>] Status changed from uninitialized to green - Ready
log   [01:19:31.925] [info][status][plugin:elasticsearch@<kibana_version>] Status changed from uninitialized to yellow - Waiting for Elasticsearch
log   [01:19:32.120] [info][status][plugin:timelion@<kibana_version>] Status changed from uninitialized to green - Ready
log   [01:19:32.134] [info][status][plugin:console@<kibana_version>] Status changed from uninitialized to green - Ready
log   [01:19:32.147] [info][status][plugin:metrics@<kibana_version>] Status changed from uninitialized to green - Ready
log   [01:19:33.132] [info][status][plugin:elasticsearch@<kibana_version>] Status changed from yellow to green - Ready
log   [01:19:33.378] [info][listening] Server running at http://0.0.0.0:5601

Se você não quiser ver a saída do Kibana em seu terminal, use a sinalização -d para remover o contêiner.

Visite http://0.0.0.0:5601 em seu navegador para ver o Kibana. 0.0.0.0 é o server.host em kibana.yml e 5601 é a porta exposta do contêiner. Quando você acessa a URL, uma janela pop-up solicita seu nome de usuário e senha. Use as credenciais de administrador ou quaisquer outras credenciais que você fez para acessar sua implementação. As credenciais não precisam ser o mesmo nome de usuário e senha que você forneceu no arquivo kibana.yml .

Próximas etapas

Para obter mais informações, consulte a documentação do Elasticsearch.

Procurando mais ferramentas sobre o gerenciamento de seus bancos de dados e dados? É possível se conectar à sua implementação com a IBM Cloud, o plug-in da CLI do Cloud Databases ou a API doCloud Databases.

Se você planeja usar o Databases for Elasticsearch para seus aplicativos, efetue check-out de Conectando um aplicativo externo e Conectando um aplicativo IBM Cloud.

Para garantir a estabilidade dos seus aplicativos e do seu banco de dados, consulte Alta disponibilidade e desempenho.