Cómo instalar OpenSearch en Debian 11

OpenSearch es un proyecto de Amazon impulsado por la comunidad y una bifurcación de Elasticsearch y Kibana. Se trata de un motor de búsqueda y una suite de análisis totalmente de código abierto, con ricas características y una funcionalidad innovadora. El componente principal del proyecto OpenSearch es OpenSearch (una bifurcación de Elasticsearch) y OpenSearch Dashboards (una bifurcación de Kibana). Ambos componentes proporcionan funciones como seguridad empresarial, alertas, aprendizaje automático, SQL, gestión del estado de los índices y mucho más.

OpenSearch es 100% de código abierto y tiene licencia Apache 2.0. Te permite ingestar, proteger, buscar, agregar, visualizar y analizar datos fácilmente para una serie de casos de uso, como el análisis de registros, la búsqueda de aplicaciones, la búsqueda empresarial, etc.

En este tutorial, desplegarás OpenSearch -una suite de búsqueda, análisis y visualización de código abierto- en el servidor Debian 11. Este proceso incluye la descarga del paquete OpenSearch y su instalación manual en tu sistema Debian. También configurarás certificados SSL/TLS seguros para OpenSearch y asegurarás el despliegue con autenticación y autorización.

Además, también desplegarás e instalarás OpenSearch Dashboards -una herramienta de visualización de código abierto- y la configurarás con OpenSearch. Al final, tendrás la suite de análisis y visualización de datos instalada en tu servidor Debian y tendrás que enviar tus datos a través de herramientas como fluentd, Logstash, filebeat y muchas más.

Prerequisitos

Para completar esta guía, debes tener los siguientes requisitos:

  • Un servidor con Debian 11 instalado y al menos 8 GB de RAM. Este ejemplo utiliza un sistema Debian con el nombre de host«nodo1» y la dirección IP local«192.168.5.50«.
  • Un usuario no root con privilegios de administrador sudo/root.

Si estos requisitos están listos, ya puedes iniciar la instalación de OpenSearch.

Configurar el sistema

En el primer paso, configurarás y optimizarás tu servidor Debian para la instalación de OpenSearch. Configurarás el nombre de host y el fqdn del sistema, desactivarás la paginación de memoria y el swap, y aumentarás el número máximo de mapas de memoria.

Desactivar la paginación y el intercambio de memoria en el host de OpenSearch mejorará el rendimiento. Para los mapas de memoria máximos, necesitarás establecer un número de al menos‘262144‘ para producción.

Ejecuta el siguiente comando ‘hostnamectl’ para configurar el nombre de host del sistema. A continuación, añade la configuración fqdn al archivo‘/etc/hosts‘. En este ejemplo, el nombre de host debe ser«nodo1» con fqdn«nodo1.hwdomain.lan«.

sudo hostnamectl set-hostname node1
echo "192.168.5.50  node1.hwdomain.lan  node1" >> /etc/hosts

Ahora comprueba el fqdn de tu servidor mediante el siguiente comando hostname. En el ejemplo, el fqdn del servidor debe ser ‘nodo1.hwdomain.lan’.

hostname -f

Salida:

configurar fqdn

A continuación, tendrás que desactivar la swap en tu sistema. Tanto si utilizas el intercambio a través de una partición como de un archivo, la configuración del intercambio se almacena en el archivo‘/etc/fstab‘.

Ejecuta el siguiente comando para desactivar la swap en tu sistema. El comandosed’ desactivará aquí el swap permanentemente a través del archivo ‘ /etc/fstab‘ añadiendo el commend‘#‘ al principio de la configuración de swap de la línea. El comando «swapoff» desactivará el intercambio en la sesión actual.

sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
sudo swapoff -a

Comprueba el estado del intercambio mediante el comando siguiente. Si está desactivado, deberías obtener una salida‘0’ en la sección swap.

free -m

Salida:

desactivar intercambio

Por último, añadirás la configuración al archivo‘/etc/sysctl.conf ‘ para aumentar los mapas de memoria máximos de tu sistema.

Ejecuta el siguiente comando para añadir el parámetro‘vm.max_map_count=262144‘ al archivo ‘/etc/sysctl.conf’. A continuación, aplica los cambios mediante el comando«sysctl -p«.

sudo echo "vm.max_map_count=262144" >> /etc/sysctl.conf
sudo sysctl -p

