Geekflare wird von unserem Publikum unterstützt. Es kann sein, dass wir durch den Kauf von Links auf dieser Seite Affiliate-Provisionen verdienen.
Unter Linux Zuletzt aktualisiert: September 24, 2023
Weitergeben:
Invicti Web Application Security Scanner - die einzige Lösung, die eine automatische Überprüfung von Schwachstellen mit Proof-Based Scanning™ ermöglicht.

In diesem Lernprogramm werde ich über Prometheus und Grafana sprechen. Sie werden lernen, wie Sie beides auf CentOS/RHEL installieren und verstehen, wie Sie Prometheus und Grafana zur Überwachung des Linux-Servers verwenden

Einführung

Grafana ist eine führende Zeitserien- und Open-Source-Plattform für Visualisierung und Überwachung. Sie ermöglicht es Ihnen, Metriken abzufragen, zu visualisieren, Alarme einzustellen und zu verstehen, egal wo sie gespeichert sind. Sie können in Grafana erstaunliche Dashboards erstellen, um die Metriken zu visualisieren und zu überwachen

Prometheus ist ein Open-Source-Zeitreihenüberwachungssystem für maschinenzentrierte und hochdynamische serviceorientierte Architekturen. Es kann buchstäblich alles überwachen. Es lässt sich sehr gut in Grafana integrieren, da Grafana auch Prometheus als eine seiner Datenquellen anbietet

Wenn Sie ein Neuling sind, empfehle ich Ihnen einen Artikel über die Einführung in Prometheus und Grafana

Ich zeige Ihnen, wie Sie sie auf CentOS installieren. Sie sollten über mindestens 2 GB RAM verfügen. Sie können einen Cloud-Server von DigitalOcean zum Ausprobieren erhalten

Installieren von Prometheus

Schritt 1: Prometheus herunterladen

Laden Sie das neueste Prometheus Linux-Paket von der offiziellen Seite herunter

Prüfen Sie die offizielle Versionsseite, um die neueste Version zu erhalten

[centos@geekflare ~]$ wget https://github.com/prometheus/prometheus/releases/download/v2.18.1/prometheus-2.18.1.linux-amd64.tar.gz
--2020-05-20 10:06:22--
https://github.com/prometheus/prometheus/releases/download/v2.18.1/prometheus-2.18.1.linux-amd64.tar.gz
Auflösen von github.com (github.com)... 13.234.176.102
Verbindung zu github.com (github.com)|13.234.176.102|:443... verbunden.
HTTP-Anfrage gesendet, Antwort wird erwartet... 302 Found
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/6838921/2f454700-90ae-11ea-89e1-3aeb351fdfa5?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A/20200520/us-east-1/s3/aws4_request&X-Amz-Date=20200520T140622Z&X-Amz-Expires=300&X-Amz-Signature=53d5c6a02e8eeee82f380c4d1edf62a7adfb2b38f2b173059852040b14ddb19c&X-Amz-SignedHeaders=host&actor_id=0&repo_id=6838921&response-content-disposition=attachment; filename=prometheus-2.18.1.linux-amd64.tar.gz&response-content-type=application/octet-stream <x>[following]</x>
--2020-05-20 10:06:22--
https://github-production-release-asset-2e65be.s3.amazonaws.com/6838921/2f454700-90ae-11ea-89e1-3aeb351fdfa5?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A/20200520/us-east-1/s3/aws4_request&X-Amz-Date=20200520T140622Z&X-Amz-Expires=300&X-Amz-Signature=53d5c6a02e8eeee82f380c4d1edf62a7adfb2b38f2b173059852040b14ddb19c&X-Amz-SignedHeaders=host&actor_id=0&repo_id=6838921&response-content-disposition=attachment; filename=prometheus-2.18.1.linux-amd64.tar.gz&response-content-type=application/octet-stream
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.24.236
Verbindung zu github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.24.236|:443... verbunden.
HTTP-Anfrage gesendet, erwarte Antwort... 200 OK
Länge: 63373350 (60M) [application/octet-stream]
Speichern in: ‘prometheus-2.18.1.linux-amd64.tar.gz’

