Feat(nut): configure ups, upsmon, upsd et nut

This commit is contained in:
2023-02-18 19:46:35 +01:00
parent 558530e16e
commit 051a1cad9d
9 changed files with 103 additions and 2 deletions

View File

@@ -1,8 +1,23 @@
---
# defaults file for nut
nut_mode: "standalone"
upsd_users:
- name: upsmonitor
password: upsmonitorpass
type: master
upss:
- name: fooUps
- name: fooUPS
driver: usbhid-ups
port: auto
desc: "Foo UPS"
vendorid: 1111
productid: 1111
upsmon_servers:
- ups_name: fooUPS
address: localhost
user: upsmonitor
password: upsmonitorpass
type: "master"

View File

@@ -10,6 +10,7 @@
line: MODE=netserver
notify: restart nut-server
# List of connected ups
- name: Copy ups.conf
template:
src: ups.conf.j2
@@ -19,6 +20,7 @@
mode: 0644
notify: restart nut-server
# Service that communicate with UPSs
- name: Copy upsd.conf
template:
src: upsd.conf.j2
@@ -27,3 +29,33 @@
group: root
mode: 0644
notify: restart nut-server
# List of users allowed to communicate with upsd through network
- name: Copy upsd.users
template:
src: upsd.users.j2
dest: /etc/nut/upsd.users
owner: root
group: root
mode: 0644
notify: restart nut-server
# Nut mode
- name: Copy nut.conf
template:
src: nut.conf.j2
dest: /etc/nut/nut.conf
owner: root
group: root
mode: 0644
notify: restart nut-server
# Service that interact with upsd to act
- name: Copy upsmon.conf
template:
src: upsmon.conf.j2
dest: /etc/nut/upsmon.conf
owner: root
group: root
mode: 0644
notify: restart nut-server

View File

@@ -0,0 +1 @@
MODE={{ nut_mode }}

View File

@@ -4,4 +4,7 @@ maxretry = 3
[{{ ups.name }}]
driver = {{ ups.driver }}
port = {{ ups.port }}
desc = {{ ups.desc }}
vendorid = {{ ups.vendorid }}
productid = {{ ups.productid }}
{% endfor %}

View File

@@ -0,0 +1,6 @@
{% for user in upsd_users %}
[{{ user.name }}]
password = {{ user.password}}
upsmon {{ user.type }}
{% endfor %}

View File

@@ -0,0 +1,24 @@
{% for server in upsmon_servers %}
MONITOR {{ server.ups_name }}@{{ server.address}} 1 {{ server.user }} {{ server.password }} "{{ server.type }}"
{% endfor %}
MINSUPPLIES 1
FINALDELAY 5
SHUTDOWNCMD "/sbin/shutdown -h +0"
------------------------------------------------
# POLLFREQ <n>
# Fréquence d'interrogation en secondes en fonctionnement normal de l'onduleur.
# La valeur par défaut est de 5 secondes.
POLLFREQ 5
------------------------------------------------
# POLLFREQALERT <n>
# Fréquence d'interrogation en secondes pendant que l'onduleur est sur batterie.
# La valeur par défaut est de 5 secondes.
POLLFREQALERT 5
------------------------------------------------
HOSTSYNC 15
DEADTIME 15
POWERDOWNFLAG /etc/killpower
RBWARNTIME 43200
NOCOMMWARNTIME 300