ernestas-poskus.ansible-prometheus

ansible-prometheus

Build Status

Ansible-Playbook zum Installieren des Prometheus-Überwachungssystems.

Das Playbook installiert und verwaltet Dienste mit systemd. Derzeit unterstützte Dienste:

  • Prometheus
  • Node Exporter (sammelt Metriken der Hostmaschine)
  • Alarm-Manager
  • Push-Gateway
  • SNMP-Exporter
  • Blackbox-Exporter

Das Playbook enthält umfangreiche Konfigurationsoptionen. Siehe die Datei default/main.yml.

Beitrag

Wenn Sie den benötigten Exporter nicht finden können, prüfen Sie diese Beispiele #47 oder #50 und erstellen Sie einen Pull-Request.

Installation

ansible-galaxy install ernestas-poskus.ansible-prometheus

Voraussetzungen

Systemd

Rollenvariablen

---
# Standarddatei für ansible-prometheus

prometheus_install: true
prometheus_node_exporter_install: true
prometheus_alert_manager_install: true
prometheus_push_gateway_install: false
prometheus_snmp_exporter_install: false
prometheus_blackbox_exporter_install: false

prometheus_owner: 'prometheus'
prometheus_group: 'prometheus'

prometheus_install_dir: '/usr/local/opt'
prometheus_config_dir: '/etc/prometheus'
prometheus_lib_dir: '/var/lib/prometheus'
prometheus_rules_dir: "{{ prometheus_config_dir }}/rules"

prometheus_data_dir: "{{ prometheus_lib_dir }}/prometheus2"
prometheus_alert_manager_data_dir: "{{ prometheus_lib_dir }}/alertmanager"
prometheus_alert_manager_config_dir: "{{ prometheus_config_dir }}/alertmanager"
prometheus_alert_manager_templates_dir: "{{ prometheus_config_dir }}/alertmanager/templates"
prometheus_snmp_exporter_config_dir: "{{ prometheus_config_dir }}/snmpexporter"
prometheus_blackbox_exporter_config_dir: "{{ prometheus_config_dir }}/blackboxexporter"

# Prometheus
prometheus_version: '2.25.1'
prometheus_platform_architecture: 'linux-amd64'

# Maximale Anzahl offener Dateien, Wert für LimitNOFILE
prometheus_service_limitnofile: infinity

# Node Exporter
prometheus_node_exporter_version: '1.1.2'

# Alarm-Manager
prometheus_alert_manager_version: '0.21.0'

# Push-Gateway
prometheus_push_gateway_version: '1.4.0'

# SNMP-Exporter
prometheus_snmp_exporter_version: '0.20.0'

# Blackbox-Exporter
prometheus_blackbox_exporter_version: '0.18.0'

DOCS: Prometheus-Variablen

DOCS: Node Exporter-Variablen

DOCS: Alarm-Manager-Variablen

DOCS: Push-Gateway-Variablen

DOCS: SNMP-Exporter-Variablen

DOCS: Blackbox-Exporter-Variablen

Abhängigkeiten

Keine.

Beispiel-Playbook

Ein Beispiel, wie Sie Ihre Rolle verwenden können (zum Beispiel mit übergebenen Variablen), ist immer nützlich für die Benutzer:

- name: Installieren von Prometheus auf der gehosteten Maschine
  hosts: vagrant1
  sudo: yes
  roles:
    - role: ansible-prometheus
      prometheus_config_scrape_configs:
        - job_name: 'prometheus'
          honor_labels: true
          scrape_interval: '15s'
          scrape_timeout: '3s'
          metrics_path: '/metrics'
          scheme: 'http'
          static_configs:
            - targets:
                - 'localhost:9090' # Prometheus selbst
                - 'localhost:9100' # Node Exporter
        - job_name: 'consul-services'
          consul_sd_configs:
            - server: "localhost:8500"

Lizenz

Copyright (c) 2021, Ernestas Poskus Alle Rechte vorbehalten.

Die Weiterverbreitung und Nutzung in Quell- und Binärform, mit oder ohne Änderung, ist erlaubt, sofern die folgenden Bedingungen erfüllt sind:

  • Weiterverbreitungen des Quellcodes müssen den oben genannten Copyright-Hinweis, diese Bedingungen und den folgenden Haftungsausschluss enthalten.

  • Weiterverbreitungen in binärer Form müssen den oben genannten Copyright-Hinweis, diese Bedingungen und den folgenden Haftungsausschluss in der Dokumentation und/oder anderen Materialien, die mit der Verteilung bereitgestellt werden, reproduzieren.

  • Weder der Name ansible-prometheus noch die Namen seiner Mitwirkenden dürfen zur Unterstützung oder Bewerbung von Produkten verwendet werden, die aus dieser Software abgeleitet sind, ohne eine vorherige ausdrückliche schriftliche Genehmigung.

DIESE SOFTWARE WIRD VON DEN URHEBERRECHTSINHABERN UND MITARBEITERN IM GELTENDEN ZUSTAND BEREITGESTELLT, UND ALLE AUSDRÜCKLICHEN ODER IMPLIZITEN GARANTIEN, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE IMPLIZITEN GARANTIEN DER MARKTGÄNGIGKEIT UND EIGNUNG FÜR EINEN BESTIMMTEN ZWECK, WERDEN ABGELEHNT. IN KEINEM FALL SIND DIE URHEBERRECHTSINHABER ODER MITARBEITER FÜR DIREKTE, INDIREKTE, NEBEN- ODER FOLGESCHÄDEN (EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF, DEN ERWERB VON ERSATZGÜTERN ODER DIENSTLEISTUNGEN; DATEN- ODER GEWINNVERLUST; ODER UNTERNEHMENSSTÖRUNG) HAFTBAR, WIE AUCH IMMER VERURSACHT UND AUF JEDER HAFTUNGSTHEORIE, EINSCHLIESSLICH VERTRAG, STRIKTER HAFTUNG, ODER DELIKT (EINSCHLIESSLICH NEGLIGENZ ODER ANDERES) AUS IRGENDEINER ART, DIE AUS DER NUTZUNG DIESES SOFTWARE ERGIBT, SELBST WENN AUF DIE MÖGLICHKEIT SOLCHER SCHÄDEN HINGEWIESEN WURDE.

Autoreninformationen

Twitter: @ernestas_poskus

Installieren
ansible-galaxy install ernestas-poskus.ansible-prometheus
Lizenz
bsd-3-clause
Downloads
6.6k
Besitzer
pragmatic & ambitious