Verifica los mapas de memoria máxima ejecutando el siguiente comando. Si se ejecuta correctamente, tu mapa de memoria máxima debería ser«262144«.

cat /proc/sys/vm/max_map_count

Resultado:

configuración vmmax

Con tu sistema configurado y optimizado, estás listo para instalar OpenSearch sobre él.

Descargar OpenSearch

OpenSearch se puede instalar de muchas formas. En este ejemplo, instalarás OpenSearch mediante un Tarball. En este paso, crearás un nuevo usuario de sistema dedicado ‘opensearch’, descargarás el paquete tarball de OpenSearch y, a continuación, configurarás el directorio de instalación de OpenSearch con los permisos y la propiedad correctos.

En primer lugar, añade el nuevo usuario de sistema «opensearch» utilizando el siguiente comando.

sudo adduser --system --shell /bin/bash -U 10001 --no-create-home opensearch

Añade un nuevo grupo ‘opensearch‘ utilizando el comando groupadd que aparece a continuación. A continuación, añade el usuario de sistema ‘opensearch‘ al grupo ‘opensearch‘ mediante el comando usermod.

sudo groupadd opensearch
sudo usermod -aG opensearch opensearch

Ahora crea un nuevo directorio personal «/home/opensearch» y cambia la propiedad del directorio personal«/home/opensearch» al usuario «opensearch«.

mkdir -p /home/opensearch
sudo chown -R opensearch /home/opensearch

Salida:

configurar usuario y grupo

A continuación, descarga el paquete OpenSource mediante el comando wget. Una vez finalizada la descarga, extrae el archivo mediante el siguiente comando tar. En este ejemplo, instalarás OpenSearch 2.4.1. Consulta la última versión de OpenSearch en la página oficial de descargas.

wget https://artifacts.opensearch.org/releases/bundle/opensearch/2.4.1/opensearch-2.4.1-linux-x64.tar.gz
tar xf opensearch-2.4.1-linux-x64.tar.gz

Una vez extraído el paquete OpenSearch, mueve el directorio extraído a ‘/opt/opensearch’. Éste será el directorio principal de instalación de OpenSearch. A continuación, ejecuta el comando chown para cambiar la propiedad del directorio ‘/opt/opesearch’ al usuario‘opensearch‘.

mv opensearch-2.4.1 /opt/opensearch
sudo chown -R opensearch /opt/opensearch

Salida:

descargar opensearch

Ahora que has descargado el paquete OpenSearch, configura el directorio principal de instalación a ‘/opt/opensearch’. A continuación, establecerás y configurarás tu instalación de OpenSearch.

Configurar OpenSearch

En este paso, configurarás OpenSearch para que se ejecute en una dirección IP concreta, se ejecute en un único nodo, actives los plugins de seguridad de OpenSearch y configures la memoria máxima de montón para el proceso OpenSearch. Todo esto se puede hacer editando el archivo de configuración de OpenSearch ‘/opt/opensearch/config/opensearch.yml’ y el archivo de opciones JVM de OpenSearch ‘config/jvm.options’.

Mueve el directorio de trabajo a‘/opt/opensearch‘ mediante el comando cd.

cd /opt/opensearch

Abre el archivo de configuración de OpenSearch‘config/opensearch.yml’ utilizando el comando nano del editor.

sudo nano config/opensearch.yml

Añade las siguientes líneas al archivo.

# Bind OpenSearch to interface or IP address
network.host: 192.168.5.50

# OpenSearch deployment type
discovery.type: single-node

# Re-enable security plugins
plugins.security.disabled: false

Guarda y sal del archivo ‘config/opensearch.yml‘ cuando hayas terminado.

opensearch runing

Detalla los parámetros:

  • El parámetro ‘network.host’ se utiliza para vincular OpenSearch a una dirección IP concreta. En este ejemplo, OpenSearch se ejecutará en la dirección IP interna‘192.168.5.50‘.
  • El parámetro ‘discovery.type: single-node‘ se utiliza cuando quieres desplegar OpenSearch en un único nodo.
  • El parámetro‘plugins.security.disabled‘ se establece en‘false‘, lo que significa que se activará el plugin de seguridad para OpenSearch.

A continuación, abre el archivo‘config/jvm.options‘ utilizando el siguiente comando del editor nano.

sudo nano config/jvm.options

Ajusta la memoria heap máxima para el proceso OpenSearch. Este ajuste depende de la memoria disponible o RAM de tu servidor. Este ejemplo asignará 2GB de memoria para OpenSearch.

