Sicherstellen, dass Elasticsearch ordnungsgemäß installiert ist
In diesem Artikel werden Lösungen für Probleme beschrieben, die durch fehlerhafte Installation und Konfiguration von Elasticsearch (ES) verursacht werden.
Elasticsearch-Versionskompatibilität mit Adobe Commerce
-
Adobe Commerce vor Ort und Adobe Commerce zur Cloud-Infrastruktur:
- 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 Ende der Lebensdauer nicht empfohlen. Wenn Sie jedoch über Adobe Commerce v2.3.1 verfügen 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 (es wird jedoch 6.x empfohlen).
Problem
Die folgenden Symptome zeigen, dass Elasticsearch nicht richtig konfiguriert ist:
-
Error: No alive nodes in your cluster
- Dieser Fehler kann in 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 Adobe Commerce-Fehler, der eine Cloud-Infrastruktur-spezifische Fehlermeldung enthält):
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 ist version der Elasticsearch-Dienst, der in der Cloud-Umgebung ausgeführt wird.
Ursache
Elasticsearch ist nicht ordnungsgemäß installiert. Dies könnte folgende Gründe haben:
- Ein Tippfehler in der Konfigurationsdatei.
- Eine Version in der Konfigurationsdatei, die mit keiner Version des für die Umgebung installierten Elasticsearchs übereinstimmt.
- Eine Version, die ordnungsgemäß in der Umgebung installiert und in der Konfigurationsdatei korrekt konfiguriert ist, aber keine unterstützte Version für die derzeit installierte Version von Adobe Commerce ist.
Lösung
So richten Sie Elasticsearch ordnungsgemäß ein:
- Merchants auf Adobe Commerce in der Cloud-Infrastruktur können die Schritte in unserer Entwicklerdokumentation befolgen: Einrichten des Elasticsearch-Dienstes.
- Händler in Adobe Commerce vor Ort und Magento Open Source können die Schritte in unserer Entwicklerdokumentation befolgen: Installieren und Konfigurieren von Elasticsearch.
Nachdem Sie 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 der Ausführung des Befehls:
curl -XGET <Elasticsearch hostname>:<Elasticsearch server port>
Beispiel in Adobe Commerce in der 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
-
Aktivieren Sie
catalog/search/engine
und stellen Sie sicher, dass es mit der Versionsnummer des Elasticsearchs übereinstimmt. Beispiel: In Adobe Commerce in der 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
-Werte für sie haben.