100%[============================================================================================================>] 63.373.350 2.09MB/s in 50s

2020-05-20 10:07:13 (1.21 MB/s) - 'prometheus-2.18.1.linux-amd64.tar.gz' gespeichert [63373350/63373350]

Entpacken Sie das Paket, das Sie heruntergeladen haben

[centos@geekflare ~]$ tar -xzf prometheus-2.18.1.linux-amd64.tar.gz
[centos@geekflare ~]$ ls
Desktop
Dokumente Downloads Musik
Bilder
prometheus-2.18.1.linux-amd64
prometheus-2.18.1.linux-amd64.tar.gz
Public Templates Videos

Schritt 2: Prometheus konfigurieren

Erstellen Sie einen neuen Benutzer Prometheus mit dem folgenden Befehl

[centos@geekflare ~]$ sudo useradd -s /sbin/false prometheus

Geben Sie dem Benutzer Prometheus alle Rechte an den Prometheus-Dateien. Machen Sie alle Dateien im angegebenen Pfad ausführbar.

[centos@geekflare ~]$ sudo chmod 755 prometheus-2.18.1.linux-amd64 -R
[centos@geekflare ~]$ sudo chown prometheus:prometheus prometheus-2.18.1.linux-amd64 -R

Es ist nun an der Zeit, Prometheus als Dienst innerhalb von systemd zu konfigurieren. Erstellen Sie eine Datei prometheus.service und fügen Sie die unten genannten Zeilen in die Datei ein und speichern Sie sie

[centos@geekflare ~]$ sudo gedit /etc/systemd/system/prometheus.service
[Einheit]
Beschreibung=Prometheus Server
Wants=network-online.target
After=network-online.target

[Dienst]
User=prometheus
Group=prometheus
Type=simple
ExecStart= /home/centos/prometheus-2.18.1.linux-amd64/prometheus \
--config.file= /home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml \
--storage.tsdb.path=/home/centos/prometheus-2.18.1.linux-amd64/ \
--web.console.templates= /home/centos/prometheus-2.

18.

1.linux-amd64/consoles \
--web.console.libraries= /home/centos/prometheus-2.18.1.linux-amd64/console_libraries

[Install]
WantedBy=multi-user.target

Schritt 3: Starten Sie Prometheus

Laden Sie mit systemctl das systemd-System neu und starten Sie den Prometheus-Dienst. Der Status des Dienstes sollte anzeigen, dass er läuft, wenn Sie alle Schritte korrekt ausgeführt haben

[centos@geekflare prometheus]$ sudo systemctl daemon-reload
[centos@geekflare prometheus]$ sudo systemctl start prometheus.service
[centos@geekflare prometheus]$ sudo systemctl enable prometheus.service
[centos@geekflare prometheus]$ sudo systemctl status prometheus.service -l
● prometheus.service - Prometheus Server
Geladen: geladen (/etc/systemd/system/prometheus.service; aktiviert; Hersteller-Voreinstellung: deaktiviert)
Aktiv: aktiv (läuft) seit Wed 2020-05-20 14:18:47 EDT; vor 5s
Haupt-PID: 23924 (prometheus)
CGroup: /system.slice/prometheus.service
└─23924 /home/centos/prometheus-2.18.1.linux-amd64/prometheus --config.file=/home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml --storage.tsdb.path=/home/centos/prometheus-2.18.1.linux-amd64/ --web.console.templates=/home/centos/prometheus-2.18.1.linux-amd64/consoles --web.console.libraries=/home/centos/prometheus-2.18.1.linux-amd64/console_libraries

