[Nur PaaS]{class="badge informative" title="Gilt nur für Adobe Commerce in Cloud-Projekten (von Adobe verwaltete PaaS-Infrastruktur) und lokale Projekte."}

Einrichten des OpenSearch-Service

Der OpenSearch-Service ist eine Open-Source-Version von Elasticsearch 7.10.2, die auf die Lizenzänderungen für Elasticsearch folgt. Siehe OpenSource-Projekt in GitHub. Systemanforderungen listet die unterstützte Version auf.

WARNING
Elasticsearch 7.11 und höher wird für Adobe Commerce in Cloud-Infrastrukturen nicht unterstützt. Die Adobe Commerce-Versionen 2.3.7-p3, 2.4.3-p2 und 2.4.4 und höher unterstützen den OpenSearch-Service. Die lokalen Installationen unterstützen weiterhin Elasticsearch.

OpenSearch ermöglicht es Ihnen, Daten aus beliebigen Quellen und Formaten zu suchen und in Echtzeit zu visualisieren.

  • Schnelle und erweiterte Suche nach Produkten im Produktkatalog
  • OpenSearch Analyzer unterstützt mehrere Sprachen
  • Unterstützt Stoppwörter und Synonyme
  • Die Indizierung wirkt sich erst dann auf Kunden aus, wenn der Neuindizierungsvorgang abgeschlossen ist

Verwenden Sie die folgenden Anweisungen für die Einrichtung des Services in Pro Integration-Umgebungen und Starter-Umgebungen, einschließlich der master.

NOTE
Senden eines Adobe Commerce Support-Tickets um die Service-Konfiguration in Pro-Produktions- und Staging-Umgebungen zu ändern.
TIP
Für Adobe Commerce in Cloud-Infrastrukturprojekten, die keine Live Search verwenden, empfiehlt Adobe die Einrichtung von OpenSearch, um eine Ausweichoption für Suchtools von Drittanbietern bereitzustellen. OpenSearch und Live Search können jedoch nicht beide in derselben Commerce-Instanz aktiviert werden.

So aktivieren Sie OpenSearch:

  1. Fügen Sie in Integrationsumgebungen den opensearch-Service der .magento/services.yaml-Datei mit der entsprechenden Version und zugewiesenem Speicherplatz in MB hinzu. In diesem Fall ist Version 3 geeignet. Die Nebenversion ist nicht erforderlich.

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

    Bei Pro-Projekten müssen Sie ein Adobe Commerce-Support-Ticket einreichen, um die OpenSearch-Version in der Staging- und Produktionsumgebung zu ändern.

  2. Legen Sie die relationships-Eigenschaft in der .magento.app.yaml fest oder überprüfen Sie sie.

    code language-yaml
    relationships:
        opensearch: "opensearch:opensearch"
    
  3. Code-Änderungen hinzufügen, übertragen und per Push übertragen.

    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>
    

    Informationen darüber, wie sich diese Änderungen auf Ihre Umgebungen auswirken, finden Sie unter Konfigurieren von Services.

  4. Verwenden Sie nach Abschluss des Bereitstellungsprozesses SSH, um sich bei der Remote-Umgebung anzumelden.

    code language-bash
    magento-cloud ssh
    
  5. Indizieren Sie den Katalogsuchindex neu.

    code language-bash
    bin/magento indexer:reindex catalogsearch_fulltext
    
  6. Reinigen Sie den Cache.

    code language-bash
    bin/magento cache:clean
    
TIP
Nach der Ersteinrichtung des Service können Sie die Softwareversion für einen installierten Service ändern, indem Sie die services.yaml und .magento.app.yaml Konfigurationsdateien aktualisieren. Unter Ändern der Service-Version finden Sie Anleitungen zum Aktualisieren oder Herunterstufen eines Services.

OpenSearch-Software-Kompatibilität

Wenn Sie Ihr Adobe Commerce in einem Cloud-Infrastrukturprojekt installieren oder aktualisieren, überprüfen Sie immer die Kompatibilität zwischen der Version des OpenSearch-Service und dem OpenSearch PHP-Client für Adobe Commerce.

  • Erstmaliges Setup-Bestätigen Sie, dass die in der services.yaml angegebene OpenSearch-Version mit dem für Adobe Commerce konfigurierten OpenSearch PHP-Client kompatibel ist.

  • Projekt-Upgrade-Überprüfen Sie, ob der OpenSearch PHP-Client in der neuen Anwendungsversion mit der in der Cloud-Infrastruktur installierten OpenSearch-Service-Version kompatibel ist.

Die Unterstützung der Service-Version und -Kompatibilität hängt von den Versionen ab, die in der Cloud-Infrastruktur getestet und bereitgestellt werden, und unterscheidet sich manchmal von den Versionen, die von Adobe Commerce On-Premise-Bereitstellungen unterstützt werden. Siehe Systemanforderungen im Installationshandbuch für eine Liste der unterstützten Versionen.

