ernestas-poskus.ansible-prometheus
ansible-prometheus
Playbook Ansibla do instalacji systemu monitorowania Prometheus.
Playbook instaluje i zarządza usługami przy użyciu systemd. Aktualnie wspierane:
- Prometheus
- Node Exporter (zbiera metryki z maszyny gospodarza)
- Alert manager
- Push gateway
- SNMP exporter
- Blackbox exporter
Playbook zawiera rozbudowane opcje konfiguracyjne, sprawdź domyślny plik main.yml.
Wkład
Jeśli nie możesz znaleźć potrzebnego eksportera, sprawdź te przykłady #47 lub #50 i stwórz pull request.
Instalacja
ansible-galaxy install ernestas-poskus.ansible-prometheus
Wymagania
Systemd
Zmienne roli
---
# plik domyślny dla 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'
# Liczba otwartych plików, wartość dla LimitNOFILE
prometheus_service_limitnofile: infinity
# Node exporter
prometheus_node_exporter_version: '1.1.2'
# Alert manager
prometheus_alert_manager_version: '0.21.0'
# Pushgateway
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: Zmienne Blackbox exporter
Zależności
Brak.
Przykładowy Playbook
Oto przykład użycia roli (np. z przekazanymi jako parametry zmiennymi):
- name: Instalacja Prometheus na maszynie hostującej
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 sam w sobie
- 'localhost:9100' # Node exporter
- job_name: 'usługi consul'
consul_sd_configs:
- server: "localhost:8500"
Licencja
Copyright (c) 2021, Ernestas Poskus Wszelkie prawa zastrzeżone.
Wszelkie prawo do redistribucji i używania w formie źródłowej oraz binarnej, z lub bez modyfikacji, jest dozwolone pod warunkiem spełnienia następujących warunków:
Redistribucja kodu źródłowego musi zachować powyższe powiadomienie o prawach autorskich, tę listę warunków oraz następujące zastrzeżenie.
Redistribucja w formie binarnej musi reprodukować powyższe powiadomienie o prawach autorskich, tę listę warunków oraz następujące zastrzeżenie w dokumentacji i/lub innych materiałach dostarczonych z dystrybucją.
Ani nazwa ansible-prometheus, ani nazwy jego współtwórców nie mogą być używane do promowania produktów pochodzących z tego oprogramowania bez wcześniejszej pisemnej zgody.
TO OPROGRAMOWANIE JEST DOSTARCZANE PRZEZ POSIADACZY PRAW AUTORSKICH I WSPÓŁTWÓRCÓW "TAK JAK JEST" I WSZELKIE WYRAŹNE LUB IMPLICITNE GWARANCJE, W TYM, ALE NIE OGRANICZAJĄC SIĘ DO, IMPLICITNYCH GWARANCJI PRZYDATNOŚCI HANDLOWEJ I PRZYDATNOŚCI DO OKREŚLONEGO CELU SĄ ODRZUCONO. W ŻADNYM WYPADKU POSIADACZ PRAW AUTORSKICH LUB WSPÓŁTWÓRCY NIE SĄ ODPOWIEDZIALNI ZA ŻADNE BEZPOŚREDNIE, POŚREDNIE, INCYDENTALNE, SZCZEGÓLNE, EXEMPLARNE LUB WYNIKOWE ODSZKODOWANIA (W TYM, ALE NIE OGANICZAJĄC SIĘ DO, NABYCIA ZASTĘPCZYCH TOWARÓW LUB USŁUG; UTRATĘ UŻYTKU, DANYCH, LUB ZYSKÓW; LUB ZAKŁÓCENIE DZIAŁALNOŚCI) W JAKIJKOLWIEK SPOSÓB I NA JAKIEJKOLWIEK TEORII ODPOWIEDZIALNOŚCI, CZY TO W UMOWACH, ŚCISŁEJ ODPOWIEDZIALNOŚCI, LUB DELIKCIE (W TYM NIEDBALSTWIE LUB INNYMI) POWSTAŁE W JAKIKOLWIEK SPOSÓB W WYNIKU UŻYCIA TEGO OPROGRAMOWANIA, NAWET JEŚLI ZOSTAŁ BYŁ OSTRZEŻONY O MOŻLIWOŚCI TAKIEGO SZKODU.
Informacje o autorze
Twitter: @ernestas_poskus
Ansible playbook for managing Prometheus monitoring system
ansible-galaxy install ernestas-poskus.ansible-prometheus