Sicherstellen, dass das Elasticsearch ordnungsgemäß installiert ist
In diesem Artikel wird über Lösungen für Probleme gesprochen, die durch die fehlerhafte Installation und Konfiguration von Elasticsearch (ES) verursacht werden.
Elasticsearch-Versionskompatibilität mit Adobe Commerce
-
Adobe Commerce On-Premise und Adobe Commerce on Cloud Infrastructure:
- v2.2.3+ unterstützt ES 5.x
- v2.2.8+ und v2.3.1+ unterstützen ES 6.x
- ES v2.x und v5.x werden aufgrund von End of Life) nicht. Wenn Sie jedoch Adobe Commerce v2.3.1 haben und ES 2.x oder ES 5.x verwenden möchten, müssen Sie den Elasticsearch-PHP-Client ändern.
-
Magento Open Source v2.3.0+ unterstützt ES 5.x und 6.x (6.x wird jedoch empfohlen).
Problem
Die folgenden Symptome weisen darauf hin, dass das Elasticsearch nicht korrekt konfiguriert ist:
-
Error: No alive nodes in your cluster
- Dieser Fehler kann in den Adobe Commerce-Protokollen angezeigt werden:var/log/system.log
var/log/support_report.log
var/log/cron.log
var/log/exception.log
- oder in der Eingabeaufforderung (z. B. beim Ausführen einer Neuindizierung)
-
Fehler, die darauf hinweisen, dass die Elasticsearch-Version nicht mit Ihrer aktuellen Version von Adobe Commerce kompatibel ist (dies ist ein für die Cloud-Infrastruktur spezifischer Adobe Commerce-Fehler):
code language-none [YYYY-MM-DD HH:MM:SS] CRITICAL: Fix configuration with given suggestions: - Elasticsearch version #<version> is not compatible with current version of magento Upgrade elasticsearch version to ~5.0
Dabei version der Elasticsearch-Service, der in der Cloud-Umgebung ausgeführt wird.
Ursache
Elasticsearch ist nicht ordnungsgemäß installiert. Dies kann folgende Ursachen haben:
- Ein Tippfehler in der Konfigurationsdatei.
- Eine Version in der Konfigurationsdatei, die mit keiner Version des Elasticsearchs übereinstimmt, das für die Umgebung installiert ist.
- Eine Version, die korrekt in der Umgebung installiert ist, korrekt in der Konfigurationsdatei konfiguriert ist, aber keine unterstützte Version für die derzeit installierte Version von Adobe Commerce ist.
Lösung
So richten Sie das Elasticsearch korrekt ein:
- Händler, die mit Adobe Commerce in der Cloud-Infrastruktur arbeiten, können die Schritte in unserer Entwicklerdokumentation befolgen: Einrichten des Elasticsearch-Service.
- Händler, die Adobe Commerce On-Premise und Magento Open Source verwenden, können die Schritte in unserer Entwicklerdokumentation befolgen: Installieren und Konfigurieren von Elasticsearch.
Nachdem Sie das Elasticsearch eingerichtet haben, überprüfen Sie, ob es korrekt konfiguriert ist:
-
Melden Sie sich bei Ihrem -Server an.
-
Überprüfen Sie die Versionsnummer des Elasticsearchs (2.x, 5.x oder 6.x) in der Ausgabe des -Befehls, der ausgeführt wird:
curl -XGET <Elasticsearch hostname>:<Elasticsearch server port>
Beispiel in Adobe Commerce auf Cloud-Infrastruktur:curl -XGET localhost:9200
-
Überprüfen Sie, was in Adobe Commerce in der Cloud-Infrastrukturkonfiguration konfiguriert ist, indem Sie den Befehl ausführen:
php bin/magento config:show catalog/search
-
Überprüfen Sie die
catalog/search/engine
und stellen Sie sicher, dass sie mit der Elasticsearch-Versionsnummer übereinstimmt. Zum Beispiel in Adobe Commerce auf Cloud-Infrastruktur:- Elasticsearch 5.x - elasticsearch5
- Elasticsearch 6.x - elasticsearch6
- Elasticsearch 2.x - elasticsearch
-
Überprüfen Sie
index_prefix
. Wenn Sie mehrere Umgebungen haben, stellen Sie sicher, dass Sie unterschiedlicheindex_prefix
für sie haben.