GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar Elasticsearch en CentOS 7

Elasticsearch es un motor de análisis y búsqueda de texto completo distribuido de código abierto. Admite operaciones RESTful y le permite almacenar, buscar y analizar grandes volúmenes de datos en tiempo real. Elasticsearch es uno de los motores de búsqueda más populares que impulsa aplicaciones que tienen requisitos de búsqueda complejos, como grandes tiendas de comercio electrónico y aplicaciones analíticas.

Este tutorial explica cómo instalar Elasticsearch en CentOS 7.

Requisitos previos #

El usuario con el que inició sesión debe tener privilegios sudo para poder instalar paquetes.

Instalando Elasticsearch #

La forma recomendada de instalar Elasticsearch en CentOS 7 es instalando el paquete rpm desde el repositorio oficial de Elasticsearch.

Al momento de escribir este artículo, la última versión de Elasticsearch es 6.7 y requiere Java 8 o posterior.

Para instalar OpenJDK8 en su sistema CentOS, escriba:

sudo yum install java-1.8.0-openjdk-devel

Verifique la instalación de Java imprimiendo la versión de Java:

java -version

La salida debería verse así:

openjdk version "1.8.0_201"
OpenJDK Runtime Environment (build 1.8.0_201-b09)
OpenJDK 64-Bit Server VM (build 25.201-b09, mixed mode)

Ahora que Java está instalado, el siguiente paso es agregar el repositorio de Elasticsearch.

Importa la clave GPG del repositorio usando el siguiente comando:

sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

Abra su editor de texto y cree el siguiente archivo de repositorio:

sudo nano /etc/yum.repos.d/elasticsearch.repo

Pegue el siguiente contenido en el archivo:

/etc/yum.repos.d/elasticsearch.repo
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

Guarde el archivo y cierre su editor de texto.

Si desea instalar una versión anterior de Elasticsearch, cambie 6.x en el comando anterior con la versión que necesita.

Ahora puede instalar el paquete de Elasticsearch escribiendo:

sudo yum install elasticsearch

Una vez que se complete el proceso de instalación, inicie y habilite el servicio ejecutando:

sudo systemctl enable elasticsearch.servicesudo systemctl start elasticsearch.service

Puede verificar que Elasticsearch se está ejecutando enviando una solicitud HTTP al puerto 9200 en localhost con el siguiente comando curl:

curl -X GET "localhost:9200/"

El resultado será similar al siguiente:

{
  "name" : "fLVNqN_",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "6zKcQppYREaRH0tyfJ9j7Q",
  "version" : {
    "number" : "6.7.0",
    "build_flavor" : "default",
    "build_type" : "rpm",
    "build_hash" : "8453f77",
    "build_date" : "2019-03-21T15:32:29.844721Z",
    "build_snapshot" : false,
    "lucene_version" : "7.7.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

El servicio puede tardar entre 5 y 10 segundos en iniciarse. Si ve curl: (7) Failed to connect to localhost port 9200: Connection refused , espera unos segundos y vuelve a intentarlo.

Para ver los mensajes registrados por el servicio Elasticsearch, puede usar el siguiente comando:

sudo journalctl -u elasticsearch

En este punto, tiene instalado Elasticsearch en su servidor CentOS.

Configurando Elasticsearch #

Los datos de Elasticsearch se almacenan en /var/lib/elasticsearch directorio, los archivos de configuración se encuentran en /etc/elasticsearch .

De manera predeterminada, Elasticsearch está configurado para escuchar solo en localhost. Si el cliente que se conecta a la base de datos también se ejecuta en el mismo host y está configurando un clúster de un solo nodo, no necesita cambiar el archivo de configuración predeterminado.

Acceso Remoto #

Elasticsearch, listo para usar, no implementa la autenticación, por lo que cualquiera que pueda acceder a la API HTTP puede acceder a él. Si desea permitir el acceso remoto a su servidor de Elasticsearch, deberá configurar su firewall y permitir el acceso al puerto 9200 de Elasticsearch solo desde clientes de confianza.

A partir de CentOS 7, FirewallD reemplaza a iptables como la herramienta de administración de firewall predeterminada.

Ejecute el siguiente comando para permitir la evaluación desde la dirección IP remota de confianza en el puerto 9200 :

sudo firewall-cmd --new-zone=elasticsearch --permanentsudo firewall-cmd --reloadsudo firewall-cmd --zone=elasticsearch --add-source=192.168.121.80/32 --permanentsudo firewall-cmd --zone=elasticsearch --add-port=9200/tcp --permanentsudo firewall-cmd --reload
No olvides cambiar 192.168.121.80 con su dirección IP remota.

Más adelante, si desea permitir el acceso desde otra dirección IP, use:

sudo firewall-cmd --zone=elasticsearch --add-source=<IP_ADDRESS> --permanentsudo firewall-cmd --reload

Una vez que el firewall está configurado, el siguiente paso es editar la configuración de Elasticsearch y permitir que Elasticsearch escuche las conexiones externas.

Para hacerlo, abra el elasticsearch.yml archivo de configuración:

sudo nano /etc/elasticsearch/elasticsearch.yml

Busque la línea que contiene network.host , descoméntelo y cambie el valor a 0.0.0.0 :

/etc/elasticsearch/elasticsearch.yml
network.host: 0.0.0.0

Si tiene varias interfaces de red en su máquina, puede especificar la dirección IP de la interfaz que hará que Elasticsearch escuche solo en la interfaz especificada.

Reinicie el servicio Elasticsearch para que los cambios surtan efecto:

sudo systemctl restart elasticsearch

Eso es todo. Ahora puede conectarse al servidor de Elasticsearch desde su ubicación remota.


Cent OS
  1. Cómo instalar PHP 7, 7.2 y 7.3 en CentOS 7

  2. Cómo instalar Java 11 y 12 en CentOS 7

  3. Cómo instalar Graylog2 en CentOS 7 / RHEL 7

  4. Cómo instalar Elasticsearch en CentOS 8 / RHEL 8

  5. Cómo instalar Elasticsearch en CentOS/RHEL 8

Cómo instalar R en CentOS 8

Cómo instalar Graylog con Elasticsearch en CentOS 8

Cómo instalar Graylog en CentOS 8 / RHEL 8

Cómo instalar Graylog 3.0 en CentOS 7 / RHEL 7

Cómo instalar Graylog en CentOS 7

Cómo instalar ELK Stack en CentOS 7