GNU/Linux >> LINUX-Kenntnisse >  >> Rocky Linux

So installieren Sie Prometheus und Node Exporter unter Rocky Linux

Prometheus ist eine Open-Source-Überwachungs- und Warnplattform.

Ursprünglich wurde Prometheus 2012 von Soundcloud erstellt. Seitdem ist das Prometheus-Projekt, das von einigen berühmten Unternehmen übernommen wurde, zu einem größeren Projekt mit sehr aktiven Entwicklern und einer Community geworden. Und 2016 wird das Prometheus-Projekt von der Cloud Native Computing Foundation (CNCF) abgeschlossen .

Grundlegende Konzepte, die Sie kennen müssen

Im Grunde Prometheus sammelt Daten und Metriken über HTTP-Endpunkte von Zielservern und speichert dann alle Daten als Zeitreihen. In Prometheus werden Zeitreihendaten durch Metriknamen und Schlüssel/Wert-Paare identifiziert.

Prometheus bietet Flexibilität durch die Prometheus Query Language (PromQL). Sie können PromQL verwenden, um die Prometheus-Zeitreihendatenbank abzufragen.

Auf den Zielservern müssen Sie den 'Exporter installieren '-Anwendung, die Prometheus alle Daten und Metriken zur Verfügung stellt. 'Node Exporter' ist ein häufig verwendeter Exporter zur Überwachung von Linux-Rechnern.

Knoten-Exporter legt Hardware- und Kernel-bezogene Matrizen von Linux-Maschinen offen. Es wird als einzelne Binärdatei geliefert, die Datenendmetriken für den Prometheus-Server verfügbar macht.

Voraussetzungen

In diesem Artikel erfahren Sie, wie Sie das Prometheus-Überwachungstool und den Node Exporter auf einem Rocky Linux 8-System installieren.

Bevor Sie beginnen, vergewissern Sie sich, dass die folgenden Anforderungen erfüllt sind:

  • Betriebssystem:Rocky Linux 8.5 (Green Obsidian)
  • Root-Rechte

Für dieses Beispiel verwenden wir das Rocky Linux-System mit der IP-Adresse „192.168.1.10 '.

Jetzt fangen wir an.

Neuen Benutzer und neues Verzeichnis hinzufügen

Zuerst erstellen Sie einen neuen Systembenutzer „prometheus“, dann ein neues Konfigurationsverzeichnis und ein neues Datenverzeichnis für die Prometheus-Installation.

1. Führen Sie den folgenden Befehl aus, um einen neuen Benutzer „prometheus“ zu erstellen '.

sudo adduser -M -r -s /sbin/nologin prometheus

2. Erstellen Sie danach ein neues Konfigurationsverzeichnis '/etc/prometheus ' und das Datenverzeichnis '/var/lib/prometheus ' mit dem folgenden Befehl.

sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus

Die gesamte Prometheus-Konfiguration ist unter '/etc/prometheus verfügbar ' Verzeichnis, und alle Prometheus-Daten werden automatisch im Verzeichnis '/var/lib/prometheus gespeichert '.

Installieren von Prometheus unter Rocky Linux

In diesem Schritt installieren Sie das Prometheus-Überwachungssystem manuell aus der Tarball- oder tar.gz-Datei.

Wählen Sie die Prometheus-Version über diesen Link. In diesem Beispiel installieren wir die neueste Version von Prometheus.

1. Ändern Sie das Arbeitsverzeichnis in „/usr/src“ und laden Sie die Prometheus-Binärdatei mit dem folgenden Befehl herunter.

cd /usr/src
wget https://github.com/prometheus/prometheus/releases/download/v2.31.1/prometheus-2.31.1.linux-amd64.tar.gz

Extrahieren Sie nach Abschluss des Download-Vorgangs die Prometheus-Datei.

tar -xf prometheus-2.31.1.linux-amd64.tar.gz

Jetzt sehen Sie ein neues Verzeichnis 'prometheus-VERSION.OS '.

2. Als nächstes kopieren Sie alle Prometheus-Konfigurationen in das Verzeichnis '/etc/prometheus' und die Binärdatei 'prometheus ' in die '/usr/local/bin ' Verzeichnis.

Richten Sie die Umgebungsvariable 'PROM_SRC ein ' in das Verzeichnis '/usr/src/prometheus-* '.

export PROM_SRC=/usr/src/prometheus-*

Kopieren Sie die Prometheus-Konfiguration 'prometheus.yml ' in das Verzeichnis '/etc/prometheus .

sudo cp $PROM_SRC/prometheus.yml /etc/prometheus/

Kopieren Sie die Binärdatei 'prometheus ' und 'promtool ' in das Verzeichnis '/usr/local/bin/ '.

sudo cp $PROM_SRC/prometheus /usr/local/bin/
sudo cp $PROM_SRC/promtool /usr/local/bin/

Kopieren Sie Prometheus-Konsolenvorlagen und -Bibliotheken in das Verzeichnis „/etc/prometheus“.

sudo cp -r $PROM_SRC/consoles /etc/prometheus
sudo cp -r $PROM_SRC/console_libraries /etc/prometheus

