Iniciación a Databases for Elasticsearch

Este tutorial le guiará a través de los pasos necesarios para empezar a utilizar rápidamente un despliegue de IBM Cloud® Databases for Elasticsearch mediante el aprovisionamiento de una instancia, la configuración de su contraseña de administrador y la conexión a la misma.

Sigue estos pasos para completar el tutorial:

Sigue estos pasos para completar el tutorial:

Sigue estos pasos para completar el tutorial:

Sigue estos pasos para completar el tutorial:

Antes de empezar

Paso 1: Elija su plan

Databases for Elasticsearch ofrece dos planes diferentes:

  • Databases for Elasticsearch Enterprise despliega la versión Basic de Elasticsearch.

  • Databases for Elasticsearch Platinum despliega la versión Platinum de Elasticsearch.

Ambos planes te ofrecen un servicio de « Elasticsearch » totalmente gestionado y escalable, lo que te permite centrarte en tus aplicaciones y datos en lugar de en la infraestructura subyacente. Consulta la descripción general del plan para obtener más información sobre cómo acceder a las funciones del plan.

Uso de las API

Utilice la API Cloud Databases para trabajar con su instancia Databases for Elasticsearch. La API del controlador de recursos se utiliza para aprovisionar una instancia.

Necesitará una clave API para realizar acciones a través de la API. Siga estos pasos para crear una clave de API de IBM Cloud que le permita utilizar la API para aprovisionar infraestructura en su cuenta. Puede crear hasta 20 claves de API.

Por motivos de seguridad, la clave de API sólo está disponible para copiarse o descargarse en el momento de la creación. Si se pierde la clave de API, deberá crear una nueva clave de API.

Paso 2: Aprovisionamiento a través de la consola

  1. Inicie la sesión en la consola de IBM Cloud.

  2. Haz clic en el servicioDatabases for Elasticsearch del catálogo.

  3. Siga estos pasos para aprovisionar una instancia Databases for Elasticsearch.

  4. Cuando su instancia esté aprovisionada, haga clic en el nombre de la instancia para ver más información.

Paso 2: Aprovisionamiento a través de la CLI

Puede aprovisionar una instancia Databases for Elasticsearch utilizando la CLI. Si aún no lo tiene, debe instalar la IBM Cloud CLI.

Puede seguir estos pasos para aprovisionar una instancia Databases for Elasticsearch.

Paso 2: Aprovisionamiento a través de la API del controlador de recursos

Siga estos pasos para aprovisionar una instancia Databases for Elasticsearch mediante la API del controlador de recursos.

Paso 2: Aprovisionamiento a través de Terraform

Necesita una clave API para realizar acciones a través de Terraform. Siga estos pasos para crear una clave API de IBM Cloud que permita a Terraform aprovisionar infraestructura en su cuenta. Puede crear hasta 20 claves de API.

Por motivos de seguridad, la clave de API sólo está disponible para copiarse o descargarse en el momento de la creación. Si se pierde la clave de API, deberá crear una nueva clave de API.

Una vez que tengas una Clave API, sigue estos pasos para aprovisionar una instancia Databases for Elasticsearch usando Terraform.

Paso 3: Establecer la contraseña de administrador

El usuario administrador

Cuando se aprovisiona un despliegue Databases for Elasticsearch, se crea automáticamente un usuario ' admin '.

Establezca la contraseña de administrador antes de utilizarla para conectarse.

Establecer la contraseña de administrador a través de la interfaz de usuario

Establezca su contraseña de administrador a través de la interfaz de usuario seleccionando su instancia en la lista de recursos IBM Cloud Lista de recursos. A continuación, seleccione Configuración. A continuación, seleccione Cambiar contraseña de administrador de base de datos.

Establecer la contraseña de administrador a través de la CLI

Utilice el comando ' cdb user-password ' del plugin IBM Cloud CLI Cloud Databases plug-in para establecer la contraseña de administrador.

Por ejemplo, para configurar la contraseña de administrador de tu implementación, utiliza el siguiente comando :

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

Establecer la contraseña de administrador a través de la API

Puede utilizar el parámetro " id " obtenido en la respuesta al paso 2 anterior con el punto final Establecer la contraseña del usuario especificado para establecer la contraseña de 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"

El parámetro id debe estar codificado en URL para que la llamada a la API funcione.

Establecer la contraseña de administrador a través de Terraform

La contraseña de administrador se pasa como uno de los parámetros de recursos de base de datos en el script Terraform. No es necesario adoptar ninguna otra medida.

Paso 4: Conéctese a su instancia Databases for Elasticsearch

Conéctese a su despliegue utilizando Kibana, una herramienta de código abierto que añade capacidades de visualización a su base de datos Elasticsearch. En este tutorial se ejecuta Kibana en un contenedor de Docker utilizando la imagen de Kibana del repositorio de imágenes Docker.

Antes de empezar