-Xms2g
-Xmx2g

Guarda y sal del archivo‘config/jvm.options‘ cuando hayas terminado.

max memoria heap opensearch

Por último, ejecuta el siguiente comando para configurar una variable de entorno‘OPENSEARCH_JAVA_HOME‘ en tu sesión actual. El paquete OpenSearch incluye los paquetes java y JDK necesarios, que están disponibles en el directorio ‘/opt/opensearch/jdk’.

export OPENSEARCH_JAVA_HOME=/opt/opensearch/jdk
echo $OPENSEARCH_JAVA_HOME

Una vez finalizadas las configuraciones básicas de OpenSearch. a continuación, generarás los certificados TLS y asegurarás el despliegue de OpenSearch.

Generar certificados TLS

En este paso, generarás varios certificados que se utilizarán para asegurar el despliegue de OpenSearch. Asegurarás las comunicaciones de nodo a nodo con certificados TLS y asegurarás el tráfico de la capa REST entre las comunicaciones cliente-servidor mediante TLS.

A continuación se muestra la lista de certificados que se generarán:

  • Certificados de CA raíz: Estos certificados se utilizarán para firmar otros certificados.
  • Certificados deadministrador: Estos certificados se utilizarán para obtener derechos administrativos para realizar todas las tareas relacionadas con el plugin de seguridad.
  • Certificados deNodo y Cliente: Estos certificados serán utilizados por los nodos y clientes dentro del cluster OpenSearch.

Antes de empezar, ejecuta el siguiente comando para crear un nuevo directorio‘/opt/opensearch/config/certs‘, y mueve tu directorio de trabajo a él. Este directorio se utilizará para almacenar los certificados TLS.

mkdir -p /opt/opensearch/config/certs; cd /opt/opensearch/config/certs

Generar certificados de CA raíz

Genera una clave privada para los certificados de CA raíz utilizando lo que se indica a continuación.

openssl genrsa -out root-ca-key.pem 2048

Ahora genera un certificado CA raíz autofirmado mediante el siguiente comando. También puedes cambiar los valores del parámetro‘-subj‘ con tu información.

openssl req -new -x509 -sha256 -key root-ca-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=ROOT" -out root-ca.pem -days 730

Con esto, deberías obtener la clave privada de la CA raíz‘root-ca-key. pem‘ y el certificado de la CA raíz ‘root-ca.pem‘.

Salida:

generar certificados ca raíz

Generar certificados de administrador

Genera la nueva clave privada del certificado admin ‘admin-key-temp.pem’ utilizando el siguiente comando.

openssl genrsa -out admin-key-temp.pem 2048

Convierte la clave privada admin por defecto al formato PKCS#8. Para la aplicación Java, tienes que convertir la clave privada por defecto a un algoritmo compatible con PKCS#12 (3DES). Con esto, tu clave privada admin debería ser‘admin-key.pem‘.

openssl pkcs8 -inform PEM -outform PEM -in admin-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out admin-key.pem

A continuación, ejecuta el siguiente comando para generar la CSR (Solicitud de Firma de Certificado) del administrador a partir de la clave privada «admin-key.pem». El CSR generado debería ser el archivo«admin.csr«.

Como este certificado se utiliza para autenticar el acceso elevado y no está vinculado a ningún host, puedes utilizar cualquier cosa en la configuración‘CN‘.

openssl req -new -key admin-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=A" -out admin.csr

Por último, ejecuta el siguiente comando para firmar el CSR admin con el certificado CA raíz y la clave privada. El resultado del certificado de administrador es el archivo«admin.pem«.

openssl x509 -req -in admin.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out admin.pem -days 730

Tu certificado de administrador debe ser ahora el archivo ‘admin.pem’, que está firmado con los certificados de la CA raíz. Y la clave privada admin es ‘admin-key.pem‘, que se convierte al formato PKCS#8.

Salida:

generar certificados de administrador

Generación de certificados de nodo

El proceso de generación de certificados de nodo es similar al de los certificados admin. Pero puedes especificar el valor CN con el nombre de host o la dirección IP de tu nodo.

Genera la clave privada del nodo utilizando el siguiente comando.

openssl genrsa -out node1-key-temp.pem 2048

Convierte la clave privada del nodo al formato PKCS#8. Tu clave privada de nodo debería ser ahora‘clave-nodo1.pem‘.

