Configuración del servicio OpenSearch

El servicio OpenSearch es una ramificación de código abierto de Elasticsearch 7.10.2, tras los cambios de licencia de Elasticsearch. Ver el proyecto de código abierto en GitHub.

WARNING
Adobe Commerce no admite Elasticsearch 7.11 y versiones posteriores en infraestructuras en la nube. Las versiones de Adobe Commerce 2.3.7-p3, 2.4.3-p2 y 2.4.4 y posteriores admiten el servicio OpenSearch. Las instalaciones locales siguen siendo compatibles con Elasticsearch.

OpenSearch le permite tomar datos de cualquier fuente, cualquier formato, y buscarlos y visualizarlos en tiempo real.

  • Búsquedas rápidas y avanzadas en productos del catálogo de productos
  • Los analizadores OpenSearch admiten varios idiomas
  • Admite palabras de detención y sinónimos
  • La indexación no afecta a los clientes hasta que se completa la operación de reindexación

Siga estas instrucciones para la configuración del servicio en entornos de integración profesional y entornos de inicio, incluida la rama master.

NOTE
Envíe un ticket de soporte de Adobe Commerce para cambiar la configuración del servicio en los entornos de ensayo y producción de Pro.
TIP
Adobe recomienda configurar siempre OpenSearch para su proyecto de Adobe Commerce en la nube, incluso si tiene pensado configurar una herramienta de búsqueda de terceros para su aplicación de Adobe Commerce. La configuración de OpenSearch proporciona una opción de reserva si falla la herramienta de búsqueda de terceros.

Para habilitar OpenSearch:

  1. Para los entornos de integración de Starter y Pro, agregue el servicio opensearch al archivo .magento/services.yaml con la versión adecuada y el espacio en disco asignado en MB. En este caso, la versión 2 es apropiada. La versión secundaria no es necesaria porque la infraestructura de nube utiliza la última versión de OpenSearch.

    code language-yaml
    opensearch:
        type: opensearch:2
        disk: 1024
    

    Para los proyectos Pro, debe enviar un ticket de soporte de Adobe Commerce para cambiar la versión de OpenSearch en los entornos de ensayo y producción.

  2. Establezca o compruebe la propiedad relationships en el archivo .magento.app.yaml.

    code language-yaml
    relationships:
        opensearch: "opensearch:opensearch"
    
  3. Agregar, confirmar y enviar cambios de código.

    code language-bash
    git add .magento/services.yaml .magento.app.yaml
    
    code language-bash
    git commit -m "Enable OpenSearch"
    
    code language-bash
    git push origin <branch-name>
    

    Para obtener información sobre cómo afectan estos cambios a sus entornos, consulte Configurar servicios.

  4. Una vez completado el proceso de implementación, utilice SSH para iniciar sesión en el entorno remoto.

    code language-bash
    magento-cloud ssh
    
  5. Reindexe el índice de búsqueda del catálogo.

    code language-bash
    bin/magento indexer:reindex catalogsearch_fulltext
    
  6. Limpie la caché.

    code language-bash
    bin/magento cache:clean
    
TIP
Después de la instalación inicial del servicio, puede cambiar la versión del software de un servicio instalado actualizando los archivos de configuración services.yaml y .magento.app.yaml. Consulte Cambiar la versión del servicio para obtener instrucciones sobre cómo actualizar o degradar un servicio.

Compatibilidad del software OpenSearch

Cuando instale o actualice su proyecto de infraestructura en la nube de Adobe Commerce, compruebe siempre la compatibilidad entre la versión del servicio OpenSearch y el cliente OpenSearch PHP para Adobe Commerce.

  • Configuración por primera vez: confirme que la versión de OpenSearch especificada en el archivo services.yaml es compatible con el cliente PHP OpenSearch configurado para Adobe Commerce.

  • Actualización del proyecto-Compruebe que el cliente OpenSearch de PHP en la nueva versión de la aplicación es compatible con la versión del servicio OpenSearch instalada en la infraestructura en la nube.

La compatibilidad y la versión del servicio están determinadas por las versiones probadas e implementadas en la infraestructura en la nube, y a veces difieren de las versiones admitidas por las implementaciones locales de Adobe Commerce. Consulte Requisitos del sistema en la Guía de instalación para obtener una lista de las versiones compatibles.

