Voraussetzungen für Suchmaschinen
Ab Adobe Commerce 2.4 müssen alle Installationen so konfiguriert sein, dass Elasticsearch oder OpenSearch als Katalogsuchlösung verwendet wird.
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 Sie in den Systemanforderungen .
Empfohlene Konfiguration
Wir empfehlen Folgendes:
Installationsspeicherort
Bei den folgenden Aufgaben wird davon ausgegangen, dass Sie Ihr System gemäß folgendem Diagramm konfiguriert haben:
Das vorhergehende Diagramm zeigt Folgendes:
-
Die Commerce-Anwendung und die Suchmaschine werden auf verschiedenen Hosts installiert.
Für das Ausführen auf separaten Hosts muss die Proxy-Funktion ausgeführt werden. (Das Clustering der Suchmaschine geht über den Rahmen dieses Handbuchs hinaus, Sie finden jedoch weitere Informationen in der Dokumentation zum Elasticsearch-Clustering.)
-
Jeder Host verfügt über einen eigenen Webserver. Die Webserver müssen nicht identisch sein.
Beispielsweise kann die Commerce-Anwendung Apache ausführen und die Suchmaschine nginx ausführen.
-
Beide Webserver verwenden Transport Layer Security (TLS).
Die Einrichtung von TLS geht über den Rahmen unserer Dokumentation hinaus.
Suchanforderungen werden wie folgt verarbeitet:
-
Eine Suchanfrage eines Benutzers wird vom Commerce-Webserver empfangen, der sie an den Suchmaschinenserver weiterleitet.
Sie konfigurieren die Suchmaschine so, dass eine Verbindung zum Host und Port des Proxys hergestellt wird. Wir empfehlen den SSL-Anschluss des Webservers (standardmäßig 443).
-
Der Webserver der Suchmaschine (Listening auf Port 443) sendet die Anforderung an den Suchmaschinenserver (standardmäßig wird Port 9200 überwacht).
-
Der Zugriff auf die Suchmaschine wird durch die HTTP Basic-Authentifizierung weiter geschützt. Damit eine Anfrage die Suchmaschine erreichen kann, muss sie über SSL verlegt werden, und müssen einen gültigen Benutzernamen und ein gültiges Kennwort angegeben werden.
-
Die Suchmaschine verarbeitet die Anforderung.
-
Die Kommunikation erfolgt entlang derselben Route, wobei der Elasticsearch-Webserver als sicherer Reverse-Proxy fungiert.
Voraussetzungen
Die in diesem Abschnitt behandelten Aufgaben erfordern Folgendes:
Firewall und SELinux
Sicherheitsbezogene Software (iptables, SELinux, AppArmor) kann standardmäßig konfiguriert werden, um die Kommunikation zwischen Subsystemen zu blockieren. Es kann sinnvoll sein, sie auf Probleme hin zu überprüfen.
Einrichten von Regeln für iptables und SELinux
Um Regeln einzurichten, die die Kommunikation mit der Firewall oder SELinux ermöglichen, konsultieren Sie die folgenden Ressourcen:
Java Software Development Kit installieren
Geben Sie den folgenden Befehl ein, um festzustellen, ob Java bereits installiert ist:
java -version
Wenn die Meldung java: command not found
angezeigt wird, müssen Sie das Java-SDK wie im nächsten Abschnitt beschrieben installieren.
Siehe einen der folgenden Abschnitte:
JDK auf CentOS installieren
Siehe dieses Digital Ocean-Tutorial.
Installieren Sie unbedingt das JDK und nicht die JRE.
yum -y install java-1.8.0-openjdk
JDK auf Ubuntu installieren
Um JDK 1.8 auf Ubuntu zu installieren, geben Sie die folgenden Befehle als Benutzer mit root
-Berechtigungen ein:
apt-get -y update
apt-get install -y openjdk-8-jdk
Weitere Optionen finden Sie in der Oracle-Dokumentation.
Suchmaschine installieren
Folgen Sie den Anweisungen unter Installieren von Elasticsearch oder Installieren und Konfigurieren von OpenSearch für Ihre plattformspezifischen Schritte.
Geben Sie den folgenden Befehl auf dem Server ein, auf dem das Elasticsearch 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
Geben Sie die folgenden Befehle ein, um zu überprüfen, ob OpenSearch funktioniert:
curl -XGET https://<host>:9200 -u 'admin:admin' --insecure
curl -XGET https://<host>:9200/_cat/plugins?v -u 'admin:admin' --insecure
Upgrade von Elasticsearch
Eine vollständige Anleitung zum Sichern Ihrer Daten, zum Erkennen potenzieller Migrationsprobleme und zum Testen von Upgrades vor der Bereitstellung in der Produktionsumgebung finden Sie unter Elasticsearch aktualisieren . Abhängig von Ihrer aktuellen Version von Elasticsearch ist möglicherweise ein vollständiger Neustart des Clusters erforderlich.
Elasticsearch erfordert JDK 1.8 oder höher. Siehe Installieren des Java Software Development Kits , um zu überprüfen, welche Version von JDK installiert ist.
Zusätzliche Ressourcen
Weitere Informationen finden Sie in der Dokumentation zu Elasticsearch oder OpenSearch .