Wie installiere ich die neueste Version von Prometheus auf 16.04?

Wie installiere ich die neueste Version von Prometheus auf 16.04?

Ich habe Probleme, die neueste Version von Prometheus auf einer Neuinstallation von Ubuntu 16.04 zu installieren. Alle Anleitungen, die ich finden kann, beziehen sich auf 14.04 und der Wechsel von systemV zu systemd macht diese Anleitungen bei der Einrichtung auf 16.04 inkompatibel (oder zumindest unvollständig).

Ich kann Prometheus von apt aus installieren, aber es installiert Version 0.16.2 und die aktuelle Version ist 1.0.2.

Ich benutze die offizielleprometheus.io InstallationsanleitungUnddieser Leitfaden zu Digital Ocean.

Kann mir jemand bei der Einrichtung von systemd helfen? Ich habe relativ viel Erfahrung mit Ubuntu, aber die Änderung von systemd ist für mich eine echte Herausforderung.

Antwort1

Die folgende Unit-Datei hat bei mir bei der Installation von Prometheus funktioniert.ServerVersion 1.x (im Gegensatz zu einem Exporter).

# /etc/systemd/system/prometheus.service
[Unit]
Description=Prometheus Server
Documentation=https://prometheus.io/docs/introduction/overview/
After=network-online.target

[Service]
User=prometheus
Restart=on-failure
ExecStart=/usr/local/bin/prometheus-1.1.2.linux-amd64/prometheus \
                                -config.file=/etc/prometheus/prometheus.yml \
                                -storage.local.path=/var/lib/prometheus/data

[Install]
WantedBy=multi-user.target

Dies setzt natürlich voraus, dass Sie einen Prometheus-Benutzer erstellt und die erforderlichen Berechtigungen erteilt haben.

Verwenden Sie dann die von WInfly genannten Befehle.

$ sudo systemctl daemon-reload
$ sudo systemctl enable prometheus
$ sudo systemctl start prometheus
$ sudo systemctl status prometheus

Folgendes hat mir geholfen:

Prometheus:https://blog.svedr.in/posts/prometheus-quick-start.html

Manpages für Unit-Dateianweisungen:https://www.freedesktop.org/software/systemd/man/systemd.directives.html

Antwort2

Der Name des Serverspeicherarguments wurde in Version 2.x geändert, funktionierende Syntax:

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

[Service]
User=root
Restart=on-failure
ExecStart=/usr/local/bin/prometheus-2.2.1.linux-amd64/prometheus \
                                --config.file=/etc/prometheus/prometheus.yml \
                                --storage.tsdb.path=/var/lib/prometheus/data

[Install]
WantedBy=multi-user.target

Antwort3

Die Antwort fand ich inDieser Artikel. Der spezielle Teil, der mir beim Versuch, dies für die Ausführung mit systemd einzurichten, fehlte, war das Erstellen der Unit-Datei. Unten wird die Unit-Datei für node_exporter erstellt und dann als Dienst ausgeführt. Ich hoffe, das hilft jemand anderem!

Erstellen Sie die Unit-Datei:

$ sudo vim /etc/systemd/system/node_exporter.service
[Unit]
Description=Node Exporter

[Service]
User=vxx
ExecStart=/home/vxx/Prometheus/node_exporter/node_exporter

[Install]
WantedBy=default.target

Starten Sie anschließend den Dienst, nachdem Sie den Daemon neu geladen haben, oder starten Sie den Server neu:

$ sudo systemctl daemon-reload
$ sudo systemctl enable node_exporter.service
$ sudo systemctl start node_exporter.service
$ sudo systemctl status node_exporter.service

Antwort4

Falls jemand noch auf diese Frage zurückkommt, habe ich die Installation von Prometheus, Node_Exporter und Apache_Exporter basierend aufdieses DigitalOcean-Tutorial.

Meine Skripte findet ihr hier: https://github.com/icolwell/install_scripts

Die folgenden Skripte könnten von Interesse sein:

prometheus_install.bash
prometheus_node_exporter_install.bash
prometheus_apache_exporter_install.bash

Sie können die Skripte wie folgt herunterladen und ausführen:

wget https://raw.githubusercontent.com/icolwell/install_scripts/master/prometheus_install.bash
bash prometheus_install.bash

Beachten Sie, dass alle vorhandenen Prometheus-Konfigurationen überschrieben werden.

verwandte Informationen