rmohr.vdsm-prometheus

vdsm-prometheus

Diese Rolle installiert die neueste Version von vdsm-prometheus aus copr, konfiguriert systemd, die Firewall und startet schließlich vdsm-prometheus.

Wenn die Rolle auf einem Host angewendet wird, können die von VDSM gesammelten Metriken im Prometheus-Format über den Port 8181 abgerufen werden. Standardmäßig wird TLS und die Authentifizierung mit Client-Zertifikaten verwendet, um den Zugriff auf vdsm-prometheus zu sichern. Jedes Client-Zertifikat, das von der ovirt-engine CA signiert ist, wird von vdsm-prometheus akzeptiert.

Es ist möglich, die Konfiguration von vdsm-prometheus in Playbooks anzupassen.

Besuchen Sie die vdsm-prometheus-Rollenseite auf github, um die Quellen zu sehen oder um Probleme bezüglich der Ansible-Rolle zu melden.

Besuchen Sie die vdsm-prometheus-Seite auf github, um die Quellen zu sehen oder um Probleme bezüglich vdsm-prometheus zu melden.

Anforderungen

Keine.

Rollenvariablen

Die einzige verfügbare Variable ist die opts-Variable in vars/main.yml. Mit dieser Variable können Sie Kommandozeilenargumente für vdsm-prometheus auf dem Host setzen. Diese Argumente werden an vdsm-prometheus übergeben, wenn es von systemd gestartet wird. Um alle möglichen Konfigurationsoptionen zu sehen, führen Sie vdsm-prometheus --help aus.

Abhängigkeiten

Keine.

Beispiel-Playbook

Um vdsm-prometheus in der Hostgruppe vdsm mit den Kommandozeilenargumenten -no-verify zu installieren, führen Sie das folgende Playbook aus:

---
- hosts: vdsm
  roles:
    - { role: vdsm-prometheus, opts: "-no-verify" }

Ein Beispiel mit deaktiviertem TLS und ohne Authentifizierung mit Client-Zertifikaten würde so aussehen:

---
- hosts: vdsm
  roles:
    - { role: vdsm-prometheus, opts: "-no-verify -no-prom-auth" }

Führen Sie vdsm-prometheus --help aus, um alle möglichen Konfigurationsoptionen für vdsm-prometheus zu sehen.

oVirt Inventar

Um ein initiales oVirt-Inventar zu erstellen, verwenden Sie die ovirt-engine REST-API:

export ENGINE_HOST=http://localhost:8080
export ENGINE_PWD=engine
echo "[vdsm]" > hosts && \ 
curl -H "Accept: application/json" -H "Content-type: application/json" -X GET --user admin@internal:$ENGINE_PWD $ENGINE_HOST/ovirt-engine/api/hosts \
| jq '.host[].address' -r >> hosts

Die Verwendung von Ansible auf diesen Hosts ist einfach. oVirt hat dort bereits einen SSH-Schlüssel installiert, und aufgrund von VDSM ist der Python-Interpreter auch auf dem Host installiert.

Der folgende Befehl führt das Beispiel-Playbook mit dem SSH-Schlüssel des Engines aus:

ansible-playbook -i hosts -u root --private-key $ENGINE_HOME/etc/pki/ovirt-engine/keys/engine_id_rsa vdsm-prometheus.yml

Lizenz

GPLv3

Autoreninformationen

Roman Mohr rmohr@redhat.com

Über das Projekt

Install vdsm-prometheus agent for monitoring VMs with Prometheus

Installieren
ansible-galaxy install rmohr.vdsm-prometheus
GitHub Repository
Lizenz
gpl-3.0
Downloads
81
Besitzer