ElasticSearch, instala este servidor de búsqueda en Ubuntu

marzo 04, 2018 , 0 Comments

about ElasticSearch

En el siguiente artículo vamos a echar un vistazo a ElasticSearch. Se trata de un servidor de búsqueda full-text basado en Lucene. En esta publicación rápida, veremos cómo podemos instalar una de las plataformas de indexación y búsqueda de texto más populares en Ubuntu, y comenzar a usarla.

Este servidor de búsqueda nos provee de un motor de búsqueda de texto completo, distribuido, con con una interfaz web RESTful y con documentos JSON. Elasticsearch está desarrollado en Java y está publicado como código abierto bajo las condiciones de la licencia Apache.

Base de datos ElasticSearch

Elasticsearch nos da la posibilidad de utilizar una de las bases de datos NoSQL más populares que vamos a poder utilizar para almacenar y buscar datos basados en texto. Se basa en la tecnología de indexación de Lucene y permite la recuperación de búsquedas en milisegundos en función de los datos indexados. Es compatible con consultas de bases de datos a través de API REST. Esto significa que podemos usar llamadas HTTP simples y usar métodos HTTP como GET, POST, PUT, DELETE, etc. para acceder a los datos.

Para instalar Elasticsearch en Ubuntu, primero debemos instalar Java en nuestro sistema operativo. Podremos verificar si tenemos Java instalado utilizando el siguiente comando en la terminal (Ctrl+Alt+T):

java -version

Cuando ejecutamos este comando, si obtenemos el resultado que se muestra en la siguiente captura, será por que no está instalado Java en nuestro equipo:

Java version elasticsearch

Si este es nuestro caso, podremos instalar Java siguiendo el artículo que dejó un compañero en su día en este blog o utilizando los siguientes comandos en nuestra terminal (Ctrl+Alt+T):

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update && sudo apt-get install oracle-java8-installer

Una vez que se ejecutan estos comandos, podemos verificar nuevamente que Java ahora está instalado utilizando el mismo comando que probamos anteriormente.

Instalando ElasticSearch

Ahora, la instalación de ElasticSearch es solo una cuestión de unos pocos comandos. Para comenzar vamos a descargar el paquete .deb de ElasticSearch desde su página web. En la terminal (Ctrl+Alt+T) solo tendremos que escribir el siguiente comando:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.2.deb

Cuando ejecutamos el comando anterior, veremos un resultado como este:

descarga paquete deb elasticsearch

Una vez terminada la descarga ya podremos instalar el archivo utilizando el comando dpkg:

instalacioń elasticsearch

sudo dpkg -i elasticsearch-1.7.2.deb

Los archivos de configuración para ElasticSearch se almacenarán en la ruta /etc/elasticsearch. Para asegurarse de que se inicia y detiene con la máquina, ejecuta el siguiente comando:

sudo update-rc.d elasticsearch defaults

Configurando ElasticSearch

Llegados a este punto ya tenemos una instalación activa de Elasticsearch. Para usarlo de manera efectiva, podemos hacer algunos cambios importantes en la configuración. Ejecuta el siguiente comando para abrir el archivo de configuración correspondiente:

sudo nano /etc/elasticsearch/elasticsearch.yml

En el archivo vamos a modificar node.name y cluster.name en el archivo elasticsearch.yml. Recuerda eliminar el # antes de cada línea que queremos editar para desmarcarlo como comentario.

Configuración elasticsearch

Una vez que terminemos las modificaciones guardaremos el archivos y volveremos a la terminal. Ahora es el momento de iniciar el servidor ElasticSearch por primera vez. Para ello escribimos en la terminal:

sudo service elasticsearch start

Cuando ya esté iniciado el servidor verificaremos el estado del servicio escribiendo en la terminal:

status elasticsearch

Usando ElasticSearch

Ahora que ElasticSearch ha comenzado a funcionar en nuestro equipo, podemos empezar a utilizarlo. Para ver los detalles de la instancia y la información del clúster, ejecuta el siguiente comando:

curl GET elasticsearch

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

Puede que tengas que instalar curl. Para hacerlo, usa el siguiente comando:

sudo apt install curl

Ahora, podemos intentar insertar algunos datos en ElasticSearch utilizando el siguiente comando:

curl -X POST 'http://localhost:9200/entreunosyceros/hola/1' -H 'Content-Type: application/json' -d '{ "name" : "entreunosyceros" }'

Cuando ejecutamos este comando, obtenemos el siguiente resultado:

POST ElasticSearch

Insertados datos, vamos a probar a obtener los que acabamos de insertar:

curl -X GET 'http://localhost:9200/entreunosyceros/hola/1'

Cuando ejecutamos este comando, obtenemos el siguiente resultado:

Get ElasticSearch

En esta publicación solo intento mostrar cómo podemos instalar ElasticSearch y ejecutar consultas básicas en él, pero tiene un montón más de posibilidades que podremos descubrir por nuestra cuenta o en la documentación oficial.

El artículo ElasticSearch, instala este servidor de búsqueda en Ubuntu ha sido originalmente publicado en Ubunlog.


Some say he’s half man half fish, others say he’s more of a seventy/thirty split. Either way he’s a fishy bastard.