Installieren und Konfigurieren von Elastic Search unter Debian

Inhaltsverzeichnis

Voraussetzungen

Für diese Installation benötigen Sie einen Rechner, auf dem Debian installiert ist. Du
Hier erfahren Sie, wie Sie einen virtuellen Computer in Azure vorbereiten.

Grundlegende Kenntnisse in der Verwendung eines Linux-Terminals können ebenfalls erforderlich sein, da die
Die gesamte Installation erfolgt ohne grafische Oberfläche.

Installation

1. Installieren von Elastic Search und Kibana

  1. Greifen Sie auf Ihr Linux-Terminal zu.
  2. Fügen Sie den öffentlichen Elastic-Signaturschlüssel hinzu, indem Sie Folgendes ausführen:
  3. sudo wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
Möglicherweise wird eine Fehlermeldung angezeigt, die besagt, dass „gnupg nicht gefunden wurde“. Wenn diese Meldung erscheint, installieren Sie gnupg, indem Sie den folgenden Befehl ausführen: sudo apt-get install gnupg
  1. Laufen:
  2. sudo apt-get install apt-transport-https.
  3. Speichern Sie das elastische Repository mit:
  4. echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] <a href="https://artifacts.elastic.co/packages/8.x/apt"> https://artifacts.elastic.co/packages/8.x/apt</a> stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list.
  5. Aktualisieren Sie Ihre Paketinformationen mit:
  6. sudo apt-get update.
  7. Installieren Sie Elastic Search, indem Sie Folgendes ausführen:
  8. sudo apt-get install elasticsearch.

Während der Installation von elasticsearch sollte so etwas auftauchen:

  1. Speichern Sie das Kennwort für den integrierten Elastic-Superuser. Es wird später benötigt.
  2. Installieren Sie kibana, indem Sie Folgendes ausführen:
sudo apt-get install kibana .
  1. Laufen:
  2. systemctl daemon-reload.
  3. Aktivieren Sie Elastic Search und Kibana, indem Sie Folgendes ausführen:
  4. systemctl enable elasticsearch.service und: systemctl enable kibana.service.

2. Überprüfen, ob Elastic Search ausgeführt wird

  1. Starten Sie Elastic Search, indem Sie Folgendes ausführen:
  2. sudo systemctl start elasticsearch.service.
  3. Überprüfen Sie, ob Sie auf Elastic zugreifen können, indem Sie zu https://YOURMACHINEIP:9200 gehen, wobei YOURMACHINEIP die IP-Adresse Ihres Computers ist. Wenn Sie nicht auf die Website zugreifen können, stellen Sie sicher, dass Sie den Port 9200 in Azure für die Öffentlichkeit geöffnet haben (in einigen Linux-Distributionen wie Red Hat ist möglicherweise auch das Öffnen des Ports innerhalb des virtuellen Computers erforderlich).

3. Verbinden von Elastic Search mit Kibana

Kibana ist das visuelle Frontend für die Elastic Stack-Anwendungen. Im Moment benötigen wir Kibana, um einen Benutzer einzurichten und zu konfigurieren, der als Konnektor zwischen KanBo und Elastic Search verwendet wird, aber in Zukunft könnte er für Visualisierungen von Daten in KanBo verwendet werden. Es gibt zwei Möglichkeiten, den Elastic Search-Dienst mit dem Kibana-Dienst zu verbinden:

  1. So generieren Sie ein Registrierungstoken für Kibana: Führen Sie Folgendes aus:
  2. sudo./usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana.

  1. Gehen Sie zu YOURMACHINEIP:5601 (ohne https).
  2. Fügen Sie das Registrierungstoken in das Fenster ein.
  3. Klicken Sie auf "Elastic konfigurieren ".

  1. Danach erscheint dieses Fenster:

  1. Laufen: sudo ./usr/share/kibana/bin/kibana-verification-code.

Es wird ein Code generiert:

  1. Geben Sie diesen Code ein und klicken Sie auf "Bestätigen".

4. Erstellen eines Benutzers für KanBo

Öffnen Sie Kibana und melden Sie sich mit dem Benutzernamen "elastic" an und verwenden Sie das Passwort des in Elastic integrierten Superusers aus "Elastic Search und Kibana installieren".

Wenn dieses Fenster erscheint, klicken Sie auf "Auf eigene Faust erkunden". Suchen Sie anschließend in der Suchleiste oben auf der Website nach "Rollen" und klicken Sie auf "Sicherheit/Rollen".

Klicken Sie danach auf "Rolle erstellen".

Suchen Sie in der Suchleiste oben auf der Website nach "Rollen" und wählen Sie es mit "Gehe zu" aus .

Konfigurieren Sie diese Optionen dann auf die gleiche Weise, wie sie im Screenshot konfiguriert sind.
  • Cluster-Berechtigungen: Verwalten manage_security
  • Ausführen als-Berechtigungen: *
  • Indizes: kanbosearch.*
  • Privilegien: alle
Nachdem Sie eine Rolle erstellt haben, suchen Sie in der oberen Leiste nach "Benutzer" und wählen Sie "Gehe zu".

  1. Und erstellen Sie einen Benutzer auf diese Weise:

Es empfiehlt sich, denselben Benutzernamen wie den Rollennamen zu verwenden. Das Passwort wird nicht generiert und von Ihnen festgelegt.

  1. Wählen Sie im Bereich "Rollen" die im vorherigen Schritt erstellte Rolle aus: "admin-KanBoSearch".
  2. Speichern Sie den Benutzernamen und das Passwort für später.
  3. Stoppen Sie Kibana, indem Sie Folgendes ausführen:
  4. sudo systemctl stop kibana.service, da es vorerst nicht benötigt wird.

5. Verbinden von KanBo mit Elastic Search

