Einrichten des OpenSearch-Dienstes

Die OpenSearch -Dienst ist eine Open-Source-Abspaltung von Elasticsearch 7.10.2, nach den Lizenzänderungen für Elasticsearch. Siehe OpenSource-Projekt in GitHub.

WARNING
Elasticsearch 7.11 und höher wird für Adobe Commerce in der Cloud-Infrastruktur nicht unterstützt. Adobe Commerce-Versionen 2.3.7-p3, 2.4.3-p2, 2.4.4 und höher unterstützen den OpenSearch-Dienst. Die Vor-Ort-Anlagen unterstützen weiterhin Elasticsearch.

Mit OpenSearch können Sie Daten aus beliebigen Quellen und beliebigen Formaten aufnehmen und in Echtzeit suchen und visualisieren.

  • Schnelle und erweiterte Suchen nach Produkten im Produktkatalog
  • OpenSearch-Analyzer unterstützen mehrere Sprachen
  • Unterstützt Stoppwörter und Synonyme
  • Die Indizierung hat keine Auswirkungen auf Kunden, bis der Neuindizierungsvorgang abgeschlossen ist

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

NOTE
Senden eines Adobe Commerce-Support-Tickets , um die Dienstkonfiguration in Pro Produktions- und Staging-Umgebungen zu ändern.
TIP
Adobe empfiehlt, OpenSearch immer für Ihr Adobe Commerce-Projekt in der Cloud-Infrastruktur einzurichten, selbst wenn Sie ein Tool für die Drittanbietersuche für Ihre Adobe Commerce-Anwendung konfigurieren möchten. Das Einrichten von OpenSearch bietet eine Ausweichoption, wenn das Suchwerkzeug eines Drittanbieters fehlschlägt.

So aktivieren Sie OpenSearch:

  1. Fügen Sie für Starter- und Pro-Integrationsumgebungen die opensearch -Dienst .magento/services.yaml -Datei mit der entsprechenden Version und zugewiesenem Speicherplatz in MB. In diesem Fall ist Version 2 angemessen. Die Nebenversion ist nicht erforderlich, da die Cloud-Infrastruktur die neueste Version von OpenSearch verwendet.

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

    Für Pro-Projekte müssen Sie Senden eines Adobe Commerce-Support-Tickets , um die OpenSearch-Version in den Staging- und Produktionsumgebungen zu ändern.

  2. Festlegen oder Überprüfen der relationships -Eigenschaft in der .magento.app.yaml -Datei.

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

    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 Dienste konfigurieren.

  4. Nachdem der Bereitstellungsprozess abgeschlossen ist, melden Sie sich mit SSH bei der Remote-Umgebung an.

    code language-bash
    magento-cloud ssh
    
  5. Indizieren Sie den Index der Katalogsuche neu.

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

    code language-bash
    bin/magento cache:clean
    
TIP
Nach der Ersteinrichtung des Dienstes können Sie die Softwareversion für einen installierten Dienst ändern, indem Sie die services.yaml und .magento.app.yaml Konfigurationsdateien. Siehe Dienstversion ändern für Anleitungen zum Upgrade oder Downgrade eines Dienstes.

OpenSearch-Softwarekompatibilität

Wenn Sie Adobe Commerce in einem Cloud-Infrastrukturprojekt installieren oder aktualisieren, prüfen Sie immer, ob die OpenSearch-Dienstversion mit der OpenSearch PHP Client für Adobe Commerce.

  • Erstmalige Einrichtung-Vergewissern Sie sich, dass die in der services.yaml -Datei ist mit dem für Adobe Commerce konfigurierten OpenSearch-PHP-Client kompatibel.

  • Projektaktualisierung-Stellen Sie sicher, dass der OpenSearch-PHP-Client in der neuen Anwendungsversion mit der in der Cloud-Infrastruktur installierten OpenSearch-Dienstversion kompatibel ist.

Die Unterstützung von Dienstversionen und Kompatibilität wird durch Versionen bestimmt, die in der Cloud-Infrastruktur getestet und bereitgestellt werden. Manchmal unterscheidet sich die Unterstützung von Versionen, die von lokalen Adobe Commerce-Implementierungen unterstützt werden. Siehe Systemanforderungen im Installationsanleitung für eine Liste der unterstützten Versionen.

Überprüfen der Kompatibilität der OpenSearch-Software:

  1. Wechseln Sie auf Ihrer lokalen Workstation zum Projektverzeichnis.

  2. Zeigen Sie die OpenSearch-Details für die aktive Umgebung an.

    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-Dienstes 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 Endpunkt des OpenSearch-Dienstes:

    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. Abrufen des installierten OpenSearch-Dienstes version:number vom Dienstendpunkt aus.

    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
Für Pro-Projekte müssen Sie Senden eines Adobe Commerce Support-Tickets installieren oder aktualisieren Dienstleistungen in Staging und Production nur Umgebungen.
Geben Sie die erforderlichen Dienständerungen an, fügen Sie Ihre aktualisierte .magento.app.yaml und services.yaml 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 in Anwendungskonfiguration.
Für Änderungen an einer live Produktionsumgebung (Nur Pro), müssen Sie eine Benachrichtigung von mindestens 48 Stunden bereitstellen, damit das Cloud-Infrastruktur-Team genügend Zeit hat, Ressourcen zu mobilisieren und ein sicheres Upgrade durchzuführen.

Starten Sie den OpenSearch-Dienst neu

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

Zusätzliche Suchkonfiguration

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

  • Nachdem Sie den OpenSearch-Dienst 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.

Hinzufügen von Plug-ins für OpenSearch

Optional können Sie Plug-ins für OpenSearch hinzufügen, indem Sie die configuration:plugins zum OpenSearch-Dienst im Abschnitt .magento/services.yaml -Datei. Beispielsweise ermöglicht der folgende Code die Plug-ins für die ICU-Analyse und die Phonetic-Analyse.

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

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

Entfernen von Plug-ins für OpenSearch

Entfernen der Plug-in-Einträge aus der opensearch: Abschnitt .magento/services.yaml Datei not deinstallieren oder deaktivieren Sie den Dienst. Um den Dienst vollständig zu deaktivieren, müssen Sie Ihre OpenSearch-Daten neu indizieren, nachdem Sie die Plug-ins aus Ihrem .magento/services.yaml -Datei. Dieses Design verhindert den möglichen Verlust oder die Beschädigung von Daten, die von diesen Plug-ins abhängig sind.

Entfernen von OpenSearch-Plug-ins:

  1. Entfernen Sie die OpenSearch-Plug-in-Einträge aus Ihrem .magento/services.yaml -Datei.

  2. Fügen Sie Code-Änderungen hinzu, übertragen Sie sie und übertragen Sie sie.

    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. Bestätigen Sie die .magento/services.yaml Änderungen an Ihrem Cloud-Repository.

  4. Indizieren Sie den Index der Katalogsuche neu.

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

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