openssl pkcs8 -inform PEM -outform PEM -in node1-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out node1-key.pem

A continuación, crea una nueva CSR para el certificado del nodo. Asegúrate de cambiar el valor‘CN‘ por el nombre de host de tu nodo. Este certificado está vinculado a hosts, y debes especificar el valor CN con el nombre de host o la dirección IP de tu nodo OpenSearch.

openssl req -new -key node1-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=node1.hwdomain.lan" -out node1.csr

Antes de firmar el certificado del nodo, ejecuta el siguiente comando para crear un archivo de extensión SAN‘nodo1.ext‘. Éste contendrá el nombre de host o FQDN del nodo o la dirección IP

echo 'subjectAltName=DNS:node1.hwdomain.lan' > node1.ext

Por último, firma el archivo CSR del certificado del nodo con el certificado de la CA raíz y el privado utilizando el siguiente comando.

openssl x509 -req -in node1.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out node1.pem -days 730 -extfile node1.ext

Con esto, tu certificado de nodo es un archivo ‘nodo1.pem‘ y la clave privada es‘nodo1-key.pem‘.

Salida:

generar certificados de nodo

Configurar certificados

Ejecuta el siguiente comando para eliminar el certificado temporal, el CSR y el archivo de extensión SAN.

rm *temp.pem *csr *ext
ls

listar certificados

Convierte el certificado de la CA raíz al formato .crt.

openssl x509 -outform der -in root-ca.pem -out root-ca.crt

Añade el certificado de la CA raíz a tu sistema Debian utilizando el siguiente comando. Copia el archivo root-ca.crt en el directorio ‘/usr/local/share/ca-certificates/‘ y carga el nuevo certificado CA raíz en tu sistema.

sudo cp root-ca.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates

La salida«1 añadido» confirma que los nuevos certificados CA raíz se han añadido a tu sistema.

convertir añadir certificado ca raíz

Por último, ejecuta el siguiente comando para configurar el permiso y la propiedad adecuados de tus certificados. La propiedad del directorio ‘/opt/opensearch/config/certs‘ debe ser del usuario‘opensearch‘ con permiso 0700. Y para todos los archivos de certificados, el permiso debe ser 0600.