Öffnen Sie die appsettings.json Ihrer KanBo und fügen Sie diesen Code zum Abschnitt "Plugins" hinzu:

{
    "type": "elastic",
    "tenant": "kanbosearch",
	"connection": {
		"url": "https://ELASTIC-URL:9200",
		"login": "admin-KanBoSearch",
		"password": "USER-PASSWORD"
	}
   }
Ersetzen Sie die ELASTIC-URL durch die Adresse Ihrer Elastic Search-Maschine und ändern Sie USER-PASSWORD in das Passwort, das Sie für den Admin-KanBoSearch-Benutzer erstellt haben. Stellen Sie sicher, dass Sie https:// und :9200 in der URL Ihres Computers lassen.
Speichern Sie nach dem Einfügen des Codes die Änderungen, und starten Sie die KanBo neu. Ein Neustart der KanBo App ist erforderlich, damit KanBo in der geänderten Konfiguration geladen werden kann.
Gehen Sie zu KanBo Setup, zeigen Sie das erweiterte Setup an und klicken Sie auf Elastic.

Wenn die Option "Elastisch" nicht angezeigt wird, starten Sie das KanBo neu und versuchen Sie es erneut.

Indizieren Sie alle Ihre Daten, indem Sie im Abschnitt "Datenimport" die Option "Alle" auswählen. Aktivieren Sie das Kontrollkästchen "Reinigen" und klicken Sie auf "Ausführen".

Warten Sie, bis Elastic alles indiziert hat.

Ihr KanBo nutzt jetzt Elastic Search!

Optionale Schritte
Testen Sie die KanBo , indem Sie zu KanBo gehen, einen Space und eine Karte darin erstellen, dann auf das Zoom-Glas-Symbol in der rechten oberen Ecke klicken und nach dem Namen der Karte suchen. Wenn Sie Spaces und Karten haben, können Sie auch danach suchen, um zu testen, ob die Suche ordnungsgemäß funktioniert.



Fehlerbehebung

Fehler beim Registrieren der elastischen Verbindung: Fehler beim Elastic Ping.

Dieser Fehler tritt immer dann auf, wenn eine der Eingaben im Abschnitt "Verbindung" falsch ist (nicht nur die URL) oder wenn KanBo keine Verbindung zur angegebenen IP herstellen kann. Bitte stellen Sie sicher, dass:

  1. Die URL beginnt mit https://, die Maschinen-IP ist korrekt und wird am Ende von ":9200" gefolgt .
  2. Der Benutzername und das Passwort sind korrekt.
  3. Der Mandantenname enthält nicht den ".*"-Teil, der in den Indizes einer Rolle vorhanden war, die wir in Kibana erstellt haben
  4. Falls der Elastic Search-Service nicht auf demselben Computer wie KanBo gehostet wird, stellen Sie sicher, dass diese URL vom KanBo aus zugänglich ist.

Überprüfen Sie, ob der Benutzer in Kibana ordnungsgemäß konfiguriert ist

  1. Starten Sie Kibana, gehen Sie zur Kibana-URL und melden Sie sich an.
  2. Gehen Sie zu Rollen und klicken Sie auf die von Ihnen erstellte Rolle.

  1. Stellen Sie sicher, dass die Clusterberechtigungen, Die Berechtigungen "Ausführen als", "Indizes" und "Berechtigungen" gemäß den vorherigen Schritten konfiguriert sind. Achten Sie auch darauf , dass Indizes mit ".*" enden.
  2. Gehen Sie zu Benutzer und klicken Sie auf den Benutzer, den Sie erstellt haben.
  3. Stellen Sie sicher, dass diesem Benutzer die richtige Rolle zugewiesen ist.
  4. Wenn Sie sich bei dem Passwort nicht sicher sind, können Sie es zurücksetzen, indem Sie auf "Passwort ändern" klicken .


Offene Ports innerhalb des Geräts

Es ist möglich, dass der Port 9200 von der Firewall innerhalb der VM blockiert wird (und wenn Sie eine VM in Azure gehostet haben, wurde der Port möglicherweise auch nicht in der Netzwerkeinstellung der VM aktiviert, siehe Artikel zum Vorbereiten der VM in Azure). Um den Port auf einer Debian-VM zu öffnen, führen Sie sudo iptables -I INPUT 1 -p tcp --dport 9200 -j ACCEPT


Herstellen einer Verbindung mit Elastic Search, die auf einem virtuellen Hyper-V-Computer gehostet wird

Wenn Sie sich entschieden haben, Ihre virtuelle Elastic Search-Maschine auf Hyper-V zu hosten, muss Ihre Hostmaschine den Datenverkehr an den Port der Maschine an den Port einer VM umleiten. Um das zu tun:

  1. Öffnen Sie Routing und RAS.
  2. Doppelklicken Sie auf "Ethernet".

  1. Gehen Sie zu "Dienste und Ports" und klicken Sie auf "Hinzufügen".

  1. Fügen Sie eine Beschreibung hinzu (z. B. "ElasticSearch"), lassen Sie "Auf dieser Schnittstelle" und das Protokoll "TCP" ausgewählt. Geben Sie unter Eingehender Port den Wert "9200" ein. Geben Sie unter private Adresse die IP-Adresse Ihrer VM ein, und geben Sie unter ausgehender Port 9200 (den Port, den Elastic Search verwendet) ein und klicken Sie auf OK.

  1. Nachdem dies erledigt ist, klicken Sie auf "Übernehmen" und jetzt sollten Sie in der Lage sein, eine Verbindung zu Elastic Search herzustellen, die auf Ihrer virtuellen Hyper-V-Maschine gehostet wird.

War dieser Beitrag hilfreich?

Bitte kontaktieren Sie uns, wenn Sie weitere Fragen haben.