Voraussetzungen für Suchmaschinen

Ab Adobe Commerce 2.4 müssen alle Installationen so konfiguriert sein, dass Elasticsearch oder OpenSearch als Lösung für die Katalogsuche verwendet wird.

NOTE
OpenSearch-Unterstützung wurde in 2.4.4 hinzugefügt. OpenSearch ist eine kompatible Form of Elasticsearch. Alle Anweisungen zum Konfigurieren von Elasticsearch 7 gelten für OpenSearch. Migration von Elasticsearch zu OpenSearch bietet Anleitungen zum Wechsel zu OpenSearch.

Unterstützte Versionen

Vor der Installation von Adobe Commerce 2.4.4 und höher müssen Sie entweder Elasticsearch oder OpenSearch installieren und konfigurieren.

Spezifische Versionsinformationen finden in denSystemanforderungen“.

Empfohlene Konfiguration

Wir empfehlen Folgendes:

Einbauort

Bei den folgenden Aufgaben wird davon ausgegangen, dass Sie Ihr System gemäß der folgenden Abbildung konfiguriert haben:

Suchmaschinendiagramm

Das vorhergehende Diagramm zeigt:

  • Die Commerce-Anwendung und die Suchmaschine werden auf verschiedenen Hosts installiert.

    Für die Ausführung auf separaten Hosts ist ein Proxy erforderlich. (Das Clustern der Suchmaschine sprengt den Rahmen dieses Handbuchs, weitere Informationen finden Sie jedoch in der Dokumentation zum Elasticsearch-Clustering.)

  • Jeder Host verfügt über einen eigenen Webserver. Die Webserver müssen nicht identisch sein.

    Beispielsweise kann das Commerce-Programm Apache ausführen und die Suchmaschine nginx.

  • Beide Webserver verwenden Transport Layer Security (TLS).

    Die Einrichtung von TLS sprengt den Rahmen unserer Dokumentation.

Suchanfragen werden wie folgt verarbeitet:

  1. Eine Suchanfrage eines Benutzers wird vom Commerce-Webserver empfangen, der sie an den Suchmaschinenserver weiterleitet.

    Sie konfigurieren die Suchmaschine so, dass sie eine Verbindung zum Host und Port des Proxys herstellt. Wir empfehlen den SSL-Port des Webservers (standardmäßig 443).

  2. Der Suchmaschinen-Webserver (der auf Port 443 wartet) leitet die Anfrage an den Suchmaschinenserver weiter (standardmäßig lauscht er auf Port 9200).

  3. Der Zugriff auf die Suchmaschine ist außerdem durch die HTTP-Standardauthentifizierung geschützt. Damit eine Anfrage die Suchmaschine erreichen kann, muss sie über SSL gesendet werden und einen gültigen Benutzernamen und ein gültiges Kennwort angeben.

  4. Die Suchmaschine verarbeitet die Anfrage.

  5. Die Kommunikation wird auf derselben Route zurückgegeben, wobei der Elasticsearch-Webserver als sicherer Reverse-Proxy fungiert.

Voraussetzungen

Die in diesem Abschnitt besprochenen Aufgaben erfordern Folgendes:

Firewall und SELinux

Sicherheitsbezogene Software (iptables, SELinux, AppArmor) kann standardmäßig so konfiguriert werden, dass sie die Kommunikation zwischen Subsystemen blockiert. Es kann eine gute Idee sein, sie zu überprüfen, wenn es Probleme gibt.

Regeln für iptables und SELinux einrichten

Informationen zum Einrichten von Regeln für die Kommunikation mit der Firewall oder SELinux aktiviert, finden Sie in den folgenden Ressourcen:

Installieren des Java Software Development Kits

Um festzustellen, ob Java bereits installiert ist, geben Sie den folgenden Befehl ein:

java -version

Wenn die Meldung java: command not found angezeigt wird, müssen Sie die Java-SDK wie im nächsten Abschnitt beschrieben installieren.

Siehe einen der folgenden Abschnitte:

Installieren des JDK auf CentOS

Siehe dieses Tutorial zum digitalen Ozean.

Stellen Sie sicher, dass Sie das JDK und nicht JRE installieren.

yum -y install java-1.8.0-openjdk
NOTE
Java Version 8 ist möglicherweise nicht für alle Betriebssysteme verfügbar. Sie können beispielsweise die Liste der verfügbaren Pakete nach Ubuntu durchsuchen.

Installieren des JDK auf Ubuntu

Um JDK 1.8 auf Ubuntu zu installieren, geben Sie die folgenden Befehle als Benutzer mit root ein:

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

Weitere Optionen finden Sie in der Oracle-Dokumentation.

Installieren der Suchmaschine

Befolgen Sie Elasticsearch installieren oder Installieren und konfigurieren Sie OpenSearch für Ihre plattformspezifischen Schritte.

Um sicherzustellen, dass das Elasticsearch funktioniert, geben Sie den folgenden Befehl auf dem Server ein, auf dem es ausgeführt wird:

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

Es wird eine Meldung ähnlich der folgenden angezeigt:

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

Um zu überprüfen, ob OpenSearch funktioniert, geben Sie die folgenden Befehle ein:

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

Upgrade von Elasticsearch

Unter Elasticsearch aktualisieren finden Sie vollständige Anweisungen zum Sichern Ihrer Daten, Erkennen potenzieller Migrationsprobleme und Testen von Upgrades vor der Bereitstellung in der Produktion. Abhängig von Ihrer aktuellen Version des Elasticsearchs kann ein vollständiger Neustart des Clusters erforderlich sein oder nicht.

Elasticsearch erfordert JDK 1.8 oder höher. Unter Installieren des Java Software Development Kit können Sie überprüfen, welche Version von JDK installiert ist.

Zusätzliche Ressourcen

Weitere Informationen finden Sie in der Dokumentation 🔗Elasticsearch" oder OpenSearch.

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