|
<< Click to Display Table of Contents >> Navigation: Prometheus - Kennzahlen > Installation - NodeExporter |
Der node_exporter bietet die Kennzahlen der Maschine an. Ich möchte daher den node_exporter auch für die Maschine aktivieren, damit ich die Zahlen der Maschine bekomme (d.h. - prometheus und node_exporter laufen also auf der gleichen Maschine.
Bei der Installation habe ich die precompiled Variante ausgewählt (hier mal die ARM64 Variante). Der Download erfolgt über diese Seite.
Zuerst wird nur der eigentliche Prometheus-Server installiert:
Auspacken und schon hat man einen lauffähigen node_exporter. Einfach starten ...
Damit der prometheus-Server diesen node_exporter ansteuert, muß man diesen in die Konfigurationsdatei ("prometheus.yml") des Servers aufnehmen. Da beides auf einer Maschin läuft - locahost.
scrape_configs:
- job_name: "node_local"
static_configs:
- targets: ["localhost:9100"]
Dann den Server auffordern, die Konfigurationsdatei neu einzulesen.
Wenn der Rechner - auf dem ein node_exporter läuft - direkt via https vom Prometheus-Server erreichbar ist, dann kann man den Zugang via https ermöglichen und den Zugriff über den https-Server (hier Apache) absichern (über den Pfad: "/nodemetrics"):
Zuerst teilen wir einem Apache mit, wie er den Request weiterleitet und lassen den Zugriff durch Apache absichern.
<Location /nodemetrics>
ProxyPass http://127.0.0.1:9100/metrics
ProxyPassReverse http://127.0.0.1:9100/metrics
AuthType Basic
AuthName "benutzername"
AuthUserFile /etc/apache2/node_exporter.htpasswd
Require valid-user
</Location>
Der Zugriff erfolgt dann über einen Benutzername und ein Kennwort, die in "/etc/apache2/node_exporter.htpasswd" abgelegt wird. Der Port "9100" ist dann der Port, der in der obigen JSON-Datei für "statprom" definiert werden muß.
Erste Datei anlegen (mit -c, überschreibt bestehende Datei!):
htpasswd -c /etc/apache2/node_exporter.htpasswd benutzername
Und natürlich einen Eintrag in die prometheus.yml (Abschnitt scrape_configs):
- job_name: "node_exporter-remote"
scheme: "https"
metrics_path: "/nodemetrics"
basic_auth:
username: "benutzername"
password: "password"
static_configs:
- targets: [ "rechnername.domain.de", ..... ]
labels:
process_type: "node-exporter-remote"