Cómo crear un cluster de Elasticsearch para visualizar grandes cantidades de datos

Elasticsearch es un motor de búsqueda y análisis muy potente que puede escalar de manera excepcional. Con esta herramienta, tienes la base para visualizar cantidades masivas de datos. Pero cuando escalas Elasticsearch para satisfacer las demandas del big data, es necesario emplear más de un servidor. Si intentas manejar todo ese volumen de datos con un solo servidor, simplemente se colapsaría.

Índice de Contenido
  1. Lo que necesitarás
  2. Cómo instalar Java
  3. Cómo instalar Elasticsearch
  4. Cómo configurar Elasticsearch
  5. Cómo probar el clúster

Lo que necesitarás

En este artículo te mostraré cómo hacerlo utilizando dos instancias de Ubuntu Server 20.04, aunque puedes implementarlo en un clúster de cualquier tamaño. Además de las dos instancias de Ubuntu Server, necesitarás un usuario con privilegios de sudo. Eso es todo. ¡Comencemos con la implementación!

Cómo instalar Java

Necesitarás al menos Java 8 instalado en cada servidor. Para ello, instalaremos la versión predeterminada de JRE con el siguiente comando:

sudo apt-get install default-jre -y

Una vez que se haya instalado en ambos equipos de prueba, procederemos a instalar Elasticsearch.

Cómo instalar Elasticsearch

Este paso debe realizarse en ambos servidores. Primero, instalaremos la clave GPG de Elasticsearch con el siguiente comando:

Cómo garantizar la validación local de los clientes en un dominio multi-sitio

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

A continuación, instalaremos apt-transport-https con:

sudo apt-get install apt-transport-https

Agregaremos el repositorio necesario con el siguiente comando:

echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list

Finalmente, actualizaremos apt e instalaremos Elasticsearch:

Cuál es la mejor opción de protocolo de enrutamiento para una red empresarial

sudo apt-get update
sudo apt-get install elasticsearch -y

Iniciaremos y habilitaremos Elasticsearch:

sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch

Cómo configurar Elasticsearch

Deberás hacer esto en ambos servidores, pero asegúrate de ajustar la configuración para cada máquina. Llamaremos al primer servidor "controller-1" y al segundo servidor "node-1". Abre el archivo de configuración con el siguiente comando:

sudo nano /etc/elasticsearch/elasticsearch.yml

En ese archivo, debes editar las siguientes líneas. Algunas de ellas estarán comentadas, así que deberás eliminar el carácter # al principio. Las líneas a editar son (todo lo que esté en negrita deberá ser editado según sea necesario):

Los 8 pasos para solucionar problemas de red y sistemas
  • cluster.name: mi-clúster
  • node.name: "controller-1"
  • network.host: 192.168.1.80
  • http.port: 9200
  • discovery.zen.ping.unicast.hosts: ["192.168.1.80", "192.168.1.81"]

En mi caso, el controlador está en 192.168.1.80 y el nodo está en 192.168.1.81.

Guarda y cierra el archivo. Reinicia Elasticsearch en ambos servidores:

sudo systemctl restart elasticsearch

Cómo probar el clúster

Debes esperar unos minutos para que Elasticsearch se inicie. Puedes probarlo con el siguiente comando:

curl -XGET 'http://192.168.1.80:9200/_cluster/state?pretty'

Asegúrate de editar la dirección IP de arriba para que coincida con tu controlador o nodo. Si estás probando el controlador, utiliza la dirección IP del controlador, y si estás probando el nodo, utiliza la dirección IP del nodo.

Diferencias entre redes cliente/servidor y peer-to-peer

Cuando Elasticsearch esté funcionando, deberías ver una gran cantidad de datos de salida que incluyen:

{

"cluster_name" : "mi-clúster",

"cluster_uuid" : "9ufh2InTSCqWCZOp3gLjjg",

"version" : 6,

"state_uuid" : "WVx5O6Q7SfOqZf_wxaPOKQ",

Qué son los switches Cisco y cómo funcionan

"master_node" : "2NI9_pDYS1WvJYQz-XY3KQ",

"blocks" : { },

"nodes" : {

"yV2TBoxVTvKbh7E1ZngpbA" : {

"name" : "node-1",

"ephemeral_id" : "pkb3vapLTd2yFLrXO64ENA",

Técnicas para mejorar la seguridad en redes peer-to-peer

"transport_address" : "192.168.1.81:9300",

"attributes" : {

"ml.machine_memory" : "3137888256",

"ml.max_open_jobs" : "20",

"xpack.installed" : "true",

"ml.enabled" : "true"

Cómo cargar y descargar módulos del kernel de Linux: una guía completa

}

},

Una vez que tanto el controlador como el nodo estén en funcionamiento, prueba el clúster con el comando:

curl -XGET '192.168.1.80:9200/_cluster/health?pretty'

Asegúrate de editar la dirección IP para que coincida con el servidor en el que estás ejecutando el comando. La salida debería incluir:

Control de acceso en tiempo real con PAM: ¡No pierdas ni un minuto!

{

"cluster_name" : "mi-clúster",

"status" : "green",

"timed_out" : false,

"number_of_nodes" : 2,

"number_of_data_nodes" : 2,

Cómo encontrar el Pin 1 en un cable de cinta: métodos y consejos.

"active_primary_shards" : 0,

"active_shards" : 0,

"relocating_shards" : 0,

"initializing_shards" : 0,

"unassigned_shards" : 0,

"delayed_unassigned_shards" : 0,

Clases de direcciones IP: A

"number_of_pending_tasks" : 0,

"number_of_in_flight_fetch" : 0,

"task_max_waiting_in_queue_millis" : 0,

"active_shards_percent_as_number" : 100.0

}

Las líneas importantes a tener en cuenta son:

"status" : "green",

"timed_out" : false,

"number_of_nodes" : 2,

"number_of_data_nodes" : 2,

También puedes verificar los nodos desde el controlador con el siguiente comando (ejecutado en el controlador):

curl -XGET '192.168.1.81:9200/_nodes/?pretty'

Asegúrate de sustituir la dirección IP anterior por la de tu nodo Elasticsearch. También puedes abrir un navegador y dirigirte a http://SERVIDOR:9200 (donde SERVIDOR es la dirección IP de tu controlador) para ver una salida similar a la de la Figura A.

Figura A

Cómo crear un cluster de Elasticsearch para visualizar grandes cantidades de datos - Redes | Imagen 1 Newsmatic

Felicidades, ahora tienes un clúster de Elasticsearch en funcionamiento y listo para que tus desarrolladores lo utilicen en la visualización de datos.

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Redes, allí encontraras muchos artículos similares a Cómo crear un cluster de Elasticsearch para visualizar grandes cantidades de datos , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.