maxhoesel.nut_netclient
maxhoesel.nut_netclient
Zainstaluj NUT i upsmon na docelowym systemie oraz skonfiguruj go, aby monitorował zdalne UPS przez sieć w trybie netclient.
Wymagania
- Host działający na jednym z następujących systemów
- Ubuntu 18.04 LTS lub nowszy
- Debian 9 lub nowszy
- Uprawnienia administratora na hoście
Zmienne roli
UWAGA: Zobacz tutaj więcej informacji na temat wartości upsmon.conf i ich celu.
nut_netclient_monitors
- Lista systemów UPS do monitorowania
- Musi być listą wpisów monitorujących, z których każdy jest słownikiem zawierającym następujące wartości:
system
: System do monitorowania. Format:<nazwa_ups>[@<nazwa_hosta>[:<port>]]
powervalue
: Liczba zasilaczy, które ten system dostarcza do hosta. Zwykle 1username
: Nazwa zdalnego użytkownika monitorującegopassword
: Hasło zdalnego użytkownika monitorującegotype
: Typ relacji UPS, albomaster
alboslave
- Przykład:
nut_netclient_monitors: - system: "[email protected]" powervalue: 1 username: monitor password: a-secure-password type: slave - system: "[email protected]" powervalue: 1 username: monitor password: a-different-password type: slave
- Wymagane: tak
- Domyślnie:
undefined
nut_netclient_notifymsg_<type>
- Ustaw niestandardową wiadomość powiadamiającą dla określonego typu wiadomości
- Ważne typy można znaleźć w instrukcji upsmon (sekcja NOTIFYMSG)
- Przykład:
nut_netclient_notifymsg_online: UPS %s wrócił online nut_netclient_notifymsg_lowbatt: UPS %s ma niski poziom baterii
nut_netclient_notifyflag_<type>
- Ustaw flagi powiadomień dla poszczególnych typów zdarzeń
- Ważne typy i flagi można znaleźć w instrukcji upsmon
- Przykład:
nut_netclient_notifyflag_online: SYSLOG nut_netclient_notifymsg_lowbatt: SYSLOG+WALL+EXEC
Prefiks dla wszystkich poniższych zmiennych: nut_netclient_
Nazwa | Podsumowanie | Wymagane | Domyślne |
---|---|---|---|
deadtime |
Czas przed uznaniem UPS za "martwy" w sekundach | 15 | |
finaldelay |
Czas między ostatnim ostrzeżeniem o wyłączeniu a poleceniem w s | 5 | |
hostsync |
Przekroczenie czasu między masterem a niewolnikami w sytuacjach wyłączenia w s | 15 | |
minsupplies |
Minimalna ilość zasilaczy potrzebna do działania | 1 | |
nocommwarntime |
Interwał między ostrzeżeniami o błędach komunikacji w s | 300 | |
notifycmd |
Wywołaj to polecenie, aby wysłać wiadomości | undefined |
|
pollfreq |
Czas między zapytaniami UPS w s | 5 | |
pollfreqalert |
Czas między zapytaniami UPS, gdy zasilanie z baterii w s | 5 | |
powerdownflag |
Plik flagowy, który upsmon tworzy podczas wyłączenia | /etc/killpower |
|
rbwarntime |
Interwał wysyłania wiadomości o wymianie baterii w s | 43200 | |
run_as_user |
Uruchom monitor jako inny użytkownik | undefined |
|
shutdowncmd |
Polecenie do uruchomienia podczas wyłączania systemu. Musi być ujęte w cudzysłów, jeśli zawiera spacje | "/sbin/shutdown -h +0" |
|
certpath |
Ścieżka do pliku certyfikatu lub bazy danych | undefined |
|
certident |
Identyfikator certyfikatu do pobrania (jeśli używasz NSS) | undefined |
|
certhost |
Dyrektywy hosta (jeśli używasz NSS) | undefined |
|
certverify |
Czy należy sprawdzić certyfikaty SSL. Musi być 0 lub 1 | undefined |
|
forcessl |
Czy wymusić połączenia SSL. Musi być 0 lub 1 | undefined |
Przykładowy plik playbooka
- hosts: all
become: yes
tasks:
- name: Uruchom nut_netclient
include_role:
name: maxhoesel.nut_netclient
vars:
nut_netclient_monitors:
- system: "[email protected]"
powervalue: 1
username: monitor
password: a-secure-password
type: slave
Testowanie
Ta rola używa tox i molecule do testowania. Musisz mieć zainstalowane następujące pakiety:
- python3-tox
- Docker
Następnie po prostu uruchom test.sh
w głównym katalogu tej roli. Możesz zobaczyć i uruchomić poszczególne testy za pomocą tox -l
Zainstaluj
ansible-galaxy install maxhoesel.nut_netclient
Licencja
gpl-3.0
Pobrania
11.9k
Właściciel
Junior Automation and Infrastructure Engineer, Bachelor in CompSci. I write Ansible content and DevOps-related tools, mostly in Rust