Búsqueda de sitios web

Motores de análisis: Elasticsearch 5.4 en Ubuntu 16.04


Elasticsearch: un motor de análisis distribuido

Elasticsearch es un motor de análisis y búsqueda de texto completo, de código abierto y altamente escalable. Es parte de un stack completo llamado Elastic Stack. Le permite almacenar y analizar datos, incluso en grandes volúmenes, con rendimientos casi en tiempo real. Este potente motor de análisis admite operaciones RESTful, por lo que es posible utilizar todos los métodos HTTP en combinación con URI HTTP para la gestión de datos. Otra ventaja es la opción de utilizar diferentes lenguajes de programación con Elasticsearch, como Python o JavaScript.

Una tienda web en línea es un gran ejemplo de un proyecto que podría beneficiarse de Elasticsearch. Es posible utilizar Elasticsearch para almacenar todo el catálogo e inventario de productos, proporcionando funcionalidades de "búsqueda" y "sugerencias de autocompletar".

La gran escalabilidad de Elastisearch también le permite ejecutarse en una computadora portátil o en un grupo de servidores con petabytes de datos.

Objetivos

En este tutorial veremos cómoinstalar Elasticsearch en un servidor que ejecuta Ubuntu 16.04.

Requisitos previos

  • Un servidor que ejecuta Ubuntu 16.04.
  • Oracle JDK 8 instalado en el servidor.

Instalar elastisearch

Elasticsearch se proporciona en diferentes formatos:

.zip

,

.tar.gz

,

.deb

,

.rpm

,

docker

. En esta guía utilizaremos el

.deb

paquete.

Importar clave de Elasticsearch

Descargue e instale la clave de firma pública de Elasticsearch ejecutando el siguiente comando:

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

Instale Elasticsearch desde el repositorio

Antes de continuar con el proceso de instalación, necesitaremos instalar el

paquete :

sudo apt-get install apt-transport-https

A continuación, guardaremos la definición del repositorio con el siguiente comando:

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

Instalar Elasticsearch con

apt

:

sudo apt-get update && sudo apt-get install elasticsearch

Habilite Elasticsearch para comenzar en el momento del arranque:

sudo systemctl enable elasticsearch

Configurar la búsqueda elástica

Los archivos de configuración de Elasticsearch se almacenan en el

/etc/elasticsearch

directorio. En particular, los principales archivos de configuración son:

  • elasticsearch.yml

    para configurar la parte del lado del servidor de este potente motor de análisis.

  • para configurar el registro.

Los archivos de configuración utilizan el formato YAML.

Elasticsearch requiere muy poca configuración; sin embargo, hay una serie de ajustes que deben configurarse antes de comenzar a utilizarlo.

Abre el

elasticsearch.yml

archivo de configuración con un editor de texto:

sudo vim /etc/elasticsearch/elasticsearch.yml

Aquí busca

cluster.name

variables.

---------------------------------- Cluster -----------------------------------
#
Use a descriptive name for your cluster:
#
#cluster.name: my-application
#

Descomentar la línea en negrita y cambiar

my-application

con un nombre de clúster, por ejemplo:

cluster.name: MyCluster

Nota: un nodo puede unirse a un clúster cuando comparte su nombre.clúster con todos los demás nodos del clúster. Estar seguro de que

cluster.name

describe el propósito del clúster.

A continuación, cambie el

node.name

variable. Como arriba, descomente la línea y cambie su valor:

------------------------------------ Node ------------------------------------
#
Use a descriptive name for the node:
#
node.name: node-1
#

Estas son las configuraciones mínimas requeridas para ejecutar Elasticsearch. Por supuesto, hay más detalles que resolver para implementar este sistema en un grupo de servidores.

Guarde y cierre el archivo, luego inicie Elasticsearch:

sudo systemctl start elasticsearch

Prueba de búsqueda elástica

Podemos probar Elasticsearch ejecutando el siguiente comando:

curl -X GET 'http://localhost:9200'

Debería mostrar algo como esto:

{
 "name" : "node-1",
 "cluster_name" : "MyCluster",
 "cluster_uuid" : "WqXLC-cUT5-bSVyisNRIgQ",
 "version" : {
 "number" : "5.4.1",
 "build_hash" : "2cfe0df",
 "build_date" : "2017-05-29T16:05:51.443Z",
 "build_snapshot" : false,
 "lucene_version" : "6.5.1"
 },
 "tagline" : "You Know, for Search"
}

Esto significa que Elasticsearch se está ejecutando correctamente.

Conclusión

Esto concluye la configuración básica de Elasticsearch. ¡Mira lo fácil que puede ser instalar este motor de análisis en un servidor Ubuntu 16.04!

Artículos relacionados: