GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren und konfigurieren Sie Prometheus unter CentOS 7

Prometheus ist ein Open-Source-Toolkit, das ursprünglich bei SoundCloud zur Überwachung und Benachrichtigung entwickelt wurde. Das Toolkit ist jetzt ein eigenständiges Open-Source-Projekt und wird unabhängig von Unternehmen gepflegt.

Das Toolkit sammelt Metriken von überwachten Zielen, indem es HTTP-Endpunkte auf diesen Zielen verschrottet. Die meisten Prometheus-Komponenten befinden sich in Go. Einige in Java, Python und Ruby geschrieben.

Prometheus eignet sich gut zur Aufzeichnung beliebiger numerischer Zeitreihen. Es eignet sich sowohl für maschinenzentriertes Monitoring als auch für hochdynamisches serviceorientiertes Architektur-Monitoring. Prometheus vereinfacht nicht nur die Ausführung und Integration in Ihre Umgebung, sondern bietet auch ein umfassendes Datenmodell und eine Abfragesprache.

Das folgende Tutorial zeigt Schritte zur Installation von Prometheus auf CentOS.

Installieren und konfigurieren Sie Prometheus unter CentOS 7

Melden Sie sich als root beim Terminal an und starten Sie die folgenden Befehle.

Schritt 1 – System aktualisieren

yum update -y

Schritt 2 –  SELinux deaktivieren

Öffnen Sie die SELinux-Konfiguration und bearbeiten Sie die Datei:

vim /etc/sysconfig/selinux

Ändern Sie „SELINUX=enforcing“ in „SELINUX=disabled“.

Speichern und beenden Sie die Datei. Starten Sie dann das System neu.

reboot

Schritt 3 – Prometheus-Paket herunterladen

Gehen Sie zur offiziellen Prometheus-Download-Seite und kopieren Sie die URL der Linux „tar“-Datei.

Führen Sie den folgenden Befehl aus, um das Paket herunterzuladen. Fügen Sie die kopierte URL nach wget in den folgenden Befehl ein:

wget https://github.com/prometheus/prometheus/releases/download/v2.8.1/prometheus-2.8.1.linux-amd64.tar.gz

Schritt 4 – Prometheus konfigurieren

Fügen Sie einen Prometheus-Benutzer hinzu.

useradd --no-create-home --shell /bin/false prometheus

Erforderliche Verzeichnisse erstellen.

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

Ändern Sie den Eigentümer der oben genannten Verzeichnisse.

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

Gehen Sie jetzt zum heruntergeladenen Speicherort von Prometheus und extrahieren Sie es.

tar -xvzf prometheus-2.8.1.linux-amd64.tar.gz

Benennen Sie es nach Ihren Wünschen um.

mv prometheus-2.8.1.linux-amd64 prometheuspackage

Kopieren Sie die Binärdateien „prometheus“ und „promtool“ aus dem Ordner „prometheuspackage“ nach „/usr/local/bin“.

cp prometheuspackage/prometheus /usr/local/bin/
cp prometheuspackage/promtool /usr/local/bin/

Ändern Sie den Besitz auf Prometheus-Benutzer.

chown prometheus:prometheus /usr/local/bin/prometheus
chown prometheus:prometheus /usr/local/bin/promtool

Kopieren Sie die Verzeichnisse „consoles“ und „console_libraries“ aus dem „prometheuspackage“ in den „/etc/prometheus folder“

cp -r prometheuspackage/consoles /etc/prometheus
cp -r prometheuspackage/console_libraries /etc/prometheus

Ändern Sie den Besitz auf Prometheus-Benutzer

chown -R prometheus:prometheus /etc/prometheus/consoles
chown -R prometheus:prometheus /etc/prometheus/console_libraries

Prometheus-Konfigurationsdatei hinzufügen und ändern.

Konfigurationen sollten zu „/etc/prometheus/prometheus.yml“

hinzugefügt werden

Jetzt erstellen wir die Datei prometheus.yml.

vim /etc/prometheus/prometheus.yml

Fügen Sie der Datei die folgende Konfiguration hinzu.

global:
  scrape_interval: 10s

scrape_configs:
  - job_name: 'prometheus_master'
    scrape_interval: 5s
    static_configs:
      - targets: ['localhost:9090']