So überprüfen Sie die Kompatibilität der OpenSearch-Software:

  1. Wechseln Sie auf Ihrer lokalen Workstation in Ihr Projektverzeichnis.

  2. OpenSearch-Details für die aktive Umgebung anzeigen.

    code language-bash
    magento-cloud relationships --property=opensearch
    
  3. Alternativ können Sie SSH verwenden, um sich bei der Remote-Umgebung anzumelden.

    code language-bash
    magento-cloud ssh
    
  4. Rufen Sie die Verbindungsdetails des OpenSearch-Service ab.

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

    Suchen Sie in der Antwort die IP-Adresse und den Port für den OpenSearch-Service-Endpunkt:

    code language-none
    +------------------------------------------+--------------------------------------------------------+
    | 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:3                                           |
    | public                                   | false                                                  |
    | host_mapped                              | false                                                  |
    
  5. Rufen Sie die installierte OpenSearch-Service-version:number vom Service-Endpunkt ab.

    code language-bash
    curl -XGET <opensearch-service-endpoint-ip-address>:9200
    
    code language-json
    {
       "name" : "opensearch.0",
       "cluster_name" : "opensearch",
       "cluster_uuid" : "_yzaae6-ywSEW1MaAF8ZPWyQ",
       "version" : {
         "distribution" : "opensearch",
         "number" : "3.1.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/"
    }
    
recommendation-more-help
  • Bei Pro-Projekten müssen Sie ein Adobe Commerce-Support-Ticket einreichen um Services nur in Staging und Production zu installieren oder zu aktualisieren.

  • Geben Sie an, welche Service-Änderungen erforderlich sind, schließen Sie Ihre aktualisierten .magento.app.yaml- und services.yaml-Dateien ein und geben Sie die PHP-Version im Ticket an. Informationen zu Self-Service-Änderungen an PHP-Versionen, Erweiterungen oder Umgebungseinstellungen finden Sie unter PHP-Einstellungen unter Anwendungskonfiguration.

  • Bei Änderungen an einer Live-Produktionsumgebung nur Pro ist eine Vorankündigung von mindestens 48 Stunden erforderlich. Dadurch hat das Cloud-Infrastruktur-Team genügend Zeit, Ressourcen zu mobilisieren und ein sicheres Upgrade durchzuführen. Die Kündigungsfrist beginnt, wenn das Infrastruktur-Team die Anfrage bestätigt und das Upgrade plant, mit Ausnahme der Wochenenden. Damit beispielsweise Service-Upgrades an einem Montag abgeschlossen werden, muss bis Mittwoch eine Bestätigung des geplanten Upgrades empfangen werden. In Spitzenzeiten kann die Verarbeitung Ihrer Anfrage länger dauern.

NOTE
Alle geplanten Wartungsfenster müssen im UTC-Format bereitgestellt werden, um Klarheit und Konsistenz in der gesamten Kommunikation zu gewährleisten. Service-Upgrades können nicht in der Staging-Umgebung geplant werden. In den meisten Fällen werden Upgrades in der Staging-Umgebung am selben Tag wie die Anfrage durchgeführt.

Starten Sie den OpenSearch-Service neu.

Wenn Sie den OpenSearch-Service neu starten müssen, wenden Sie sich an den Adobe Commerce-Support.

Zusätzliche Suchkonfiguration

  • Standardmäßig wird die Suchkonfiguration für Cloud-Umgebungen bei jeder Bereitstellung neu generiert. Sie können die Variable SEARCH_CONFIGURATION-Bereitstellung verwenden, um benutzerdefinierte Sucheinstellungen zwischen Bereitstellungen beizubehalten. Siehe Bereitstellen von Variablen.

  • Nachdem Sie den OpenSearch-Service für Ihr Projekt eingerichtet haben, verwenden Sie die Admin-Benutzeroberfläche, um die OpenSearch-Verbindung zu testen und die OpenSearch-Einstellungen für Adobe Commerce anzupassen.

Plug-ins für OpenSearch hinzufügen

Optional können Sie Plug-ins für OpenSearch hinzufügen, indem Sie den configuration:plugins Abschnitt zum OpenSearch-Service in der .magento/services.yaml-Datei hinzufügen. Beispielsweise aktiviert der folgende Code die Plug-ins für die ICU-Analyse und die phonetische Analyse .

NOTE
Dies gilt nur für Integrations- und Starter-Umgebungen. Um die Plug-ins in einem Pro Staging- oder Produktions-Cluster zu installieren​ senden Sie eine Support-Anfrage.
opensearch:
    type: opensearch:2
    disk: 1024
    configuration:
        plugins:
            - analysis-icu
            - analysis-phonetic

Siehe das OpenSearch-Projekt für weitere Informationen zu Plug-ins.

Entfernen von Plug-ins für OpenSearch

Wenn Sie die Plug-in-Einträge aus dem Abschnitt opensearch: der .magento/services.yaml-Datei entfernen wird der Service nicht oder deaktiviert. Um den Dienst vollständig zu deaktivieren, müssen Sie Ihre OpenSearch-Daten neu indizieren, nachdem Sie die Plug-ins aus Ihrer .magento/services.yaml-Datei entfernt haben. Dieses Design verhindert den möglichen Verlust oder die Beschädigung von Daten, die von diesen Plug-ins abhängt.

So entfernen Sie OpenSearch-Plug-ins:

NOTE
Diese Änderung gilt nur für Integrations- und Starter-Umgebungen. Sie müssen ein Support-Ticket einreichen um das Plug-in in einem Pro Staging- oder Produktions-Cluster zu entfernen.
  1. Entfernen Sie die OpenSearch-Plug-in-Einträge aus Ihrer .magento/services.yaml.

  2. Code-Änderungen hinzufügen, übertragen und per Push übertragen.

    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. Übertragen Sie die .magento/services.yaml Änderungen in Ihr Cloud-Repository.

  4. Indizieren Sie den Katalogsuchindex neu (alle Umgebungen: Integration, Starter, Pro Staging und Produktions-Cluster).

    code language-bash
    bin/magento indexer:reindex catalogsearch_fulltext
    
  5. Reinigen Sie den Cache.

    code language-bash
    bin/magento cache:clean
    
7c2b03ac-000c-497d-aba3-2c6dc720a938