3. Bearbeiten Sie als Nächstes die Prometheus-Konfiguration „/etc/prometheus/prometheus.yml“ Verwenden des Nano-Editors.

nano /etc/prometheus/prometheus.yml

Auf der 'scrape_configs '-Option müssen Sie möglicherweise Überwachungsjobs hinzufügen und erfahren, wie alle Daten vom Ziel gelöscht werden.

Die Standardkonfiguration enthält den Standardnamen des Überwachungsjobs „prometheus“ und den Zielserver „localhost ' durch die 'static_configs ' Option.

Ändern Sie das Ziel von 'localhost:9090' an die Server-IP-Adresse '192.168.1.10:9090 ' wie unten.

# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["192.168.1.10:9090"]

Speichern Sie die Konfiguration und beenden Sie.

4. Führen Sie nun den folgenden Befehl aus, um die Konfigurations- und Datenverzeichnisse auf den Benutzer 'promethues zu ändern '.

sudo chown prometheus:prometheus /etc/prometheus
sudo chown prometheus:prometheus /var/lib/prometheus

Jetzt haben Sie die grundlegende Prometheus-Installation abgeschlossen.

Prometheus-Dienstdatei einrichten

In diesem Schritt richten Sie Prometheus als Systemdienst ein.

1. Erstellen Sie eine neue Systemd-Dienstdatei „/etc/systemd/system/prometheus.service“ mit dem Nano-Editor.

sudo nano /etc/systemd/system/prometheus.service

Kopieren Sie die folgende Konfiguration und fügen Sie sie ein.