Para comprobar la compatibilidad del software OpenSearch:

  1. En la estación de trabajo local, cambie al directorio del proyecto.

  2. Mostrar los detalles de OpenSearch para el entorno activo.

    code language-bash
    magento-cloud relationships --property=opensearch
    
  3. Como alternativa, puede utilizar SSH para iniciar sesión en el entorno remoto.

    code language-bash
    magento-cloud ssh
    
  4. Recupere los detalles de conexión del servicio OpenSearch.

    code language-bash
    vendor/bin/ece-tools env:config:show services
    

    En la respuesta, busque la dirección IP y el puerto para el extremo del servicio OpenSearch:

    code language-terminal
    +------------------------------------------+--------------------------------------------------------+
    | opensearch:                                                                                       |
    +------------------------------------------+--------------------------------------------------------+
    | username                                 | null                                                   |
    | scheme                                   | http                                                   |
    | service                                  | opensearch                                             |
    | fragment                                 | null                                                   |
    | ip                                       | 169.254.220.11                                         |
    | hostname                                 | hostf75wi3sd24l.opensearch.service._.magentosite.cloud |
    | port                                     | 9200                                                   |
    | cluster                                  | projectID-develop-4ranwui                              |
    | host                                     | opensearch.internal                                    |
    | rel                                      | opensearch                                             |
    | path                                     | null                                                   |
    | query                                    |                                                        |
    | password                                 | null                                                   |
    | type                                     | opensearch:2                                           |
    | public                                   | false                                                  |
    | host_mapped                              | false                                                  |
    
  5. Recupere el servicio OpenSearch version:number instalado del extremo del servicio.

    code language-bash
    curl -XGET <opensearch-service-endpoint-ip-address>:9200
    
    code language-terminal
    {
       "name" : "opensearch.0",
       "cluster_name" : "opensearch",
       "cluster_uuid" : "_yzaae6-ywSEW1MaAF8ZPWyQ",
       "version" : {
         "distribution" : "opensearch",
         "number" : "2.5.0",
         "build_type" : "deb",
         "build_hash" : "aaaaaaa",
         "build_date" : "2023-01-23T12:07:18.760675Z",
         "build_snapshot" : false,
         "lucene_version" : "9.4.2",
         "minimum_wire_compatibility_version" : "7.10.0",
         "minimum_index_compatibility_version" : "7.0.0"
    },
    "tagline" : "The OpenSearch Project: https://opensearch.org/"
    }
    
TIP
Para los proyectos Pro, debe enviar un ticket de soporte de Adobe Commerce para instalar o actualizar servicios solo en Staging y Production entornos.
Indique los cambios de servicio necesarios, incluya los .magento.app.yaml y services.yaml archivos actualizados y especifique la versión de PHP en el ticket. Para ver los cambios de autoservicio en la versión, las extensiones o la configuración del entorno de PHP, consulte Configuración de PHP en Configuración de la aplicación.
Para realizar cambios en un entorno de producción live (solo Pro), debe proporcionar un aviso con un mínimo de 48 horas para que el equipo de infraestructura de la nube tenga tiempo suficiente para calcular las referencias de los recursos y realizar una actualización segura.

Reinicie el servicio OpenSearch

Si necesita reiniciar el servicio OpenSearch, debe ponerse en contacto con el servicio de asistencia de Adobe Commerce.

Configuración de búsqueda adicional

  • De forma predeterminada, la configuración de búsqueda de los entornos de Cloud se regenera cada vez que realiza la implementación. Puede usar la variable de implementación SEARCH_CONFIGURATION para conservar la configuración de búsqueda personalizada entre implementaciones. Consulte Implementar variables.

  • Después de configurar el servicio OpenSearch para su proyecto, utilice la IU de administración para probar la conexión de OpenSearch y personalizar la configuración de OpenSearch para Adobe Commerce.

Añadir complementos para OpenSearch

Opcionalmente, puede agregar complementos para OpenSearch agregando la sección configuration:plugins al servicio OpenSearch en el archivo .magento/services.yaml. Por ejemplo, el siguiente código habilita los complementos de análisis de ICU y análisis fonético.

opensearch:
    type: opensearch:2
    disk: 1024
    configuration:
        plugins:
            - analysis-icu
            - analysis-phonetic

Consulte Proyecto OpenSearch para obtener más información sobre los complementos.

Eliminar complementos para OpenSearch

Al quitar las entradas del complemento de la sección opensearch: del archivo .magento/services.yaml, no desinstala o deshabilita el servicio. Para deshabilitar completamente el servicio, debe reindexar los datos de OpenSearch después de quitar los complementos del archivo .magento/services.yaml. Este diseño evita la posible pérdida o corrupción de datos que dependen de estos complementos.

Para quitar los complementos de OpenSearch:

  1. Quite las entradas del complemento OpenSearch del archivo .magento/services.yaml.

  2. Agregue, confirme e inserte los cambios de código.

    code language-bash
    git add .magento/services.yaml
    
    code language-bash
    git commit -m "Remove OpenSearch plugin"
    
    code language-bash
    git push origin <branch-name>
    
  3. Confirme los .magento/services.yaml cambios en su repositorio de la nube.

  4. Reindexe el índice de búsqueda del catálogo.

    code language-bash
    bin/magento indexer:reindex catalogsearch_fulltext
    
  5. Limpie la caché.

    code language-bash
    bin/magento cache:clean
    
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26