sudo chown -R opensearch /opt/opensearch/config/certs
sudo chmod 0700 /opt/opensearch/config/certs
sudo chmod 0600 /opt/opensearch/config/certs/*.pem
sudo chmod 0600 /opt/opensearch/config/certs/*.crt

configurar certificados de propiedad

Añadir certificados TLS a OpenSearch

Con los certificados TLS generados, están la CA raíz, los certificados de administrador y los certificados de nodo. A continuación, añadirás los certificados al archivo de configuración de OpenSearch ‘/opt/opensearch/config/opensearch.yml’. En este ejemplo, crearás un nuevo script bash que añadirá los certificados y la configuración del plugin de seguridad TLS a OpenSearch.

Crea un nuevo archivo‘add.sh‘ utilizando el siguiente comando del editor nano.

nano add.sh

Añade las siguientes líneas al archivo. Asegúrate de cambiar y utilizar la ruta correcta de tus archivos de certificado y del archivo de configuración de OpenSearch de destino.

#! /bin/bash
# Before running this script, make sure to replace the /path/to your OpenSearch directory,
# and remember to replace the CN in the node's distinguished name with a real
# DNS A record.

echo "plugins.security.ssl.transport.pemcert_filepath: /opt/opensearch/config/certs/node1.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.transport.pemkey_filepath: /opt/opensearch/config/certs/node1-key.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.transport.pemtrustedcas_filepath: /opt/opensearch/config/certs/root-ca.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.enabled: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.pemcert_filepath: /opt/opensearch/config/certs/node1.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.pemkey_filepath: /opt/opensearch/config/certs/node1-key.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.pemtrustedcas_filepath: /opt/opensearch/config/certs/root-ca.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.allow_default_init_securityindex: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.authcz.admin_dn:" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "  - 'CN=A,OU=UNIT,O=ORG,L=TORONTO,ST=ONTARIO,C=CA'" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.nodes_dn:" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "  - 'CN=node1.dns.a-record,OU=UNIT,O=ORG,L=TORONTO,ST=ONTARIO,C=CA'" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.audit.type: internal_opensearch" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.enable_snapshot_restore_privilege: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.check_snapshot_restore_write_privileges: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.restapi.roles_enabled: [\"all_access\", \"security_rest_api_access\"]" | sudo tee -a /opt/opensearch/config/opensearch.yml

Guarda el archivo y sal de él cuando hayas terminado.

A continuación, haz ejecutable el archivo‘add.sh‘ y ejecútalo. El nuevo plugin de seguridad TLS para OpenSearch debería añadirse al archivo de configuración de OpenSearch‘/opt/opensearch/config/opensearch.yml’.

chmod +x add.sh
./add.sh

Resultado:

añadir tls a opensearch

Si compruebas el archivo de configuración de OpenSearch ‘ /opt/opensearch/config/opensearch.yml’, deberías ver los nuevos ajustes así al final del archivo de configuración.

configuración tls opensearch

Llegados a este punto, ya has añadido certificados TLS a OpenSearch y activado los plugins de seguridad. En el siguiente paso, asegurarás OpenSearch con autenticación y autorización creando un nuevo usuario en OpenSearch.

Crear un usuario en OpenSearch

Antes de empezar, ejecuta el siguiente comando para configurar la variable de entorno‘OPENSEARCH_JAVA_HOME‘ y hacer ejecutables las herramientas de seguridad de OpenSearch.

export OPENSEARCH_JAVA_HOME=/opt/opensearch/jdk
chmod 755 /opt/opensearch/plugins/opensearch-security/tools/*.sh

generar tiene contraseña

Mueve tu directorio de trabajo a‘/opt/opensearch/plugins/opensearch-security/tools‘ y ejecuta el script‘hash.sh‘ para generar una contraseña con hash para OpenSearch.

cd /opt/opensearch/plugins/opensearch-security/tools
./hash.sh

Introduce tu contraseña y copia la contraseña hash generada.

Salida:

generar contraseña hash admin

Ahora vuelve a ejecutar el script ‘hash.sh’ para generar otra contraseña hash que se utilizará para los Tableros de OpenSearch. Introduce la nueva contraseña y copia la contraseña hash generada.

./hash.sh

Tras generar la contraseña hash, configurarás un usuario OpenSearch mediante el archivo de configuración ‘internal_users.yml‘.

Mueve tu directorio de trabajo a‘/opt/opensearch/config/opensearch-security/‘ y abre el archivo ‘ internal_users.yml ‘ utilizando el siguiente comando del editor nano.

cd /opt/opensearch/config/opensearch-security/
sudo nano internal_users.yml

Elimina la configuración de usuario por defecto y sustitúyela por las siguientes líneas. Asegúrate de cambiar la contraseña hash por tu contraseña generada. Con esto, crearás dos usuarios OpenSearch, el usuario‘admin‘ y el usuario‘kibanaserver‘ que serán utilizados por los Tableros OpenSearch.

...
...
admin:
   hash: "$2y$12$ChrsBPaDAJsuel.HXFi2Ie2Jn1MpdzXA4Nd1jeyXf65N97RDJc3Ky"
   reserved: true
   backend_roles:
   - "admin"
   description: "Admin user"

kibanaserver:
hash: «$2y$12$wIeuRDp5txoJ3d6.lyybJOPwoRaizuuBvlKKzAGdAiu.I/qaX8hXu»
reserved: true
description: «Demo OpenSearch Dashboards user»

Guarda y sal del archivo‘internal_users.yml‘ cuando hayas terminado.

configurar usuarios opensearch

A continuación, ejecuta el siguiente comando para asegurar la propiedad del directorio de instalación de OpenSearch al usuario ‘opensearch‘. A continuación, inicia sesión como usuario «opensearch«.

sudo chown -R opensearch /opt/opensearch
su - opensearch

Desplázate al directorio‘/opt/opensearch/bin‘ y ejecuta la instalación de OpenSearch. OpenSearch debería ejecutarse ahora en la dirección IP local‘192.168.5.50‘ con el puerto por defecto‘9200‘.

cd /opt/opensearch/bin
./opensearch

Deberías recibir una salida similar a ésta:

iniciar opensearch para aplicar nuevos usuarios

Ahora abre un nuevo terminal, conéctate a tu servidor OpenSearch e inicia sesión como usuario ‘opensearch’.

su - opensearch

Mueve el directorio de trabajo a‘/opt/opensearch/plugins/opensearch-security/tools‘ y ejecuta el script‘securityadmin.sh‘ como se indica a continuación. Asegúrate de cambiar la dirección IP del host OpenSearch y la ruta de los certificados admin.

Esto se conectará al servidor OpenSearch y aplicará los nuevos cambios en los usuarios de OpenSearch que hayas configurado en el archivo‘internal_users.yml‘.

cd /opt/opensearch/plugins/opensearch-security/tools
OPENSEARCH_JAVA_HOME=/opt/opensearch/jdk ./securityadmin.sh -h 192.168.5.50 -p 9200 -cd /opt/opensearch/config/opensearch-security/ -cacert /opt/opensearch/config/certs/root-ca.pem -cert /opt/opensearch/config/certs/admin.pem -key /opt/opensearch/config/certs/admin-key.pem -icl -nhnv

Salida:

aplicar nuevos usuarios

Ahora vuelve al primer terminal y cierra el servidor OpenSearch pulsando la tecla ‘Ctrl+c‘. A continuación, vuelve a ejecutar el servidor OpenSearch.

./opensearch

En este punto, el servidor OpenSearch ya se está ejecutando con un nuevo usuario configurado.

Vuelve a la segunda sesión de terminal y ejecuta el siguiente comando para verificar tu servidor OpenSearch. Con esto, te autentificarás como usuario OpenSearch‘admin‘ y‘kibanaserver‘. Asegúrate también de cambiar la contraseña de cada usuario.

curl https://192.168.5.50:9200 -u admin:password -k
curl https://192.168.5.50:9200 -u kibanaserver:kibanapass -k

Cuando la autenticación se haya realizado correctamente, deberías ver el detalle de tu servidor OpenSearch.

Salida – autenticado como usuario ‘admin

verificar usuario opensearch

Salida – autenticado como usuario‘kibanaserver‘.

verificar opensearch

Con esto, ya has configurado correctamente la autenticación y autorización en el servidor OpenSearch. Ahora vuelve a la primera sesión de terminal y pulsa Ctrl+c en el terminal para el proceso OpenSearch.

En el siguiente paso, configurarás un archivo de servicio systemd que se utilizará para ejecutar el servidor OpenSearch.

Ejecutar OpenSearch como servicio Systemd

En este tutorial, ejecutarás el servidor OpenSearch en el backgorund como un servicio systemd. Para conseguirlo, debes crear un nuevo archivo de servicio systemd, recargar el gestor systemd y, a continuación, ejecutar y activar OpenSearch mediante la utilidad de comandos systemctl.

Crea un nuevo archivo de servicio systemd‘/etc/systemd/system/opensearch.service ‘ utilizando el siguiente comando del editor nano.

sudo nano /etc/systemd/system/opensearch.service

Añade las siguientes líneas al archivo.

[Unit]
Description=OpenSearch
Wants=network-online.target
After=network-online.target
[Service]
Type=forking
RuntimeDirectory=data

WorkingDirectory=/opt/opensearch
ExecStart=/opt/opensearch/bin/opensearch -d

User=opensearch
Group=opensearch
StandardOutput=journal
StandardError=inherit
LimitNOFILE=65535
LimitNPROC=4096
LimitAS=infinity
LimitFSIZE=infinity
TimeoutStopSec=0
KillSignal=SIGTERM
KillMode=process
SendSIGKILL=no
SuccessExitStatus=143
TimeoutStartSec=75

[Install]
WantedBy=multi-user.target

Guarda y cierra el archivo cuando hayas terminado.

A continuación, ejecuta el siguiente comando systemctl para recargar el gestor systemd y aplicar los cambios.

sudo systemctl daemon-reload

A continuación, inicia y activa el servicio OpenSearch mediante el siguiente comando systemctl. Con esto, el servicio OpenSearch debería ejecutarse en segundo plano como un servicio systemd y debería estar habilitado, lo que significa que OpenSearch se iniciará automáticamente al arrancar el sistema.

sudo systemctl start opensearch
sudo systemctl enable opensearch

Salida:

iniciar el servicio opensearch

Ahora verifica el servicio OpenSearch para asegurarte de que se está ejecutando. Deberías ver una salida que indica que el servicio OpenSearch se está ejecutando y que ahora está habilitado.

sudo systemctl status opensearch

Salida:

verificar el servicio opensearch

También puedes verificar el servidor OpenSearch mediante el comando curl para autenticarte contra el OpenSearch.

curl https://192.168.5.50:9200 -u admin:password -k
curl https://192.168.5.50:9200 -u kibanaserver:kibanapass -k

Si OpenSearch se está ejecutando, deberías autenticarte y obtener información detallada sobre tu instalación de OpenSearch.

Para el usuario admin de OpenSearch.

verificar opensearch curl

Para el usuario kibanaserver.

verificar login opensearch

También puedes verificar la lista de puertos abiertos en tu sistema mediante el comando ss que aparece a continuación. Deberías ver que los puertos 9200 y 9300 están abiertos por la aplicación Java, que es el servidor OpenSearch.

ss -tulpn

Salida:

verificar puertos opensearch

Con esto, has terminado la instalación de OpenSearch. Y ahora se está ejecutando en la dirección IP local 192.168.5.50 con el puerto por defecto 9200. Se ejecuta en segundo plano como un servicio systemd y se iniciará automáticamente al arrancar el sistema.

Instalación de los cuadros de mando de OpenSearch

En este paso, descargarás el paquete OpenSearch Dashboards y lo instalarás manualmente mediante un Tarball. También configurarás cómo debe ejecutarse el Tablero OpenSearch y cómo conectarse al servidor OpenSearch mediante nombre de usuario y contraseña.

Descarga el paquete OpenSearch Dashboards mediante el siguiente comando wget.

wget https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.4.1/opensearch-dashboards-2.4.1-linux-x64.tar.gz

Una vez finalizada la descarga, extrae el paquete OpenSearch Dashboards mediante el siguiente comando tar. Deberías obtener un nuevo directorio‘opensearch-dashboards-2.4.1’.

tar xf opensearch-dashboards-2.4.1-linux-x64.tar.gz

descargar opensearch dashboard

Mueve el directorio OpenSearch Dashboard a ‘/opt/opensearch-dashboards‘. A continuación, cambia la propiedad de ese directorio al usuario «opensearch».

mv opensearch-dashboards-* /opt/opensearch-dashboards
sudo chown -R opensearch /opt/opensearch-dashboards

A continuación, mueve tu directorio de trabajo a«/opt/opensearch-dashboards» y abre el archivo de configuración de OpenSearch Dashboards«config/opensearch_dashboards.yml» utilizando el siguiente comando del editor nano.

cd /opt/opensearch-dashboards
sudo nano config/opensearch_dashboards.yml

Descomenta las siguientes líneas y sustituye el valor de cada parámetro por tu configuración. En este ejemplo, ejecutarás OpenSearch Dashboards en el puerto predeterminado«5601» y la dirección IP del servidor«192.168.5.50«.

# OpenSearch Dashboards is served by a back end server. This setting specifies the port to use.
server.port: 5601

# Specifies the address to which the OpenSearch Dashboards server will bind. IP addresses and host names are both valid values.
# The default is ‘localhost’, which usually means remote machines will not be able to connect.
# To allow connections from remote users, set this parameter to a non-loopback address.
server.host: «192.168.5.50»

A continuación, añade las siguientes líneas al final de la línea. Asegúrate de cambiar los parámetros de ‘opensearch.hosts‘,‘opensearch.username‘ y‘opensearch.password‘ con los datos de tu servidor OpenSearch.

opensearch.hosts: [https://192.168.5.50:9200]
opensearch.ssl.verificationMode: none
opensearch.username: kibanaserver
opensearch.password: kibanapass

Guarda y sal del archivo‘config/opensearch_dashboards.yml‘ cuando hayas terminado.

configurar el panel de opensearch

Ahora ya has descargado OpenSearch Dashboard y lo has configurado para conectarte al servidor OpenSearch. A continuación, configurarás un archivo de servicio systemd que se utilizará para ejecutar los Tableros OpenSearch.

Ejecutar los Paneles OpenSearch como servicio Systemd

En este paso, crearás un nuevo servicio systemd que se utilizará para ejecutar los Paneles de OpenSearch.

Crea un nuevo archivo de servicio systemd ‘/etc/systemd/system/opensearch-dashboards.service ‘ utilizando el siguiente comando del editor nano.

sudo nano /etc/systemd/system/opensearch-dashboards.service

Añade las siguientes líneas al archivo.

[Unit]
Description=OpenSearch-Dashboards
Wants=network-online.target
After=network-online.target opensearch.service
[Service]
Type=simple
User=opensearch
Environment=NODE_ENV=production
Environment=CONFIG_PATH=/opt/opensearch-dashboards/config/opensearch_dashboards.yml
WorkingDirectory=/opt/opensearch-dashboards
ExecStart=/opt/opensearch-dashboards/bin/opensearch-dashboards
StandardOutput=journal
StandardError=inherit
Restart=on-failure

[Install]
WantedBy=multi-user.target

Guarda el archivo y sal de él cuando hayas terminado.

A continuación, ejecuta el siguiente comando systemctl para recargar el gestor systemd y aplicar los nuevos cambios.

sudo systemctl daemon-reload

A continuación, inicia y activa el servicio OpenSearch Dashboards mediante el siguiente comando systemctl. Con esto, el servicio OpenSearch Dashboards debería estar ejecutándose y habilitado, lo que significa que el servicio OpenSearch Dashboards se iniciará automáticamente al arrancar el sistema.

sudo systemctl start opensearch-dashboards
sudo systemctl enable opensearch-dashboards

empezar a activar los cuadros de mando de opensearch

Verifica el servicio OpenSearch Dashboards utilizando el siguiente comando.

sudo systemctl status opensearch-dashboards

La salida ‘activo (en ejecución)‘ confirma que el servicio OpenSearch Dashboards está en ejecución. Y la salida ‘...; activado;…‘ confirma que el servicio está activado.

verificar opensearch

Con esto, OpenSearch Dashboards ya se está ejecutando en tu servidor Debian con el archivo de configuración por defecto ‘/opt/opensearch-dashboards/config/opensearch_dashboards.yml‘. Se está ejecutando en el puerto por defecto 5601 con la dirección IP del servidor 192.168.5.50

Acceder a los paneles de OpenSearch

Abre tu navegador web y visita la dirección IP de los Tableros OpenSearch con el puerto 5601 (es decir: http:192.168.5.50:5601). Ahora verás la página de inicio de sesión de OpenSearch Dashboards.

Introduce el nombre de usuario y la contraseña que has creado. En este ejemplo, el usuario es‘kibanaserver‘. A continuación, haz clic en el botón«Iniciar sesión» para confirmar e iniciar sesión en OpenSearch Dashboards.

login opensearch

Si lo consigues, aparecerá la siguiente página con el mensaje «Bienvenido a OpenSearch Dashboards». Ahora puedes hacer clic en «Añadir datos» para añadir nuevos datos a tu servidor OpenSearch o hacer clic en «Explorar los míos» para una configuración posterior.

salpicadero opensearch

A continuación, para asegurarte de que los Cuadros de mando OpenSearch están conectados al servidor OpenSearch, sigue los siguientes pasos:

Haz clic en el menú de la izquierda, desplázate a la sección Gestión y haz clic en‘Herramientas de desarrollo‘.

dev tools opensearch dashboards

Ahora introduce la consulta‘GET /‘ en la consola y pulsa el botón de reproducción. Cuando lo consigas, deberías ver la salida en la parte derecha con información detallada sobre tu servidor OpenSearch. Además, podrás ver en la parte superior derecha el código HTTP‘200 – OK‘ que confirma que la consulta se ha ejecutado sin errores.

opensearch dashboards dev tools verificar servidor opensearch

Con esto, ya has terminado la instalación de OpenSearch Dashboards en el servidor Debian mediante Tarball. Y también has configurado OpenSearch Dashboard para que se conecte al servidor OpenSearch.

Conclusión

En este tutorial, has instalado OpenSearch mediante Tarball en el servidor Debian 11. También has asegurado OpenSearch con certificados TLS, has activado la autenticación y la autorización, y has configurado los usuarios en OpenSearch. Además, has configurado OpenSearch para que se ejecute como un servicio systemd y has optimizado un servidor Debian Linux para desplegar OpenSearch.

También has instalado los paneles de OpenSearch mediante Tarball en el servidor Debian. Has configurado OpenSearch Dashboards para que se ejecute como un servicio systemd, has conectado OpenSearch Dashboards a OpenSearch Server con la autenticación activada y has verificado con éxito la instalación de OpenSearch y OpenSearch Dashboards.

Con esta configuración, ahora puedes explorar más sobre OpenSearch desplegando OpenSearch Cluster, configurando autenticación adicional y muchas cosas más. Puedes obtener más información sobre OpenSearch en la documentación oficial de OpenSearch.

También te podría gustar...