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

Installieren des ELK-Stacks unter Ubuntu 14.04

Was ist ein ELK-Stack?

ELK ist ein Akronym, das für Elasticsearch Logstash Kibana steht. Jeder Begriff in der Abkürzung ELK steht für eine individuelle Open-Source-Software, und alle diese Softwares werden gemeinsam für die Protokollanalyse verwendet. Die Protokollanalyse ist die Wissenschaft, aus computergenerierten Aufzeichnungen einen Sinn zu machen. Protokolle werden von Netzwerkgeräten, Betriebssystemen, Anwendungen und allen möglichen intelligenten oder programmierbaren Geräten ausgegeben. Ein Strom von Nachrichten in zeitlicher Abfolge umfasst oft ein Protokoll. Protokolle können in Dateien geleitet und auf der Festplatte gespeichert oder als Netzwerkstream an einen Protokollsammler geleitet werden.

Lassen Sie uns kurz die Aufgaben kennenlernen, die jede der Softwares im ELK-Stack durchführt.

Elasticsearch: Es speichert Protokolle und fungiert auch als Suchmaschine.

Logstash: Identifiziert die Protokolle im Netzwerk und sendet sie an die elastische Suche.

Kibana: Es ist eine Datenvisualisierungssoftware, die Daten aus der Elasticsearch-Datenbank auf interaktive Weise anzeigt.

Installationsverfahren

Nachdem Sie nun eine grundlegende Vorstellung vom ELK-Stack haben, können Sie jedes Modul oder jede Software nacheinander installieren. Aber vorher müssen wir JAVA auf dem Server installieren.

JAVA-Installation

Laden Sie das neueste JAVA-Paket herunter oder verwenden Sie den folgenden Befehl, um das JAVA 8-Paket zum Repository hinzuzufügen

sudo add-apt-repository -y ppa:webupd8team/java

Aktualisieren Sie dann das Repository mit dem Befehl

sudo apt-get update

Verwenden Sie die folgenden Befehle nacheinander, um JAVA erfolgreich zu installieren

echo debconf shared/accepted-oracle-license-v1-1 select true | sudo debconf-set-selections
echo debconf shared/accepted-oracle-license-v1-1 seen true | sudo debconf-set-selections
sudo apt-get -y install oracle-java8-installer

Um zu überprüfen, ob das Paket korrekt installiert wurde, geben Sie Folgendes in das Terminal

ein
java -version

Wenn das Paket erfolgreich installiert wurde, erhalten Sie eine Nachricht wie diese

java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

Installieren von Elasticsearch

Verwenden Sie nacheinander die folgenden Befehle, um Elasticsearch herunterzuladen und auf Ihrem Server zu installieren

wget -qO - https://packages.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
echo "deb http://packages.elastic.co/elasticsearch/2.x/debian stable main" | sudo tee -a /etc/apt/sources.list.d/elasticsearch-2.x.list
sudo apt-get update && sudo apt-get install elasticsearch

Führen Sie nun den folgenden Befehl aus, um Elasticsearch beim Booten zu starten

sudo update-rc.d elasticsearch defaults 95 10

Der Befehl liefert das folgende Ergebnis

Adding system startup for /etc/init.d/elasticsearch ...
   /etc/rc0.d/K10elasticsearch -> ../init.d/elasticsearch
   /etc/rc1.d/K10elasticsearch -> ../init.d/elasticsearch
   /etc/rc6.d/K10elasticsearch -> ../init.d/elasticsearch
   /etc/rc2.d/S95elasticsearch -> ../init.d/elasticsearch
   /etc/rc3.d/S95elasticsearch -> ../init.d/elasticsearch
   /etc/rc4.d/S95elasticsearch -> ../init.d/elasticsearch
   /etc/rc5.d/S95elasticsearch -> ../init.d/elasticsearch

Es ist jetzt an der Zeit, es zu starten und zu sehen, ob es gut funktioniert.

sudo /etc/init.d/elasticsearch start
curl 'http://localhost:9200'

