Elasticsearch ist eine verteilte Open-Source-Analyse-Engine, die auf Apache Lucene basiert. Es nimmt unstrukturierte Daten von verschiedenen Orten und speichert sie gemäß einer vom Benutzer angegebenen Zuordnung und indiziert sie. Es unterstützt RESTful-Operationen und ermöglicht Ihnen, riesige Datenmengen in Echtzeit zu durchsuchen und zu analysieren.
In diesem Tutorial zeigen wir Ihnen, wie Sie Elasticsearch unter Ubuntu 20.04 installieren.
Voraussetzungen
- Ein Server, auf dem Ubuntu 20.04-Server ausgeführt wird.
- Auf dem Server ist ein Root-Passwort konfiguriert.
Erste Schritte
Bevor Sie beginnen, müssen Sie Ihr System auf die neueste Version aktualisieren. Sie können es mit dem folgenden Befehl aktualisieren:
apt-get update -y
Sobald Ihr System aktualisiert ist, installieren Sie andere erforderliche Pakete mit dem folgenden Befehl:
apt-get install curl gnupg2 apt-transport-https unzip -y
Sobald alle Pakete installiert sind, können Sie mit dem nächsten Schritt fortfahren.
Elasticsearch installieren
Standardmäßig ist das Elasticsearch-Paket nicht im Ubuntu-Standard-Repository verfügbar. Sie müssen also das Elasticsearch-Repository zu Ihrem System hinzufügen. Importieren Sie zuerst den GPG-Schlüssel mit dem folgenden Befehl:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
Fügen Sie als Nächstes das Elasticsearch-Repository mit dem folgenden Befehl hinzu:
sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main"> /etc/apt/sources.list.d/elastic-7.x.list'
Sobald das Repository hinzugefügt wurde, aktualisieren Sie den Repository-Cache und installieren Sie Elasticsearch mit dem folgenden Befehl:
apt-get update -y
apt-get install elasticsearch -y
Sobald die Installation abgeschlossen ist, starten Sie den Elasticsearch-Dienst und ermöglichen Sie ihm, beim Systemneustart zu starten:
systemctl startet elastische Suche
systemctl aktiviert elastische Suche
Sie können jetzt den Status des Elasticsearch-Dienstes mit dem folgenden Befehl überprüfen:
Systemctl Status ElasticSearch
Sie sollten die folgende Ausgabe erhalten:
Elasticsearch verifizieren
Standardmäßig lauscht Elasticsearch auf Port 9200. Sie können dies mit dem folgenden Befehl überprüfen:
ss -antpl | grep 9200
Sie sollten die folgende Ausgabe erhalten:
LISTEN 0 4096 [::ffff:127.0.0.1]:9200 *:* Benutzer:(("java",pid=5110,fd=257)) LISTEN 0 4096 [::1]:9200 [::]:* Benutzer:(("java",pid=5110,fd=255))
Sie können die Elasticsearch auch mit dem folgenden Befehl überprüfen:
curl -X GET "localhost:9200/"
Sie sollten die folgende Antwort erhalten:
{ „name“ :„ubuntu2004“, „cluster_name“ :„elasticsearch“, „cluster_uuid“ :„mToloP2UQGilY7nUCeBnjg“, „version“ :{ „number“ :„7.10.1“, „build_flavor“ :„default“ , „build_type“ :„deb“, „build_hash“ :„1c34507e66d7db1211f66f3513706fdf548736aa“, „build_date“ :„2020-12-05T01:00:33.671820Z“, „build_snapshot“ :false, „lucene_version“ :„8.7.0“, "minimum_wire_compatibility_version" :"6.8.0", "minimum_index_compatibility_version" :"6.0.0-beta1" }, "tagline" :"You Know, for Search"}
Elasticsearch konfigurieren
Die Hauptkonfigurationsdatei von Elasticsearch befindet sich unter /etc/elasticsearch/elasticsearch.yml. Sie können Ihren Clusternamen und Port festlegen und Remote-Verbindungen zulassen, indem Sie diese Datei bearbeiten.
Öffnen Sie die Datei elasticsearch.yml in Ihrem Nano-Editor:
nano /etc/elasticsearch/elasticsearch.yml
Ändern Sie die folgenden Zeilen:
cluster.name:my-clusternetwork.host:172.16.0.10discovery.seed_hosts:172.16.0.10
Speichern und schließen Sie die Datei und starten Sie dann den Elasticsearch-Dienst neu, um die Konfiguration zu übernehmen:
systemctl startet Elasticsearch neu
An diesem Punkt ist Elasticsearch so konfiguriert, dass es die Verbindung vom Remote-Host akzeptiert. Sie können jetzt mit dem nächsten Schritt fortfahren.
UFW-Firewall konfigurieren
Standardmäßig ist UFW in Ubuntu 20.04 installiert. Wenn es nicht installiert ist, können Sie es mit dem folgenden Befehl installieren:
apt-get install ufw -y
Sobald die UFW installiert ist, lassen Sie die SSH-Verbindung und den Elasticsearch-Port für den Remote-Host (172.16.0.100) mit dem folgenden Befehl zu:
ufw ssh zulassen
ufw zulassen von 172.16.0.100 zu jedem Port 9200
Aktivieren Sie als Nächstes die UFW-Firewall mit dem folgenden Befehl:
ufw aktivieren
Überprüfen Sie als Nächstes den Status der UFW-Firewallregeln mit dem folgenden Befehl:
ufw-Status
Sie sollten die folgende Ausgabe erhalten:
Status:activeTo Aktion From-- ------ ----22/tcp ALLOW Anywhere 9200 ALLOW 172.16.0.100 22/tcp (v6) ALLOW Anywhere (v6)
Schlussfolgerung
Herzliche Glückwünsche! Sie haben Elasticsearch erfolgreich installiert und für die Remoteverbindung auf dem Ubuntu 20.04-Server konfiguriert. Sie können Elasticsearch jetzt in Ihre Anwendung integrieren. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.