Speichern und beenden Sie die Datei

Ändern Sie den Eigentümer der Datei.

chown prometheus:prometheus /etc/prometheus/prometheus.yml

Konfigurieren Sie die Prometheus-Dienstdatei.

vim /etc/systemd/system/prometheus.service

Kopieren Sie den folgenden Inhalt in die Datei.

[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 und die Exit-Datei.

Laden Sie den systemd-Dienst neu.

systemctl daemon-reload

Starten Sie den Prometheus-Dienst.

systemctl start prometheus

Dienststatus prüfen.

systemctl status prometheus

Fügen Sie Firewall-Regeln hinzu.

firewall-cmd --zone=public --add-port=9090/tcp --permanent

Firewall-Dienst neu laden.

systemctl reload firewalld

Schritt 5 – Rufen Sie die Prometheus-Weboberfläche auf

Verwenden Sie die folgende URL, um auf die Benutzeroberfläche zuzugreifen.

http://Server-IP:9090/graph

Dann können Sie die folgende Oberfläche sehen.

Schritt 6 – Linux-Server mit Prometheus überwachen

Zunächst müssen Sie den Prometheus-Knoten-Exporter auf einem Linux-Server konfigurieren.

Kopieren Sie die URL des Node Exporters von der offiziellen Downloadseite.

Fügen Sie die kopierte URL nach wget in den folgenden Befehl ein:

wget https://github.com/prometheus/node_exporter/releases/download/v0.17.0/node_exporter-0.17.0.linux-amd64.tar.gz

Extrahieren Sie das heruntergeladene Paket.

tar -xvzf node_exporter-0.17.0.linux-amd64.tar.gz

Erstellen Sie einen Benutzer für den Node-Exporter.

useradd -rs /bin/false nodeusr

Verschieben Sie die Binärdatei aus dem heruntergeladenen extrahierten Paket nach „/usr/local/bin“.

mv node_exporter-0.17.0.linux-amd64/node_exporter /usr/local/bin/

Erstellen Sie eine Servicedatei für den Node-Exporter.

vim /etc/systemd/system/node_exporter.service

Fügen Sie der Datei den folgenden Inhalt hinzu.

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

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

[Install]
WantedBy=multi-user.target

Speichern und beenden Sie die Datei.

Laden Sie den Systemdämon neu.

systemctl daemon-reload

Node-Exporter-Dienst starten.

systemctl start node_exporter

Fügen Sie eine Firewall-Regel hinzu, um den Knoten-Exporter zuzulassen.

 firewall-cmd --zone=public --add-port=9100/tcp --permanent

Firewall-Dienst neu laden.

systemctl restart firewalld

Node-Exporter beim Systemstart aktivieren.

systemctl enable node_exporter

Zeigen Sie die Exporter-URL des Metrik-Browsing-Knotens an.

http://IP-Address:9100/metrics

Konfiguriertes Node-Exporter-Ziel auf Prometheus-Server hinzufügen.

Melden Sie sich beim Prometheus-Server an und ändern Sie die Datei prometheus.yml

Bearbeiten Sie die Datei:

vim /etc/prometheus/prometheus.yml

Fügen Sie die folgenden Konfigurationen unter der Scrape-Konfiguration hinzu.

 - job_name: 'node_exporter_centos'
    scrape_interval: 5s
    static_configs:
      - targets: ['10.94.10.209:9100']

Die Datei sollte wie folgt aussehen.

Starten Sie den Prometheus-Dienst neu.

systemctl restart prometheus

Melden Sie sich bei der Weboberfläche des Prometheus-Servers an und überprüfen Sie die Ziele.

http://Prometheus-Server-IP:9090/targets

Sie können auf das Diagramm klicken und alle Servermetriken abfragen und auf Ausführen klicken, um die Ausgabe anzuzeigen. Es zeigt die Konsolenausgabe.

Abfragebrowser:

Konsolenausgabe:

Klicken Sie zum Anzeigen auf die Grafik.

Schritt 7 – MySQL-Server mit Prometheus überwachen

Melden Sie sich bei MySQL an und führen Sie die folgenden Abfragen aus.

CREATE USER 'mysqlexporter'@'localhost' IDENTIFIED BY 's56fsg#4W2126&dfk' WITH max_user_connections 2;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysqlexporter'@'localhost';
FLUSH PRIVILEGES;

Laden Sie mysqld_exporter von der offiziellen Download-Seite herunter.

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.11.0/mysqld_exporter-0.11.0.linux-amd64.tar.gz

Extrahieren Sie die heruntergeladene Datei.

tar -xvzf mysqld_exporter-0.11.0.linux-amd64.tar.gz

Fügen Sie einen Benutzer für mysqld_exporter hinzu.

useradd -rs /bin/false mysqld_exporter

Kopieren Sie die mysqld_exporter-Datei nach /usr/bin.

 mv mysqld_exporter-0.11.0.linux-amd64/mysqld_exporter /usr/bin

Eigentümer der Datei ändern.

chown mysqld_exporter:mysqld_exporter /usr/bin/mysqld_exporter

Erforderliche Ordner erstellen.

mkdir -p /etc/mysql_exporter

Erstellen Sie eine MySQL-Passwortdatei für mysqld_exporter.

vim /etc/mysql_exporter/.my.cnf

Fügen Sie der Datei die folgenden Konfigurationen hinzu.

[client]
user=mysqlexporter
password=sdfsg#4W2126&gh

Speichern und beenden Sie die Datei.

Eigentümer ändern.

chown -R mysqld_exporter:mysqld_exporter /etc/mysql_exporter

Erteilen Sie die erforderliche Berechtigung.

chmod 600 /etc/mysql_exporter/.my.cnf

Erstellen Sie eine Servicedatei.

vim /etc/systemd/system/mysql_exporter.service

Fügen Sie der Datei den folgenden Inhalt hinzu.

[Unit]
Description=MySQL Server fosslinux
After=network.target

[Service]
User=mysqld_exporter
Group=mysqld_exporter
Type=simple
ExecStart=/usr/bin/mysqld_exporter \
--config.my-cnf="/etc/mysql_exporter/.my.cnf"
Restart=always

[Install]
WantedBy=multi-user.target

Laden Sie den Systemdämon neu.

 systemctl daemon-reload

Aktivieren Sie mysql_exporter beim Systemstart.

systemctl enable mysql_exporter

Dienst starten.

systemctl start mysql_exporter

Zeigen Sie die Metriken mit der folgenden URL an.

http://Server_IP:9104/metrics

Gehen Sie nun zum Prometheus-Server und ändern Sie die Datei prometheus.yml.

 vim /etc/prometheus/prometheus.yml

Fügen Sie der Datei den folgenden Inhalt hinzu.

- job_name: 'mysql_exporter_fosslinux'
    scrape_interval: 5s
    static_configs:
      - targets: ['10.94.10.204:9104']

Starten Sie Prometheus neu.

 systemctl restart prometheus

Sie können hinzugefügte Ziele sehen, indem Sie unter dem Status auf Ziele klicken.

http://IP:9090/targets

Jetzt können Sie die Abfrage mit dem Abfragebrowser auswählen und das Ergebnis des MySQL-Servers abrufen.

Das ist alles über die Installation und Konfiguration des Prometheus-Servers unter CentOS 7. Ich hoffe, Ihnen hat dieses Tutorial gefallen. Teilen Sie uns Ihr Feedback in den Kommentaren unten mit.


Cent OS
  1. So installieren und konfigurieren Sie Nginx unter CentOS 7

  2. So installieren und konfigurieren Sie Samba auf RHEL 8 / CentOS 8

  3. So installieren und konfigurieren Sie Redis unter CentOS 7

  4. So installieren und konfigurieren Sie GitLab unter CentOS 7

  5. So installieren und konfigurieren Sie CyberPanel unter CentOS 8

So installieren und konfigurieren Sie ownCloud auf CentOS 7

So installieren und konfigurieren Sie Samba unter CentOS 8

So installieren und konfigurieren Sie Fail2ban unter CentOS 8

So installieren und konfigurieren Sie HAproxy unter CentOS 6

So installieren Sie Prometheus unter CentOS 8

So installieren und konfigurieren Sie GlusterFS unter CentOS 7/CentOS 8