Para conectarse, Kibana necesita el nombre de usuario, la contraseña, la URL y el puerto de su implementación Elasticsearch. Además, necesita el certificado Elasticsearch TLS para acceder a la base de datos. Para obtenerlo, copie la información del certificado de la sección Endpoints de la página Overview de la instancia Elasticsearch creada. A continuación, descargue el certificado en una carpeta local. Puedes utilizar el nombre que aparece en la descarga o el nombre que tú mismo le quieras dar al archivo.

Recuerde dónde guarda el certificado en el sistema de archivos. Si estás ejecutando Kibana de forma local, y no en Docker, el certificado debe colocarse en $KIBANA_HOME/config/<filename>.

Configurar Kibana

Antes de ejecutar el contenedor Docker que incluye Kibana, cree un archivo de configuración en la misma carpeta con el certificado Elasticsearch descargado del paso 1. El archivo de configuración contendrá algunos valores básicos de Kibana como se indica a continuación.

Cree un archivo YAML denominado kibana.yml. Dentro de este archivo, necesita los siguientes valores de configuración de Kibana:

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"

El primer valor, elasticsearch.ssl.certificateAuthorities, es la ubicación donde Docker almacenará el certificado Elasticsearch. Se coloca en esta ubicación cuando se ejecuta por primera vez Docker. Puedes cambiarlo por la ubicación que prefieras, pero la ruta del ejemplo es el directorio de configuración de Kibana. Asegúrese de que el nombre de certificado (en nuestro ejemplo "cert") dentro de kibana.yml y el archivo de nombre de certificado almacenado en el paso 1 tengan el mismo nombre.

A continuación van elasticsearch.username y elasticsearch.password. Utilice el nombre de usuario y la contraseña del administrador del despliegue. Asegúrese de establecer la contraseña de administrador antes de intentar establecer la conexión. En el campo « elasticsearch.hosts », introduce el nombre de host y el puerto de la implementación, separados por « : ».

Por último, « server.name » es un nombre legible por máquina para la instancia de Kibana, y « server.hosts » es el host del servidor backend al que puedes conectarte desde tu navegador web para acceder a Kibana.

Estos ajustes son solo un ejemplo simplificado para empezar. Para obtener más información, consulte Configurar Kibana.

Si estás ejecutando Kibana de forma local, y no en Docker, el archivo YAML debe colocarse en $KIBANA_HOME/config/kibana.yml, que es donde Kibana lee su configuración.

Ejecutar el contenedor de Kibana

Ahora que ya tienes configurado el archivo « kibana.yml », utiliza Docker para adjuntar el archivo YAML y tu archivo de certificado al contenedor Docker, al tiempo que descargas la imagen <kibana_version> del repositorio de imágenes Docker.

Utiliza una imagen con una versión de Kibana que sea compatible con la versión de Elasticsearch que se está ejecutando en tu entorno. Recupere la versión Elasticsearch desde el punto final de la API https_endpoint utilizando su cliente http preferido. Para más información, consulte la matriz de compatibilidad Elasticsearch.

Aquí hay un ejemplo con curl. Si no tiene instalado el certificado, utilice el distintivo --insecure para inhabilitar la verificación de igual. <http_endpoint> se puede encontrar en la interfaz de usuario de Puntos finales de la instancia:

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

A continuación, ejecuta el comando « Docker » en tu terminal para iniciar el contenedor de 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>

El mandato Docker tiene un volumen conectado con el distintivo -v. Estos se montan en el contenedor de Kibana en la ruta /usr/share/kibana/config/, que es un directorio de configuración en el que Kibana busca los archivos de configuración.

  • El archivo « -p » especifica qué puerto queda expuesto desde el contenedor y el puerto que se utiliza para acceder a Kibana.
  • La versión de Kibana debe corresponder a la versión de Elasticsearch que está utilizando.

Cuando ejecuta el mandato desde el terminal, se descarga la imagen de Kibana Docker y se ejecuta Kibana. Una vez que Kibana se haya conectado a su despliegue de Databases for Elasticsearch y se esté ejecutando satisfactoriamente, verá la salida en el 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

Si no desea ver la salida de Kibana en el terminal, utilice el distintivo -d para desconectar el contenedor.

Visite http://0.0.0.0:5601 en el navegador para ver Kibana. 0.0.0.0 es server.host en kibana.yml y 5601 es el puerto que se expone desde el contenedor. Una vez que siga el URL, una ventana emergente le solicitará el nombre de usuario y la contraseña. Utilice las credenciales de administrador, o cualquier otra credencial que haya realizado, para acceder al despliegue. No es necesario que las credenciales coincidan con el nombre de usuario y la contraseña que has indicado en el archivo « kibana.yml ».

Próximos pasos

Para obtener más información, consulta la documentación de « Elasticsearch ».

¿Busca más herramientas para gestionar sus bases de datos y sus datos? Puede conectarse al despliegue con la CLI deIBM Cloud, el plugin de CLI deCloud Databases o la API deCloud Databases.

Si tiene previsto utilizar Databases for Elasticsearch para las aplicaciones, consulte Conexión de una aplicación externa y Conexión de una aplicación IBM Cloud.

Para garantizar la estabilidad de sus aplicaciones y su base de datos, consulte Alta disponibilidad y rendimiento.