GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie Elasticsearch unter Ubuntu 20.04

Elasticsearch ist eine verteilte Open-Source-Volltextsuch- und Analyse-Engine. Es unterstützt RESTful-Operationen und ermöglicht Ihnen das Speichern, Suchen und Analysieren großer Datenmengen in Echtzeit. Elasticsearch ist eine der beliebtesten Suchmaschinen, die Anwendungen mit komplexen Suchanforderungen unterstützt, wie z. B. große E-Commerce-Shops und Analyseanwendungen.

Diese Anleitung erklärt, wie man Elasticsearch auf Ubuntu 20.04 installiert.

Installieren von Elasticsearch #

Die Installation von Elasticsearch auf Ubuntu ist ziemlich einfach. Wir aktivieren das Elasticsearch-Repository, importieren den GPG-Schlüssel des Repositorys und installieren den Elasticsearch-Server.

Das Elasticsearch-Paket wird mit einer gebündelten Version von OpenJDK geliefert, sodass Sie Java nicht installieren müssen.

Aktualisieren Sie zuerst den Paketindex und installieren Sie die Abhängigkeiten, die zum Hinzufügen eines neuen HTTPS-Repositorys erforderlich sind:

sudo apt updatesudo apt install apt-transport-https ca-certificates wget

Importieren Sie den GPG-Schlüssel des Repositorys:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

Der obige Befehl sollte OK ausgeben , was bedeutet, dass der Schlüssel erfolgreich importiert wurde und Pakete aus diesem Repository als vertrauenswürdig betrachtet werden.

Fügen Sie als Nächstes das Elasticsearch-Repository zum System hinzu, indem Sie Folgendes ausgeben:

sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'
Wenn Sie eine frühere Version von Elasticsearch installieren möchten, ändern Sie 7.x im obigen Befehl mit der Version, die Sie benötigen.

Sobald das Repository aktiviert ist, installieren Sie Elasticsearch, indem Sie Folgendes eingeben:

sudo apt updatesudo apt install elasticsearch

Der Elasticsearch-Dienst wird nach Abschluss des Installationsvorgangs nicht automatisch gestartet. Um den Dienst zu starten und zu aktivieren, führen Sie Folgendes aus:

sudo systemctl enable --now elasticsearch.service

Verwenden Sie curl, um zu überprüfen, ob Elasticsearch ausgeführt wird um eine HTTP-Anfrage an Port 9200 zu senden auf localhost:

curl -X GET "localhost:9200/"

Sie sollten etwas Ähnliches sehen:

{
  "name" : "vagrant",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "IJqDxPfXSrmFQ27KbXbRIg",
  "version" : {
    "number" : "7.8.0",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "757314695644ea9a1dc2fecd26d1a43856725e65",
    "build_date" : "2020-06-14T19:35:50.234439Z",
    "build_snapshot" : false,
    "lucene_version" : "8.5.1",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

Es kann 5-10 Sekunden dauern, bis der Dienst gestartet wird. Wenn Sie curl: (7) Failed to connect to localhost port 9200: Connection refused , warten Sie einige Sekunden und versuchen Sie es erneut.

Verwenden Sie den folgenden Befehl, um die vom Elasticsearch-Dienst protokollierten Nachrichten anzuzeigen:

sudo journalctl -u elasticsearch

Das ist es. Elasticsearch wurde auf Ihrem Ubuntu-Server installiert.

Elasticsearch konfigurieren #

Elasticsearch-Daten werden in /var/lib/elasticsearch gespeichert Verzeichnis. Konfigurationsdateien befinden sich in /etc/elasticsearch und Java-Startoptionen können in /etc/default/elasticsearch konfiguriert werden Datei.

Standardmäßig ist Elasticsearch so konfiguriert, dass es nur auf localhost lauscht. Wenn der Client, der sich mit der Datenbank verbindet, auch auf demselben Host ausgeführt wird und Sie einen Einzelknoten-Cluster einrichten, müssen Sie die Standardkonfigurationsdatei nicht ändern.

Fernzugriff #

Standardmäßig implementiert Elasticsearch keine Authentifizierung, sodass jeder darauf zugreifen kann, der Zugriff auf die HTTP-API hat.

Um den Fernzugriff auf Ihren Elasticsearch-Server zuzulassen, müssen Sie Ihre Firewall konfigurieren und den TCP-Port 6379 öffnen.

Normalerweise möchten Sie den Zugriff auf den Redis-Server nur von einer bestimmten IP-Adresse oder einem bestimmten IP-Bereich aus zulassen. Zum Beispiel, um nur Verbindungen von 192.168.121.0/24 zuzulassen subnet, würden Sie den folgenden Befehl ausführen:

sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379

Sobald die Firewall konfiguriert ist, besteht der nächste Schritt darin, die Elasticsearch-Konfiguration zu bearbeiten und Elasticsearch zu erlauben, auf externe Verbindungen zu lauschen.

Öffnen Sie dazu die elasticsearch.yml Konfigurationsdatei:

sudo nano /etc/elasticsearch/elasticsearch.yml

Suchen Sie nach der Zeile, die network.host enthält , kommentieren Sie es aus und ändern Sie den Wert in 0.0.0.0 :

/etc/elasticsearch/elasticsearch.yml
network.host: 0.0.0.0

Wenn Sie mehrere Netzwerkschnittstellen auf Ihrem Computer haben, geben Sie die IP-Adresse der Schnittstelle an, um Elasticsearch zu zwingen, nur auf die angegebene Schnittstelle zu hören.

Starten Sie den Elasticsearch-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl restart elasticsearch

Das ist es. Sie können sich jetzt von Ihrem Remote-Standort aus mit dem Elasticsearch-Server verbinden.


Ubuntu
  1. So installieren Sie Graylog2 unter Ubuntu 14.04

  2. So installieren Sie Graylog2 unter Ubuntu 15.04 / 14.10

  3. So installieren Sie Elasticsearch unter Ubuntu 20.04

  4. Installieren Sie Elasticsearch auf Ubuntu

  5. So installieren Sie R unter Ubuntu 16.04

So installieren Sie ELK unter Ubuntu 20.04

So installieren Sie Graylog 3.0 unter Ubuntu 18.04 / Ubuntu 16.04

So installieren Sie qt unter Ubuntu 20.04

So installieren Sie Go in Ubuntu 20.04

So installieren Sie Go unter Ubuntu 22.04

Installieren Sie Elasticsearch auf Ubuntu 18.04