Conceptos básicos de Elasticsearch (2): instalación e implementación de Elasticsearch en Windows y Liunx

Prefacio

Este artículo se basa en el documento oficial: La instalación de Elasticsearch
se basa en varios métodos de instalación oficiales para diferentes entornos. Este artículo elegirá

  • Instale Elasticsearch con .zip en Windows
    Instale Elasticsearch en Windows usando el archivo .zip

  • Instale Elasticsearch desde un archivo en Linux o MacOS
    Instale Elasticsearch desde un archivo en Linux o macOS

  • Instale Elasticsearch con Docker (este método está por determinar)
    Utilice Docker para instalar Elasticsearch

Insertar descripción de la imagen aquí

1. Implementar Elasticsearch en el entorno Windows

1.1 Descargue y descomprima el paquete comprimido de Elasticsearch

Insertar descripción de la imagen aquí

Descomprímelo con tu herramienta de descompresión favorita. Esto creará una carpeta llamada elasticsearch-7.9.3, a la que nos referiremos como %ES_HOME%. En una ventana de terminal, vaya al directorio %ES_HOME%, por ejemplo:

Configure el directorio de descompresión como el directorio de inicio de es e 在 elasticsearch-7.9.3文件夹地址栏输入cmdingrese la línea de comando
Insertar descripción de la imagen aquí

1.2 Inicie elasticsearch desde la línea de comando

  • Iniciar búsqueda elástica


    Ejecutando Elasticsearch desde la línea de comando. Elasticsearch se puede iniciar desde la línea de comando de la siguiente manera :

    .\bin\elasticsearch.bat
    
  • Página de inicio
    Insertar descripción de la imagen aquí

  • Lanzar página de éxito
    Insertar descripción de la imagen aquí

1.3 Verificar si elasticsearch se inició correctamente

Comprobar que Elasticsearch se está ejecutando
Puede probar que su nodo Elasticsearch se está ejecutando enviando una solicitud HTTP al puerto 9200 en localhost: Comprobar que Elasticsearch se está ejecutando Puede probar que su nodo Elasticsearch se está ejecutando enviando una solicitud HTTP al puerto 9200 en localhost: :

win+r输入cmdDespués de presionar Enter, ingrese la siguiente URL de solicitud

curl -X GET "localhost:9200/?pretty"

Indica inicio exitoso
Insertar descripción de la imagen aquí
o ingrese en la barra de direcciones del navegador:localhost:9200
Insertar descripción de la imagen aquí

1.4 Cerrar Elasticsearch

  • Ctrl+C detiene Elasticsearch


    De forma predeterminada, Elasticsearch se ejecuta en primer plano, imprime sus registros en STDOUT y Ctrl-Cse detener presionando Ctrl-C.

    Insertar descripción de la imagen aquí

  • Verifique si se ha cerrado (cerrar directamente la ventana de línea de comando anterior también puede detener es)
    Insertar descripción de la imagen aquí

1.5 Instalar Elasticsearch como servicio en Windows

Elasticsearch se puede instalar como un servicio para ejecutarse en segundo plano o iniciarse automáticamente en el momento del arranque sin ninguna interacción del usuario. Esto se puede lograr a través del script elasticsearch-service.bat en la carpeta bin\ que permite instalar, eliminar, administrar o configure el servicio y potencialmente inicie y detenga el servicio, todo desde la línea de comandos.
Elasticsearch se puede instalar como un servicio 后台运行或在启动时自动启动, sin ninguna interacción del usuario. Esto se logra a través del script elasticsearch-service.bat en la carpeta bin\, que le permite instalar, eliminar, administrar o configurar el servicio desde la línea de comando y también potencialmente iniciar y detener el servicio.

e:\elasticsearch-7.9.3\bin>elasticsearch-service.bat

Usage: elasticsearch-service.bat install|remove|start|stop|manager [SERVICE_ID]

Insertar descripción de la imagen aquí


