Requisitos previos del motor de búsqueda

A partir de Adobe Commerce 2.4, todas las instalaciones deben estar configuradas para usar Elasticsearch o OpenSearch como solución de búsqueda en el catálogo.

NOTE
Se ha añadido compatibilidad con OpenSearch en 2.4.4. OpenSearch es una ramificación compatible de Elasticsearch. Todas las instrucciones para configurar Elasticsearch 7 se aplican a OpenSearch. Migrar de Elasticsearch a OpenSearch proporciona instrucciones para cambiar a OpenSearch.

Versiones compatibles

Debe instalar y configurar Elasticsearch o OpenSearch antes de instalar Adobe Commerce 2.4.4 y posteriores.

Consulte Requisitos del sistema para obtener información específica sobre la versión.

Configuración recomendada

Recomendamos lo siguiente:

Ubicación de instalación

Las siguientes tareas suponen que ha configurado el sistema según el diagrama siguiente:

Diagrama del motor de búsqueda

El diagrama anterior muestra:

  • La aplicación de Commerce y el motor de búsqueda están instalados en hosts diferentes.

    La ejecución en hosts independientes requiere el funcionamiento del proxy. (La agrupación en clúster del motor de búsqueda excede el ámbito de esta guía, pero puede encontrar más información en la documentación de agrupación en clúster de Elasticsearch.)

  • Cada host tiene su propio servidor web; los servidores web no tienen por qué ser iguales.

    Por ejemplo, la aplicación de Commerce puede ejecutar Apache y el motor de búsqueda puede ejecutar nginx.

  • Ambos servidores web utilizan Transport Layer Security (TLS).

    La configuración de TLS está fuera del ámbito de nuestra documentación.

Las solicitudes de búsqueda se procesan de la siguiente manera:

  1. El servidor web de Commerce recibe una solicitud de búsqueda de un usuario y la reenvía al servidor del motor de búsqueda.

    Puede configurar el motor de búsqueda para que se conecte al host y al puerto del proxy. Recomendamos el puerto SSL del servidor web (443 de forma predeterminada).

  2. El servidor web del motor de búsqueda (que escucha en el puerto 443) envía la solicitud al servidor del motor de búsqueda (de forma predeterminada, escucha en el puerto 9200).

  3. El acceso al motor de búsqueda está aún más protegido por la autenticación HTTP Basic. Para que una solicitud llegue al motor de búsqueda, debe viajar a través de SSL y proporcionar un nombre de usuario y una contraseña válidos.

  4. El motor de búsqueda procesa la solicitud.

  5. La comunicación vuelve por la misma ruta, con el servidor web Elasticsearch actuando como un proxy inverso seguro.

Requisitos previos

Las tareas tratadas en esta sección requieren lo siguiente:

Firewall y SELinux

El software relacionado con la seguridad (iptables, SELinux, AppArmor) puede configurarse de forma predeterminada para bloquear la comunicación entre subsistemas. Puede ser una buena idea revisarlos si hay problemas.

Configurar reglas para iptables y SELinux

Para configurar reglas que permitan la comunicación con el cortafuegos o con SELinux activado, consulte los siguientes recursos:

Instalación del kit de desarrollo de software de Java

Para determinar si Java ya está instalado, introduzca el siguiente comando:

java -version

Si se muestra el mensaje java: command not found, debe instalar el SDK de Java como se describe en la sección siguiente.

Consulte una de las siguientes secciones:

Instalación del JDK en CentOS

Ver este tutorial de Digital Ocean.

Asegúrese de instalar el JDK y no el JRE.

yum -y install java-1.8.0-openjdk
NOTE
Es posible que la versión 8 de Java no esté disponible para todos los sistemas operativos. Por ejemplo, puede buscar en la lista de paquetes disponibles para Ubuntu.

Instalación del JDK en Ubuntu

Para instalar JDK 1.8 en Ubuntu, introduzca los siguientes comandos como usuario con privilegios de root:

apt-get -y update
apt-get install -y openjdk-8-jdk

Para ver otras opciones, consulte documentación de Oracle.

Instalación del motor de búsqueda

Siga Elasticsearch de instalación o Instale y configure OpenSearch para los pasos específicos de su plataforma.

Para comprobar que Elasticsearch funciona, introduzca el siguiente comando en el servidor en el que se está ejecutando:

curl -XGET '<host>:9200/_cat/health?v&pretty'

Se muestra un mensaje similar al siguiente:

epoch      timestamp cluster       status node.total node.data shards pri relo init unassign pending_tasks
1519701563 03:19:23  elasticsearch green           1         1      0   0    0    0        0             0

Para comprobar que OpenSearch funciona, introduzca los siguientes comandos:

curl -XGET https://<host>:9200 -u 'admin:admin' --insecure
curl -XGET https://<host>:9200/_cat/plugins?v -u 'admin:admin' --insecure

Elasticsearch de actualización

Consulte Actualización del Elasticsearch para obtener instrucciones completas sobre cómo realizar copias de seguridad de los datos, detectar posibles problemas de migración y probar las actualizaciones antes de implementarlas en producción. Según la versión actual del Elasticsearch, puede que sea necesario o no reiniciar el clúster por completo.

Elasticsearch requiere JDK 1.8 o superior. Consulte Instalar el kit de desarrollo de software de Java para comprobar qué versión de JDK está instalada.

Recursos adicionales

Consulte la documentación de Elasticsearch o OpenSearch.

recommendation-more-help
0f8e7db5-0e9c-4002-a5b8-a0088077d995