Was ist Prometheus?
Prometheus ist ein Open-Source-Projekt, das für Überwachung und Alarmierung verantwortlich ist. Das Projekt wurde 2015 veröffentlicht.
Prometheus verfügt über eine Reihe von Funktionen:
- Unterstützt flexible Abfragesprachen;
- Verfügt über mehrere Anzeigemodi und ein Admin-Panel;
- Die Speicherung und Übermittlung der Daten erfolgt über die HTTP Protokoll.
Prometheus installieren
Um Prometheus zu installieren, müssen Sie alle Pakete auf Ihrem System aktualisieren. Verwenden Sie die folgenden Befehle, um sie zu aktualisieren.
sudo apt update && apt upgrade
Installieren der Nginx Web-Server
Nginx erhalten Sie bei Ubuntu's Open-Source-Ressourcen. Die Installation beginnt mit den folgenden Befehlen:
apt install nginx
Wenn Sie diesen Fehler erhalten:
Sie sollten die folgenden Befehle schreiben:
rm /etc/nginx/sites-enabled/default
service nginx restart
und fahren Sie mit den oben genannten Schritten fort.
Die letzten Befehle in diesem Abschnitt werden anschließend ausgeführt, damit die nginx Der Webserver läuft automatisch, wenn wir ihn starten.
systemctl enable nginx.service
Erstellen eines Benutzers in Prometheus
Zuerst erstellen wir eine Gruppe, dann erstellen wir einen Benutzer und fügen ihn der Gruppe hinzu. Wir müssen auch ein Verzeichnis erstellen.
Zuerst erstellen wir eine Gruppe für den Benutzer
groupadd prometheus
Dann erstellen wir den Benutzer selbst:
useradd -s /sbin/nologin --system -g prometheus prometheus
Erstellen Sie ein Verzeichnis:
mkdir /var/lib/prometheus
for i in rules rules.d files_sd; do sudo mkdir -p /etc/prometheus/${i}; done
Jetzt installieren wir Prometheus auf Ubuntu
Ich empfehle vor der weiteren Konfiguration zu überprüfen, ob CURL installiert ist. Wenn nicht, geben Sie den folgenden Befehl ein und fahren Sie fort:
apt install curl
Laden Sie die neueste Version von Prometheus mit dem WGET-Befehl herunter:
mkdir -p /tmp/prometheus
cd /tmp/prometheus
curl -s https://api.github.com/repos/prometheus/prometheus/releases/latest | grep browser_download_url | grep linux-amd64 | cut -d '"' -f 4 | wget -qi -
tar xvf prometheus*.tar.gz
Gehen Sie in das resultierende Verzeichnis.
Beispielsweise:
cd /tmp/prometheus/prometheus-2.46.0.linux-amd64
Anschließend verschieben wir die Prometheus- und Promtool-Dateien aus dem Prometheus-Ordner nach /usr/local/bin
mv prometheus promtool /usr/local/bin/
Prometheus einrichten
Als erstes müssen Sie in diesem /etc/prometheus-Verzeichnis eine Konfigurationsdatei mit dem Namen „Prometheus.yml“ erstellen
mv prometheus.yml /etc/prometheus/prometheus.yml
mv consoles/ console_libraries/ /etc/prometheus/
nano /etc/prometheus/prometheus.yml
Schauen Sie sich den Inhalt von prometheus.yml an und wenn es Daten enthält, fahren wir fort.
Erstellen des Prometheus Systemd-Dienstes
Der Einfachheit halber erstellen wir die Dateien für den systemd-Dienst:
nano /etc/systemd/system/prometheus.service
Fügen Sie diesen Text zu dieser Datei hinzu:
[Unit]
Description=Prometheus
Documentation=https://prometheus.io/docs/introduction/overview/
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
User=prometheus
Group=prometheus
ExecReload=/bin/kill -HUP \$MAINPID
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 \
--web.listen-address=0.0.0.0:9090 \
--web.external-url=
SyslogIdentifier=prometheus
Restart=always
[Install]
WantedBy=multi-user.target
Fazit nach diesen Befehlen:
Und schließlich ändern Sie den Besitzer dieser Verzeichnisse in den zuvor erstellten Benutzer und die Prometheus-Gruppe:
for i in rules rules.d files_sd; do sudo chown -R prometheus:prometheus /etc/prometheus/${i}; done
for i in rules rules.d files_sd; do sudo chmod -R 775 /etc/prometheus/${i}; done
chown -R prometheus:prometheus /var/lib/prometheus/
Sobald Sie alles buchstabiert und überprüft haben, starten Sie systemd neu:
systemctl daemon-reload
systemctl enable prometheus
Konfigurieren Sie die firewall
Jetzt müssen wir sicherstellen, dass firewall korrekt konfiguriert ist und Datenverkehr auf Ports zulässt HTTPS(443), HTTP(80) und 9090. Die Nginx Der Webserver stellt sich als UFW-Dienst dar:
ufw allow in "Nginx Full"
ufw allow 9090/tcp
Zugriff auf die Prometheus-Weboberfläche.
Standardmäßig ist Prometheus verfügbar unter HTTP Port 9090. Um dies zu überprüfen, öffnen Sie unseren Browser und geben in die Adressleiste entweder die IP-Adresse des Hosts ein, auf dem Sie Prometheus installiert haben, oder die Domäne. Und wenn alles richtig eingestellt ist, öffnen Sie den Prometheus-Dashboard-Tab.
http://your-domain.com:9090 (example http://domain:9090)
http://server-ip-addreess:9090 (example http://38.123.34.54:9090)
Zusammenfassung
Mit dieser Veröffentlichung können Sie das Prometheus-Überwachungssystem ganz einfach auf einem Server installieren Ubuntu 20.04 Betriebssystem.