El script requiere un parámetro (el comando a ejecutar) seguido de uno opcional que indica la identificación del servicio (útil al instalar múltiples servicios de Elasticsearch) 可选参数. Útil al instalar múltiples servicios de Elasticsearch)

Los siguientes son los comandos disponibles en el script elasticsearch-service.bat y sus descripciones:

Orden describir
instalar Instalar Elasticsearch como servicio
eliminar Elimine el servicio Elasticsearch instalado (detenga el servicio si está iniciado)
comenzar Inicie el servicio Elasticsearch (si está instalado)
detener Detenga el servicio Elasticsearch (si está iniciado)
gerente Abra la interfaz GUI para administrar los servicios instalados
  • Especifique el nombre del servicio a instalar.
    Instalar como servicio. ID del servicio ( 务必唯一): elasticsearch-9200-test
    elasticsearch-service.bat install elasticsearch-9200-test
    
  • Iniciar o detener servicios desde la línea de comando
    • Comienza el servicio
      elasticsearch-service.bat start elasticsearch-9200-test
      
      Insertar descripción de la imagen aquí
    • Fuera de servicio
      elasticsearch-service.bat stop elasticsearch-9200-test
      
      Insertar descripción de la imagen aquí
  • Inicie o detenga el servicio en la página de servicio.
    Win+r y presione Enter e ingrese services.msc para ingresar a la lista de servicios. Haga clic derecho y seleccione Iniciar o Detener.
    Insertar descripción de la imagen aquí
  • Configúrelo para que se inicie automáticamente en el arranque.
    Haga clic con el botón derecho en el nombre del servicio, haga clic en Propiedades y seleccione el tipo de inicio como Automático.
    Insertar descripción de la imagen aquí

2. Implementar Elasticsearch en el entorno Liunx

Instale Elasticsearch 7.17.11 y configure

Este artículo describe cómo descargar e instalar Elasticsearch 7.17.11 en el sistema operativo Linux y realizar las configuraciones necesarias. El proceso de configuración e inicio en centos o unbuntu es básicamente el mismo, pero los scripts para puertos abiertos son diferentes.

1. Descargue la base de datos es y cárguela en el servidor.

Primero, visite la página de descarga de Elasticsearch y descargue Elasticsearch 7.17.11.
Insertar descripción de la imagen aquí
Haga clic en "Descargar" y cargue el archivo descargado en el directorio especificado en el servidor.
Insertar descripción de la imagen aquí

En el servidor, descomprima Elasticsearch usando el siguiente comando:

tar -zxvf elasticsearch-7.17.11-linux-x86_64.tar.gz

Insertar descripción de la imagen aquí

2. Cree usuarios y grupos de Elasticsearch

Cree un usuario llamado "es" y un grupo llamado "es" y agregue el usuario al grupo:

# 新建群组es
 groupadd es
# 新建用户es并指定群组为es
 useradd -g es es
# 设置用户密码 
 passwd es  
# usermod 将用户添加到某个组group
 usermod -aG root es

3. Configuración del sistema

3.1 Modificar el número de identificadores de archivos y subprocesos

Para evitar errores causados ​​por permisos bajos en descriptores de archivos creables propiedad del usuario de Elasticsearch, debe modificar la cantidad de identificadores de archivos y subprocesos. Edite /etc/security/limits.confel archivo y agregue el siguiente contenido:

# 文件句柄
es  soft nofile 65536
es  hard nofile 65536
# 线程
es  soft nproc 4096
es  hard nproc 4096

保存退出后,需要重新启动系统

La configuración anterior es para resolver:

Informe de error: el número máximo de descriptores de archivos [4096] para el proceso de elasticsearch es demasiado bajo, aumente al menos a [65535]
Descripción del problema: el usuario de elasticsearch tiene permisos demasiado bajos para crear descripciones de archivos, se requiere al menos 65536;

3.2 Modificar la memoria virtual

Edite /etc/sysctl.confel archivo y agregue el siguiente contenido:

