moira-alert.moira-trigger-role

rola-moira-trigger

Jeśli jesteś tutaj po raz pierwszy, lepiej sprawdź nasz główny README.

Rola Ansible do tworzenia, aktualizacji i usuwania wyzwalaczy Moira, bazująca na python-moira-client

Użycie roli

Instalacja

Konfiguracja

Zadania roli

Instalacja

Ansible Galaxy

ansible-galaxy install moira-alert.moira-trigger-role

Rola Ansible z Makefile

Umieść zawartość z przykładu w swoim Makefile, aby pobrać rolę z Ansible Galaxy
i utworzyć playbook do zarządzania wyzwalaczami z wstępnie zdefiniowanymi parametrami w swoich plikach zmiennych:

- name: zarządzaj wyzwalaczami moira
  hosts: nazwaUsługi
  roles:
    - role: moira-alert.moira-trigger-role
      moira_api: http://localhost:8081/api
      moira_triggers: '{{ ServiceNameTriggers }}'
      delegate_to: 127.0.0.1
      run_once: True
      dry_run: False

Uwaga: Wszystkie zadania muszą być wykonywane z maszyny kontrolnej Ansible

Konfiguracja

Wstępnie zdefiniuj następujące parametry w swoich plikach zmiennych. Działające przykłady można znaleźć tutaj

Autoryzacja

Parametr Opis Typ Wymagane Domyślna Przykład
moira_api Url API Moira String Tak N/A http://localhost/api/
moira_auth_custom Niestandardowe nagłówki autoryzacji Słownik Nie Brak Authorization: apiKey
moira_auth_user Użytkownik autoryzacji (Basic Auth) String Nie Brak admin
moira_auth_pass Hasło autoryzacji (Basic Auth) String Nie Brak pass
moira_auth_login Login autoryzacji (Basic Auth) String Nie Brak admin

Uwaga: Użyj moira_auth_custom, jeśli korzystasz z dodatkowych mechanizmów autoryzacji zamiast
jednolitej autoryzacji basic, użyj moira_auth_user, moira_auth_pass i moira_auth_login w przeciwnym razie.
moira_auth_login musi zawierać wartość dla nagłówka X-Webauth-User.

Stan wyzwalacza

Parametr Opis Typ Wymagane Wybory Domyślna Przykład
state Pożądany stan wyzwalacza String Tak present
absent
N/A present
id Id wyzwalacza String Tak N/A N/A trigger_1
name Nazwa wyzwalacza String Tak N/A N/A Wyzwalacz 1
tags Lista tagów wyzwalacza Lista Tak N/A N/A - Projekt
- Usługa
targets Lista celów wyzwalacza
Zobacz dostępne funkcje graphite
Lista Tak N/A N/A - prefix.*.postfix
warn_value Wartość do ustawienia statusu WARN Float Nie N/A Brak 300
error_value Wartość do ustawienia statusu ERROR Float Nie N/A Brak 600
trigger_type Typ wyzwalacza String Nie rising
falling
expression
N/A rising
expression Wyrażenie podobne do C String Nie N/A Pusty ciąg t1 >= 10 ? ERROR : (t1 >= 1 ? WARN : OK)
ttl Gdy nie ma metryk dla wyzwalacza, Moira przełączy metrykę na stan TTLState po TTL sekundach Int Nie N/A 600 600
ttl_state Stan wyzwalacza po upłynięciu 'ttl' String Nie NODATA
DEL
ERROR
WARN
OK
NODATA WARN
is_remote Użyj zdalnego magazynu. Dezaktuwowane, użyj trigger_source zamiast tego Bool Nie True
False
False False
trigger_source Określ źródło wyzwalacza, nadpisuje is_remote String Nie graphite_local
graphite_remote
prometheus_remote
Brak graphite_local
cluster_id Określ identyfikator klastra String Nie N/A Brak default
desc Opis wyzwalacza String Nie N/A Pusty ciąg opis testu wyzwalacza
mute_new_metrics Jeśli prawda, pierwsze zdarzenie NODATA → OK zostanie pominięte Bool Nie True
False
False False
disabled_days Dni, przez które wyzwalacz będzie w trybie ciszy Lista Nie N/A Pusta lista - Pon
- Śr
timezone_offset Przesunięcie strefy czasowej (minuty) Int Nie N/A 0 -180
start_hour Godzina zaczynania wysyłania powiadomień Int Nie N/A 0 9
start_minute Minuta zaczynania wysyłania powiadomień Int Nie N/A 0 0
end_hour Godzina kończenia wysyłania powiadomień Int Nie N/A 23 17
end_minute Minuta kończenia wysyłania powiadomień Int Nie N/A 59 0
alone_metrics Ustaw niektóre cele jako pojedyncze metryki Obiekt, przykład: Nie N/A {'t1': False, 't2': True, ... 'tN': True} {'t1': False, 't2': False}

Zadania roli

Zarządzanie zależnościami

Zadanie do sprawdzenia, czy python-moira-client jest zainstalowane (poprzez pip)

Zarządzanie wyzwalaczami

Użyj stanu 'present', aby utworzyć i edytować istniejące wyzwalacze:

 - name: utwórz wyzwalacz
   moira_trigger:
      ...
      state: present
      ...  

Aby usunąć istniejące wyzwalacze, użyj stanu 'absent':

 - name: usuń wyzwalacz
   moira_trigger:
      ...
      state: absent
      ...  
O projekcie

Ansible role to create, update and delete Moira triggers

Zainstaluj
ansible-galaxy install moira-alert.moira-trigger-role
Licencja
mit
Pobrania
19.1k
Właściciel
Realtime alerting system based on Graphite data