May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.885Z caller=web.go:523 component=web msg="Start listening for connections" address=0.0.0.0:9090
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.888Z caller=head.go:624 component=tsdb msg="WAL segment loaded" segment=0 maxSegment=2
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.889Z caller=head.go:624 component=tsdb msg="WAL segment loaded" segment=1 maxSegment=2
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.889Z caller=head.go:624 component=tsdb msg="WAL segment loaded" segment=2 maxSegment=2
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.889Z caller=head.go:627 component=tsdb msg="WAL replay completed" duration=4.498147ms
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.909Z caller=main.go:694 fs_type=XFS_SUPER_MAGIC
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.909Z caller=main.go:695 msg="TSDB gestartet"
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.909Z caller=main.go:799 msg="Lade Konfigurationsdatei" filename=/home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.936Z caller=main.go:827 msg="Beendetes Laden der Konfigurationsdatei" filename=/home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.936Z caller=main.go:646 msg="Der Server ist bereit, Webanfragen zu empfangen."

Schritt 4: Zugriff auf die Prometheus Web UI

Öffnen Sie den Browser und greifen Sie über Port 9090 auf die IP-Adresse des Servers zu, um auf die Weboberfläche von Prometheus zuzugreifen.

prometheus web ui - geekflare
Gehen Sie zu Status>>Ziele, um zu sehen, was alles und wo Prometheus gerade läuft

prometheus ziel - geekflare

Grafana installieren

Schritt 1: Grafana Repo hinzufügen

Standardmäßig ist das Grafana-Repository nicht in den CentOS-Repositories vorhanden, daher müssen Sie es hinzufügen. Erstellen Sie eine Datei grafana.repo in /etc/yum.repos.d/ und fügen Sie die folgenden Zeilen hinzu

[centos@geekflare ~]$ sudo gedit /etc/yum.repos.d/grafana.repo