vm.max_map_count=262144

Después de guardar y salir, actualice el archivo de configuración:

sysctl -p

Verifique si la modificación fue exitosa:

sysctl vm.max_map_count

La configuración anterior es para resolver
el problema de error: las áreas máximas de memoria virtual vm.max_map_count [65530] son ​​demasiado bajas, aumente al menos a [262144]

3.3 Cerrar el espacio de intercambio (Swap)

Recomendación oficial: dé la mitad de la memoria a Lucene + y no exceda los 32G + apague el intercambio.
ES recomienda apagar el espacio de intercambio de la memoria de intercambio y deshabilitar el intercambio. Porque cuando la memoria se intercambia en el disco, una operación de 100 microsegundos puede convertirse en 10 milisegundos, y luego se suma el retraso de la operación de 100 microsegundos. Se puede ver que el intercambio tiene un impacto fatal en el rendimiento.

vim /etc/fstab

El comentario contiene la línea de intercambio.
Insertar descripción de la imagen aquí
Antes del comentario:
Insertar descripción de la imagen aquí

保存退出后需要系统重启!

Después del comentario:
Insertar descripción de la imagen aquí

4. Modificar la configuración de Elasticsearch

Edite el archivo de configuración de Elasticsearch conf/elasticsearch.ymly configúrelo según sus necesidades. A continuación se muestran algunos elementos de configuración de ejemplo:

# 禁用了 es 的机器学习功能(Machine Learning)减少资源消耗
xpack.ml.enabled: false
# 设置 Elasticsearch 集群的名称
cluster.name: es-single
# 设置当前 Elasticsearch 节点的名称
node.name: node
# 数据目录
path.data: /home/es/path/node/data
# 日志目录
path.logs: /home/es/path/node/logs
# 当前主机的 IP
network.host: 192.168.0.10
# 暴露的 HTTP 端口
http.port: 11700
# 暴露的 Transport 端口
transport.port: 11710
# 设置节点发现的种子主机列表
discovery.seed_hosts: ["192.168.0.10:11710"]
# 设置初始的主节点列表,新节点将联系这些主节点以加入集群
cluster.initial_master_nodes: ["node"]

5. Establecer permisos de directorio

Establezca el usuario y grupo al que pertenece el directorio de datos de Elasticsearch:

chown -R es:es /mnt/data/elasticsearch-7.17.11

6. Inicie el servicio Elasticsearch.

注意当前目录是在 ../elasticsearch-7.17.11

Cree un script para iniciar y detener el servicio Elasticsearch:

comienza-single.sh

#!/bin/bash
cd "$(dirname "$0")"
# -d:后台(daemon)方式运行 Elasticsearch
./bin/elasticsearch -d -p pid

stopes-single.sh

#!/bin/bash
cd "$(dirname "$0")"
if [ -f "pid" ]; then
  pkill -F pid
fi

Otorgue permisos de ejecución a estos dos scripts:

chmod 755 startes-single.sh stopes-single.sh
chown es:es startes-single.sh stopes-single.sh

Luego, inicie el servicio Elasticsearch como usuario de Elasticsearch:

su - es
cd /mnt/data/elasticsearch-7.17.11
./startes-single.sh

7. Abrir puertos de firewall

CentOS

# 查看防火墙状态
systemctl status firewalld
# 查看开放的端口
firewall-cmd --query-port=9200/tcp
# 添加端口
firewall-cmd --zone=public --add-port=9200/tcp --permanent
# 重载防火墙
firewall-cmd --reload
# 再次查看端口是否已经开放
firewall-cmd --query-port=9200/tcp

ubuntu

# 查看防火墙状态
sudo ufw status
# 开放端口 9200
sudo ufw allow 9200/tcp
# 查看已添加的规则
sudo ufw status numbered
# 查看防火墙状态
sudo ufw status

Supongo que te gusta

Origin blog.csdn.net/qq_29864051/article/details/131446118
Recomendado
Clasificación