Bei erfolgreicher Installation und Ausführung sollten Sie ein Textergebnis ähnlich dem folgenden erhalten

root@ELKTest:~# curl 'http://localhost:9200'
{
  "name" : "Termagaira",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "72XGxcHjSjaaXDdtmIio0g",
  "version" : {
    "number" : "2.4.3",
    "build_hash" : "d38a34e7b75af4e17ead16f156feffa432b22be3",
    "build_timestamp" : "2016-12-07T16:28:56Z",
    "build_snapshot" : false,
    "lucene_version" : "5.5.2"
  },
  "tagline" : "You Know, for Search"
}

Jetzt müssen Sie die Konfigurationsdatei bearbeiten, um den Zugriff von außen auf Ihre Elasticsearch-Protokolle einzuschränken.

sudo vi /etc/elasticsearch/elasticsearch.yml

Suchen Sie nun die Zeile network.host, kommentieren Sie sie aus, indem Sie # vor der Zeile entfernen, und ersetzen Sie den Inhalt dieser Zeile durch localhost oder 127.0.0.1 . Für dieses Beispiel verwenden wir localhost

network.host:  localhost

Elasticsearch neu starten

sudo service elasticsearch restart

Installieren von Logstash

Die Installation von Logstash ist der Installation von Elasticsearch sehr ähnlich, ebenso Kibana. Verwenden Sie die folgenden Befehle, um das Logstash-Paket zu importieren und zu installieren.

echo "deb https://packages.elastic.co/logstash/2.3/debian stable main" | sudo tee -a /etc/apt/sources.list
sudo apt-get update && sudo apt-get install logstash

Führen Sie nun den folgenden Befehl aus, um Logstash beim Start zu starten.

sudo update-rc.d logstash defaults 95 10
Result:

Adding system startup for /etc/init.d/logstash ...
   /etc/rc0.d/K10logstash -> ../init.d/logstash
   /etc/rc1.d/K10logstash -> ../init.d/logstash
   /etc/rc6.d/K10logstash -> ../init.d/logstash
   /etc/rc2.d/S95logstash -> ../init.d/logstash
   /etc/rc3.d/S95logstash -> ../init.d/logstash
   /etc/rc4.d/S95logstash -> ../init.d/logstash
   /etc/rc5.d/S95logstash -> ../init.d/logstash

Schließlich starte logstash

sudo /etc/init.d/logstash start

Installation von Kibana

Verwenden Sie die folgenden Befehle nacheinander, um Kibana zu importieren und zu installieren

echo "deb http://packages.elastic.co/kibana/4.5/debian stable main" | sudo tee -a /etc/apt/sources.list
sudo apt-get update && sudo apt-get install kibana

Konfigurieren Sie nun Kibana so, dass es beim Booten mit

gestartet wird
sudo update-rc.d kibana defaults 95 10
Result:

Adding system startup for /etc/init.d/kibana ...
   /etc/rc0.d/K10kibana -> ../init.d/kibana
   /etc/rc1.d/K10kibana -> ../init.d/kibana
   /etc/rc6.d/K10kibana -> ../init.d/kibana
   /etc/rc2.d/S95kibana -> ../init.d/kibana
   /etc/rc3.d/S95kibana -> ../init.d/kibana
   /etc/rc4.d/S95kibana -> ../init.d/kibana
   /etc/rc5.d/S95kibana -> ../init.d/kibana

Konfigurieren Sie die Kibana-Datei so, dass nur Sie Zugriff auf die Schnittstelle haben.

sudo vi /opt/kibana/config/kibana.yml

Suchen Sie in der Kibana-Konfigurationsdatei die Zeile server.host und ersetzen Sie „0.0.0.0“ durch „localhost“:Speichern und beenden Sie dann die Konfigurationsdatei.

server.host: "localhost"

Starten Sie nun den Dienst neu

sudo service kibana restart

Installation von NGINX

