kostiantyn-nemchenko.mongodb_exporter
Rola Ansible dla Eksportera MongoDB Percona
Jest to rola Ansible, która instaluje i konfiguruje Eksportera MongoDB Prometheus od Percona.
Wymagania
Automatyczne generowanie certyfikatów TLS/SSL nie wchodzi w zakres tej roli. Upewnij się, że włączyłeś połączenie TLS z instancją MongoDB i podałeś poprawne wartości dla CA, certyfikatów klienta i klucza klienta. Przykład:
mongodb_exporter_mongodb_tls_cert: dest: /etc/ssl/certs/mongodb_exporter.crt owner: root group: root mode: "0644" content: | -----BEGIN CERTIFICATE----- zawartość certyfikatu publicznego -----END CERTIFICATE-----
Na wszystkich monitorowanych instancjach MongoDB musi być obecny użytkownik bazy danych z odpowiednimi przypisanymi rolami. Proszę zobaczyć przykład.
Rola wymaga uprawnień roota, więc ustaw
become: true
w dowolny dogodny sposób dla siebie. Proszę zobaczyć przykładowy playbook.
Zmienne roli
# Wersja eksportera do zainstalowania
mongodb_exporter_version: 0.7.0
# URL repozytorium eksportera
mongodb_exporter_base_url: https://github.com/percona/mongodb_exporter
# Architektura binarna eksportera
mongodb_exporter_arch: amd64
# URL do pobierania eksportera
mongodb_exporter_release_url: "{{ mongodb_exporter_base_url }}/releases/download/v{{ mongodb_exporter_version }}/mongodb_exporter-{{ mongodb_exporter_version }}.{{ ansible_system |lower }}-{{ mongodb_exporter_arch }}.tar.gz"
# Użytkownik systemu, pod którym będzie działał eksporter
mongodb_exporter_system_user: mongodb_exporter
# Grupy systemowe do dołączenia użytkownika
mongodb_exporter_system_groups: ['mongodb_exporter', 'ssl-cert']
# Dodatkowe pakiety do zainstalowania jako zależności roli/eksportera
mongodb_exporter_system_packages:
- { name: ca-certificates, state: present }
- { name: tar, state: present }
# Lista zmiennych środowiskowych do ustawienia przed uruchomieniem eksportera
mongodb_exporter_env_vars: []
# Ścieżka do pliku, który zawiera wstępnie ustawione zmienne środowiskowe
mongodb_exporter_env_file:
dest: /etc/systemd/system/mongodb_exporter.service.d/environment.conf
owner: root
group: root
mode: "0640"
# Ścieżka do katalogu, w którym znajduje się binarka eksportera
mongodb_exporter_bin_dir:
dest: /usr/local/bin
owner: root
group: root
mode: "0755"
# Adres do nasłuchu na interfejsie webowym i telemetrii
mongodb_exporter_web_listen_address: :9216
# Ścieżka, pod którą będą dostępne metryki
mongodb_exporter_web_telemetry_path: /metrics
# Włącz zbieranie metryk bazy danych
mongodb_exporter_collect_database: false
# Włącz zbieranie metryk kolekcji
mongodb_exporter_collect_collection: false
# Włącz zbieranie metryk top
mongodb_exporter_collect_topmetrics: false
# Włącz zbieranie statystyk wykorzystania indeksów
mongodb_exporter_collect_indexusage: false
# URI MongoDB w formacie [mongodb://][user:pass@]host1[:port1][,host2[:port2],...][/database][?options]
mongodb_exporter_mongodb_uri: mongodb://127.0.0.1:27017
# Włącz połączenie tls z serwerem mongo
mongodb_exporter_mongodb_tls: false
# Ścieżka do pliku PEM, który zawiera zaufane CA dla połączeń z serwerem
mongodb_exporter_mongodb_tls_ca:
dest: /etc/ssl/certs/mongodb_exporter_CA.pem
owner: root
group: root
mode: "0644"
content: ""
# Ścieżka do pliku PEM, który zawiera certyfikat (opcjonalnie także odszyfrowany klucz prywatny w formacie PEM)
mongodb_exporter_mongodb_tls_cert:
dest: /etc/ssl/certs/mongodb_exporter.crt
owner: root
group: root
mode: "0644"
content: ""
# Ścieżka do pliku PEM, który zawiera odszyfrowany klucz prywatny (jeżeli nie jest zawarty w pliku mongodb.tls-cert)
mongodb_exporter_mongodb_tls_private_key:
dest: /etc/ssl/private/mongodb_exporter.key
owner: root
group: ssl-cert
mode: "0640"
content: ""
# Wyłącz walidację nazwy hosta dla połączenia z serwerem
mongodb_exporter_mongodb_tls_disable_hostname_validation: false
# Maksymalna liczba połączeń do bazy danych
mongodb_exporter_mongodb_max_connections: 1
# Czas oczekiwania na nieodpowiadający gniazdo do bazy danych przed jego wymuszeniem
mongodb_exporter_mongodb_socket_timeout: 3s
# Czas oczekiwania na operację z tym sesją przed zwróceniem błędu w przypadku, gdy nie można nawiązać połączenia z użytecznym serwerem
mongodb_exporter_mongodb_sync_timeout: 1m
# Określa bazę danych, w której tworzony jest użytkownik
mongodb_exporter_authentification_database: ""
# Aktualnie ignorowane
mongodb_exporter_groups_enabled: ""
Zależności
Brak
Przykładowy Playbook
- hosts: mongodb
become: yes
roles:
- kostiantyn-nemchenko.mongodb_exporter
Licencja
MIT
Informacje o autorze
Kostiantyn Nemchenko kostiantyn.nemchenko@gmail.com
O projekcie
An Ansible role which installs and configures Percona MongoDB Exporter
Zainstaluj
ansible-galaxy install kostiantyn-nemchenko.mongodb_exporter
Licencja
mit
Pobrania
17.8k
Właściciel