[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1

gpgcheck=1


gpgkey=https://packages.grafana.com/gpg.key

sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

Schritt 2: Grafana installieren

Aktualisieren Sie CentOS und installieren Sie das Grafana-Paket

[centos@geekflare ~]$ sudo yum update -y

[centos@geekflare ~]$ sudo yum install grafana
Geladene Plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.piconets.webwerks.in
* extras: mirrors.piconets.webwerks.in
* updates: mirrors.piconets.webwerks.in
Auflösen von Abhängigkeiten
-->
 Transaktionsprüfung läuft
--->
 Paket grafana.x86_64 0:7.0.0-1 wird installiert
-->
 Beendete Abhängigkeitsauflösung

Aufgelöste Abhängigkeiten

======================================================================================================================================================
Paket Arch Version Repository Größe
======================================================================================================================================================
Installieren:
grafana x86_64 7.0.0-1 grafana 46 M

Transaktionszusammenfassung
======================================================================================================================================================
Installieren Sie 1 Paket

Gesamtgröße des Downloads: 46 M
Installierte Größe: 141 M
Ist das ok [y/d/N]: y
Herunterladen von Paketen:
Keine Presto-Metadaten für grafana verfügbar
warning: /var/cache/yum/x86_64/7/grafana/packages/grafana-7.0.0-2.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID 24098cb6: NOKEY MB 00:00:00 ETA
Der öffentliche Schlüssel für grafana-7.0.0-2.x86_64.rpm ist nicht installiert
grafana-7.0.0-2.x86_64.rpm | 46 MB
00:00:07
Abrufen des Schlüssels von https://packages.grafana.com/gpg.key
Importieren des GPG-Schlüssels 0x24098CB6:
Userid : "Grafana <info@grafana.com>"
Fingerprint: 4e40 ddf6 d76e 284a 4a67 80e4 8c8c 34c5 2409 8cb6
From : https://packages.grafana.com/gpg.key
Is this ok [y/N]: y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : grafana-7.0.0-1.x86_64 1/1
### Da grafana bei der Installation NICHT startet, führen Sie bitte die folgenden Anweisungen aus, um grafana so zu konfigurieren, dass es automatisch mit systemd startet
sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable grafana-server.service

###

 Sie können grafana-server starten, indem Sie

sudo

/bin/systemctl start grafana-server.service
POSTTRANS: Running script
Verifying : grafana-7.0.0-1.x86_64

1/1



Installed:
grafana.x86_64 0:7.0.0-1

Complete!

Schritt 3: Grafana starten

Starten Sie den Grafana-Server und überprüfen Sie den Status, ob er läuft oder nicht

[centos@geekflare ~]$ sudo systemctl start grafana-server
[centos@geekflare ~]$ sudo systemctl status grafana-server
● grafana-server.service - Grafana-Instanz
Geladen: geladen (/usr/lib/systemd/system/grafana-server.service; disabled; vendor preset: disabled)
Active: aktiv (läuft) seit Wed 2020-05-20 07:04:32 EDT; vor 6s
Docs: http://docs.grafana.org
Main PID: 7672 (grafana-server)
Tasks: 9
CGroup: /system.slice/grafana-server.service
└─7672 /usr/sbin/grafana-server --config=/etc/grafana/grafana.ini --pidfile=/var/run/grafana/grafana-server.pid --packaging=rpm cfg:defa...

May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Executing migration" logger=migrator...token"
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Executing migration" logger=migrator...token"
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Executing migration" logger=migrator...table"
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Executing migration" logger=migrator...e_key"
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Created default admin" logger=sqlsto...=admin
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Starte Plugin-Suche" logger=plugins
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Registering plugin" logger=plugins n...Input"
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Externes Plugins-Verzeichnis erstellt" ...lugins
May 20 07:04:32 geekflare.linuxvmimages.com systemd[1]: Grafana-Instanz gestartet.
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="HTTP Server Listen" logger=http.serv...ocket=

Hinweis

: Einige Zeilen wurden mit Ellipsen versehen, verwenden Sie -l, um sie vollständig anzuzeigen

Schritt 4: Zugriff auf die Grafana Web UI

Sobald der Dienst läuft, greifen Sie auf die IP des Servers mit Port 3000 zu, um auf die Web-Oberfläche von Grafana zuzugreifen. Beim ersten Mal müssen Sie admin als störenden Benutzernamen und Passwort verwenden; anschließend werden Sie aufgefordert, Ihr eigenes Passwort festzulegen
grafana web ui - geekflare

So sieht die Startseite von Grafana aus

grafana Startseite - geekflare

Node Exporter installieren

node_exporter ist ein offizielles Paket, das auf zu überwachenden Linux-Servern installiert werden sollte. Es stellt mehrere Hardware- und Betriebssystemmetriken zur Verfügung, die von Prometheus abgerufen und schließlich in Grafana visualisiert werden

Schritt 1: Node Exporter herunterladen

Verwenden Sie wget, um das Node Exporter-Paket auf Ihren Server herunterzuladen
Besuchen Sie die

Release-Seite, um die neueste Version zu erhalten

[centos@geekflare ~]$ wget https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.1/node_exporter-1.0.0-rc.1.linux-amd64.tar.gz
--2020-05-20 15:56:13--
https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.1/node_exporter-1.0.0-rc.1.linux-amd64.tar.gz
Resolving github.com (github.com)... 13.234.176.102
Verbindung zu github.com (github.com)|13.234.176.102|:443... verbunden.
HTTP-Anfrage gesendet, Antwort wird erwartet... 302 Found
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/9524057/b34b8180-960e-11ea-8df0-39a17445b82f?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A/20200520/us-east-1/s3/aws4_request&X-Amz-Date=20200520T195614Z&X-Amz-Expires=300&X-Amz-Signature=7f4d746946569dbe71bba5785fb4947348e5e0de1c2e8516b2390a2df2eda801&X-Amz-SignedHeaders=host&actor_id=0&repo_id=9524057&response-content-disposition=attachment; filename=node_exporter-1.0.0-rc.1.linux-amd64.tar.gz&response-content-type=application/octet-stream <x>[following]</x>
--2020-05-20 15:56:14--
https://github-production-release-asset-2e65be.s3.amazonaws.com/9524057/b34b8180-960e-11ea-8df0-39a17445b82f?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A/20200520/us-east-1/s3/aws4_request&X-Amz-Date=20200520T195614Z&X-Amz-Expires=300&X-Amz-Signature=7f4d746946569dbe71bba5785fb4947348e5e0de1c2e8516b2390a2df2eda801&X-Amz-SignedHeaders=host&actor_id=0&repo_id=9524057&response-content-disposition=attachment; filename=node_exporter-1.0.0-rc.1.linux-amd64.tar.gz&response-content-type=application/octet-stream
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.95.83
Verbindung zu github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.95.83|:443... verbunden.
HTTP-Anfrage gesendet, Antwort erwartet... 200 OK
Länge: 8734373 (8.3M) [application/octet-stream]
Speichern in: ‘node_exporter-1.0.0-rc.1.linux-amd64.tar.gz’

100%[============================================================================================================>] 8.734.373 755KB/s in 11s

2020-05-20 15:56:26 (769 KB/s) - 'node_exporter-1.0.0.0-rc.1.linux-amd64.tar.gz' gespeichert [8734373/8734373]

Entpacken Sie die heruntergeladene Datei

[centos@geekflare ~]$ tar -xzf node_exporter-1.0.0-rc.1.linux-amd64.tar.gz

Schritt 2: Node Exporter konfigurieren

Es ist nun an der Zeit, Node Exporter als Dienst innerhalb von systemd zu konfigurieren. Erstellen Sie eine Datei node_exporter.service und fügen Sie die unten aufgeführten Zeilen in die Datei ein und speichern Sie sie.

[centos@geekflare ~]$ sudo gedit /etc/systemd/system/node_exporter.service

[Unit]

Description=node_exporter
Wants=network-online.target
After=network-online.target

[Service]

User=prometheus
Group=prometheus
Type=simple
ExecStart=/home/centos/node_exporter-1.0.0-rc.1.linux-amd64/node_exporter

[Installieren]

WantedBy=multi-user.target

Schritt 3: Starten Sie Node Exporter

[centos@geekflare ~]$ sudo systemctl daemon-reload
[centos@geekflare ~]$ sudo systemctl start node_exporter
[centos@geekflare ~]$ sudo systemctl status node_exporter
● node_exporter.service - node_exporter
 Geladen: geladen (/etc/systemd/system/node_exporter.service; aktiviert; Hersteller-Voreinstellung: deaktiviert)
 Aktiv: aktiv (läuft) seit Wed 2020-05-27 03:42:54 EDT; vor 2s
 Haupt-PID: 9658 (node_exporter)
 Aufgaben: 3
 CGruppe: /system.slice/node_exporter.service
 └─9658 /home/centos/node_exporter-1.0.0-rc.1.linux-amd64/node_exporter

May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=t...l_zone
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=time
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=timex
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=udp_queues
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=uname
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=vmstat
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=xfs
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=zfs
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:191 msg="Listen...=:9100
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=tls_config.go:170 msg="TLS ist di...=false

Server zu Prometheus hinzufügen

Schritt 1: Bearbeiten Sie prometheus.yml

Sie müssen einen neuen Job in der Datei prometheus.yml hinzufügen. Öffnen Sie eine neue Registerkarte im Terminal und bearbeiten Sie die Datei wie unten beschrieben

[centos@geekflare ~]$ sudo gedit prometheus.yml

- job_name: 'node_exporter'
static_configs:
- targets: ['localhost:9100']

Hinweis: Oben habe ich den localhost im Ziel konfiguriert, da ich den Prometheus-Server selbst überwachen möchte. Sie können dies in die tatsächliche IP des Linux-Servers ändern. Port 9100 ist der Standardport von node_exporter

Schritt 2: Anhalten und Starten von Prometheus

[centos@geekflare]$ sudo systemctl stop prometheus.service
[centos@geekflare]$ sudo systemctl start prometheus.service

Schritt 3: Ziele überprüfen

Gehen Sie zu https://localhost:9090/targets; Sie finden dort laufende Targets, eines davon ist der Node-Exporter

prometheus Ziele - geekflare

Integration von Prometheus in Grafana

Nun, da Grafana und Prometheus installiert sind, können wir sie für die Überwachung von Servern verwenden

  • Gehen Sie zur Grafana-Startseite und klicken Sie auf das Einstellungssymbol auf der linken Seite. Klicken Sie dann auf "Datenquellen".
  • Klicken Sie auf Datenquelle hinzufügen und wählen Sie Prometheus.

Datenquelle hinzufügen - geekflare

  • Geben Sie als URL die IP-Adresse des Prometheus-Servers mit Port 9090 an. In diesem Beispiel betreibe ich Prometheus und Grafana auf demselben Server, so dass es http://localhost:9090 wäre.
  • Klicken Sie auf Speichern & Testen. Sie erhalten eine Erfolgsmeldung, dass die Datenquelle hinzugefügt wurde.

Datenquelle prometheus - geekflare

Großartig!

Grafana ist nun erfolgreich mit Prometheus verbunden. Nun ist es an der Zeit, ein Dashboard zu erstellen. Der Einfachheit halber verwende ich das bestehende Node-Exporter-Dashboard, das auf der offiziellen Website von Grafana zur Überwachung von Linux-Server-Metriken zur Verfügung steht

  • Gehen Sie zum Grafana Home Dashboard, klicken Sie auf Zeichen und dann auf Importieren.
  • Geben Sie unter Import via grafana.com die Dashboard-ID ein. 1860 ein und klicken Sie auf Laden.

grafana importieren - geekflare

  • Wählen Sie dann die Prometheus-Datenquelle und klicken Sie auf Importieren.

grafana import node exporter - geekflare

  • Das komplette Dashboard des Node-Exporters wird importiert. Sie können sehen, dass alle Metriken wie Systemauslastung, genutzter Ram, CPU-Auslastung usw. erfolgreich in Grafana überwacht werden.

grafana monitor - geekflare

  • Wenn Sie nach unten scrollen, sehen Sie, dass Grafana in der Lage ist, eine Vielzahl von Metriken zu visualisieren.

Node-Exporter Dashboard - geekflare

  • Wenn Sie weitere Informationen erhalten möchten, können Sie auf die jeweilige Metrik klicken und sie im Detail betrachten. Hier prüfe ich die Visualisierung des Netzwerkverkehrs nach Paketen für die letzten 30 Minuten.

netzwerkverkehr ui - geekflare

Fazit

Ich hoffe, Sie haben jetzt eine Vorstellung davon, wie Sie Grafana und Prometheus für Servermetriken einrichten können. Es gibt noch mehr Möglichkeiten, Server zu überwachen - Sie können es mit Cloud-basierte Serverüberwachungoder Selbstgehostete, leichtgewichtige Software versuchen

Wenn Sie daran interessiert sind, Grafana zu lernen, empfehle ich Ihnen diesen Udemy-Praxiskurs.

  • Avi
    Autor
    Avi ist ein Technik-Enthusiast mit Fachkenntnissen in Trendtechnologien wie DevOps, Cloud Computing, Big Data und vielen mehr. Seine Leidenschaft ist es, Spitzentechnologien zu lernen und sein Wissen mit anderen zu teilen, indem er... mehr lesen
Dank an unsere Sponsoren
Weitere gute Lektüre zu Linux
Energie für Ihr Unternehmen
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti nutzt das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu überprüfen und innerhalb weniger Stunden verwertbare Ergebnisse zu erzielen.
    Versuchen Sie Invicti
  • Web Scraping, Residential Proxy, Proxy Manager, Web Unlocker, Search Engine Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie Brightdata
  • Monday.com ist ein All-in-One-Betriebssystem, mit dem Sie Projekte, Aufgaben, Arbeit, Vertrieb, CRM, Arbeitsabläufe und vieles mehr verwalten können.
    Versuch Montag
  • Intruder ist ein Online-Schwachstellen-Scanner, der Schwachstellen in Ihrer Infrastruktur aufspürt, um kostspielige Datenschutzverletzungen zu vermeiden.
    Versuchen Sie Intruder