Bevor wir die Kibana-Weboberfläche verwenden können, müssen Sie einen Reverse-Proxy installieren. Installieren Sie NGINX also mit dem folgenden Befehl.

sudo apt-get install nginx apache2-utils

Durch Ausführen des folgenden Befehls müssen Sie den Benutzernamen und das Passwort für die Kibana-Webschnittstelle einrichten

sudo htpasswd -c /etc/nginx/htpasswd.users kibadmin

Anstelle von kibadmin können Sie einen beliebigen Namen Ihrer Wahl verwenden. Es erscheint eine Aufforderung zur Eingabe eines neuen Passworts. Geben Sie das Passwort für Ihr Kibana-Konto ein und schließen Sie den Vorgang ab.

Nehmen Sie nun Änderungen am Nginx-Standardserverblock vor, indem Sie Folgendes verwenden

sudo vim /etc/nginx/sites-available/default

Löschen Sie den Inhalt der Datei und fügen Sie den folgenden Code in die Datei ein, speichern Sie sie und beenden Sie sie.

server {
        listen 80;

        server_name yourdomain;

        auth_basic "Restricted Access";
        auth_basic_user_file /etc/nginx/htpasswd.users;

        location / {
            proxy_pass http://localhost:5601;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
        }
    }

Stellen Sie sicher, dass Sie yourdomain durch Ihren entsprechenden Domainnamen ersetzen. Starten Sie dann den Webserver neu, indem Sie den folgenden Befehl ausführen.

sudo service nginx restart

Der ELK-Stack ist jetzt erfolgreich auf dem Server installiert

Generierung von SSL-Zertifikaten

Generieren Sie ein SSL-Zertifikat, indem Sie die Schritte im Link ausführen, indem Sie hier klicken.

Wenn Sie einen Schlüssel und ein Zertifikat haben, legen Sie sie in /etc/nginx/cert.key ab und /etc/nginx/cert.pem und erstellen Sie dann eine Datei /etc/nginx/sites-available/nsm mit folgendem Inhalt:

server {
	listen 80 default_server;
	return 301 https://$host$request_uri;
}

server {
        listen 443 ssl;
        server_name hostname; <-- edit this to match your hostname
 
        root html;
        index index.html index.htm;
 
        ssl on;
        ssl_certificate cert.pem;
        ssl_certificate_key cert.key;
	ssl_session_timeout 1d;
	ssl_session_cache shared:SSL:50m;
 
	ssl_protocols TLSv1.2;
	ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
	ssl_prefer_server_ciphers on;

	location / {
		proxy_pass http://127.0.0.1:5601;
		include proxy_params;
	}
}

Löschen Sie die standardmäßige Nginx-Konfigurationsdatei und aktivieren Sie die neue, indem Sie den folgenden Befehl verwenden, und starten Sie dann den Webserver neu.

$ sudo rm /etc/nginx/sites-enabled/default && sudo ln -s /etc/nginx/sites-available/nsm /etc/nginx/sites-enabled/nsm
$ sudo /etc/init.d/nginx restart

Wenn alles ordnungsgemäß ausgeführt wird, ist die zentrale Suchinfrastruktur vorhanden und sollte unter https:///

erreichbar sein


Ubuntu
  1. So installieren Sie den ELK-Stack (Elasticsearch, Logstash und Kibana) unter Ubuntu 18.04 / 20.04

  2. Installation des LEMP-Stacks auf Ubuntu 14.04

  3. Installieren des LAMP-Stacks unter Ubuntu 14.04

  4. Fglrx-Treiber Ubuntu installieren?

  5. So installieren Sie den ELK-Stack unter Ubuntu 16.04

So installieren Sie den ELK-Stack unter CentOS 8

So installieren Sie Elasticsearch auf Ubuntu 18.04 LTS

So installieren Sie den ELK-Stack unter Ubuntu 20.04 LTS

So installieren Sie Elasticsearch auf Ubuntu 20.04 LTS

So installieren Sie den ELK-Stack unter Debian 8

So installieren Sie den ELK-Stack unter Ubuntu 20.04