[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target

[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \
    --config.file /etc/prometheus/prometheus.yml \
    --storage.tsdb.path /var/lib/prometheus/ \
    --web.console.templates=/etc/prometheus/consoles \
    --web.console.libraries=/etc/prometheus/console_libraries

[Install]
WantedBy=multi-user.target

Speichern Sie die Konfiguration und beenden Sie.

2. Laden Sie als Nächstes den systemd-Manager neu, um eine neue Konfiguration anzuwenden.

sudo systemctl daemon-reload

3. Führen Sie nun den folgenden Befehl aus, um den Prometheus-Dienst zu starten und zu aktivieren, und überprüfen Sie dann den aktuellen Status.

sudo systemctl enable --now prometheus
sudo systemctl status prometheus

Wenn Ihre Installation erfolgreich ist, sehen Sie, dass der Prometheus-Dienst aktiv ist und wie unten ausgeführt wird.

Das Prometheus-Überwachungstool ist jetzt über den TCP-Port '9090 zugänglich .

4. Öffnen Sie Ihren Webbrowser und geben Sie die Server-IP-Adresse mit Port „9090“ ein ' in der Adressleiste.

http://192.168.1.10:9090/

Und Sie sehen die Prometheus-Dashboard-Abfrage unten.

Jetzt haben Sie die Prometheus-Installation abgeschlossen. Fahren Sie mit dem nächsten Schritt zur Installation von Node Exporter fort.

Node Exporter unter Rocky Linux installieren

Node Exporter ist Teil des Prometheus-Projekts. Sie können den Node-Exporter verwenden, um Metriken von Linux-Servern auf den Prometheus-Server zu exportieren.

In diesem Schritt installieren Sie den Node-Exporter auf dem Rocky Linux-System aus der tar.gz-Datei.

Überprüfen Sie diesen Link, um die neueste Version des Node-Exporters zu erhalten. In diesem Beispiel installieren wir die Node-Exporter-Version 1.3.0.

1. Ändern Sie das Arbeitsverzeichnis in „/usr/src ' und laden Sie die Binärdatei des Node-Exporters mit dem folgenden Befehl herunter.

cd /usr/src/
wget https://github.com/prometheus/node_exporter/releases/download/v1.3.0/node_exporter-1.3.0.linux-amd64.tar.gz

Wenn der Download-Vorgang abgeschlossen ist, extrahieren Sie die Node-Exporter-Datei.

tar -xf node_exporter-1.3.0.linux-amd64.tar.gz

Jetzt erhalten Sie ein neues Verzeichnis 'node_exporter-VERSION.OS '.

2. Verschieben Sie als Nächstes die Binärdatei des Node-Exporters in das Verzeichnis '/usr/local/bin ' mit dem folgenden Befehl.

mv node_exporter-*/node_exporter /usr/local/bin

Fahren Sie mit dem nächsten Schritt fort, um den Knotenexporter als Systemdienst einzurichten.

Node_exporter als Dienst einrichten

Erstellen Sie vor dem Erstellen einer Node-Exporter-Dienstdatei einen neuen Systembenutzer „node_exporter“ .

1. Führen Sie den folgenden Befehl aus, um einen neuen Systembenutzer zu erstellen.

sudo adduser -M -r -s /sbin/nologin node_exporter

2. Erstellen Sie als Nächstes eine neue Dienstdatei für den Knotenexporter „/etc/systemd/system/node_exporter.service“ mit dem Nano-Editor.

sudo nano /etc/systemd/system/node_exporter.service

Kopieren Sie die folgende Konfiguration und fügen Sie sie ein.

[Unit]
Description=Node Exporter
After=network.target

[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter

[Install]
WantedBy=multi-user.target

Speichern Sie die Konfiguration und beenden Sie.

3. Laden Sie nun den systemd-Manager neu, um die neue Konfiguration zu übernehmen.

sudo systemctl daemon-reload

4. Starten und aktivieren Sie den Dienst „node_exporter“ mit dem folgenden Befehl.

sudo systemctl enable --now node_exporter

Überprüfen Sie danach den aktuellen Status des Dienstes 'node_exporter'.

sudo systemctl status node_exporter

Stellen Sie sicher, dass der 'node_exporter ' Dienst ist aktiv und wird ausgeführt.

5. Der Node-Exporter wird auf dem Standardport „9100 ausgeführt '. Überprüfen Sie dies mit dem folgenden ss-Befehl.

ss -aplnt | grep node

Sie werden eine ähnliche Ausgabe wie unten sehen.

State    Recv-Q   Send-Q     Local Address:Port     Peer Address:Port   Process
LISTEN   0        128              0.0.0.0:22            0.0.0.0:*       users:(("sshd",pid=683,fd=4))
LISTEN   0        128                    *:9090                *:*       users:(("prometheus",pid=709,fd=8))
LISTEN   0        128                    *:9100                *:*       users:(("node_exporter",pid=5786,fd=3))
LISTEN   0        128                 [::]:22               [::]:*       users:(("sshd",pid=683,fd=6))

Und Sie haben die Installation des Node-Exporters auf dem Rocky Linux-System abgeschlossen.

Node_exporter zu Prometheus hinzufügen

Nachdem Sie die Installation von Prometheus und Node Exporter abgeschlossen haben, fügen Sie den Node Exporter zum Prometheus-Server hinzu.

1. Bearbeiten Sie die Prometheus-Konfiguration mit dem Nano-Editor.

sudo nano /etc/prometheus/prometheus.yml

Unter der 'scrape_config ' Abschnitt, fügen Sie einen neuen Prometheus-Job mit der folgenden Konfiguration hinzu. Und stellen Sie sicher, dass Sie die Server-IP-Adresse mit Ihrem Zielserver ändern.

  - job_name: 'node_exporter_metrics'
    scrape_interval: 5s
    static_configs:
      - targets: ['SERVER-IP:9100']

Speichern Sie die Konfiguration und beenden Sie.

2. Starten Sie nun den Prometheus-Dienst neu, um eine neue Konfiguration anzuwenden.

sudo systemctl restart prometheus

Und Sie haben den Node-Exporter zum Prometheus-Server hinzugefügt.

Überprüfen Sie die Installation von Prometheus und Node Exporter

1. Klicken Sie zurück zum Prometheus-Dashboard auf das Menü „Status ' und wählen Sie 'Ziele aus '.

Sie werden zwei verschiedene Endpunkte sehen, den 'prometheus ' und 'node_exporter_metrics '.

2. Wechseln Sie als nächstes zum Menü 'Grafik ' und geben Sie die PromQL-Abfrage in die Suchleiste ein. Überprüfen Sie für dieses Beispiel das detaillierte Betriebssystem mit der Abfrage 'node_os_info '.

Und Sie sehen detaillierte Informationen über Ihr aktuelles Betriebssystem.

3. Ein weiteres Beispiel:Überprüfen Sie die Netzwerkgeschwindigkeiten mit der Abfrage „node_network_speed_bytes“. ' und wechseln Sie dann zum Tab 'Grafik '. Und Sie werden eine ähnliche Ausgabe wie unten sehen.

Jetzt haben Sie Prometheus und den Node-Exporter erfolgreich auf dem Rocky Linux-System installiert.

Schlussfolgerung

Herzliche Glückwünsche! Sie haben die grundlegende Installation und Konfiguration des Prometheus-Überwachungssystems und des Node-Exporters auf dem Rocky Linux-System gelernt.

Im nächsten Schritt können Sie einen anderen Prometheus-Exporter für andere Anwendungen und Grafana als Überwachungs-Dashboard erkunden.


Rocky Linux
  1. So installieren Sie Docker und Docker-Compose unter Rocky Linux 8

  2. So installieren und konfigurieren Sie HAProxy unter Rocky Linux 8

  3. So installieren und verwenden Sie PostgreSQL 13 unter Rocky Linux

  4. So installieren Sie NodeJS und NPM auf Rocky Linux/Alma Linux 8

  5. So installieren und konfigurieren Sie Elasticsearch unter Rocky Linux 8

So installieren und konfigurieren Sie OpenCV unter Rocky Linux 8.4

So installieren Sie Docker unter Rocky Linux und AlmaLinux

So installieren Sie MongoDB unter Rocky Linux und AlmaLinux

So installieren Sie Java 16 in Rocky Linux und AlmaLinux

So installieren Sie NodeJS 14/16 und NPM auf Rocky Linux 8

So installieren Sie Node.js unter Rocky Linux 8