forked from DGNum/infrastructure
feat(ups): Use netbirdIp as given in the metadata
This commit is contained in:
parent
4296252fcc
commit
dd10a8e2fe
1 changed files with 15 additions and 8 deletions
|
@ -1,23 +1,29 @@
|
||||||
{
|
{
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
config,
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
meta,
|
||||||
|
name,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
power.ups = {
|
power.ups = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
ups.eaton = {
|
ups.eaton = {
|
||||||
driver = "usbhid-ups";
|
driver = "usbhid-ups";
|
||||||
port = "auto";
|
port = "auto";
|
||||||
};
|
};
|
||||||
|
|
||||||
users.eatonmon = {
|
users.eatonmon = {
|
||||||
passwordFile = config.age.secrets."eatonmon-password_file".path;
|
passwordFile = config.age.secrets."eatonmon-password_file".path;
|
||||||
upsmon = "primary";
|
upsmon = "primary";
|
||||||
};
|
};
|
||||||
|
|
||||||
upsmon.monitor.eaton = {
|
upsmon.monitor.eaton = {
|
||||||
user = "eatonmon";
|
user = "eatonmon";
|
||||||
};
|
};
|
||||||
|
|
||||||
schedulerRules =
|
schedulerRules =
|
||||||
let
|
let
|
||||||
cmdScript = pkgs.writeShellApplication {
|
cmdScript = pkgs.writeShellApplication {
|
||||||
|
@ -28,12 +34,12 @@
|
||||||
];
|
];
|
||||||
text = ''
|
text = ''
|
||||||
case $1 in
|
case $1 in
|
||||||
shutdown-low) MEANING="Battery is low, shutting down.";;
|
shutdown-low) MEANING="Battery is low, shutting down.";;
|
||||||
shutdown-batt) MEANING="On battery for 15min, shutting down.";;
|
shutdown-batt) MEANING="On battery for 15min, shutting down.";;
|
||||||
warn-batt) MEANING="Power line faillure, going on battery.";;
|
warn-batt) MEANING="Power line faillure, going on battery.";;
|
||||||
warn-comm) MEANING="Communication with the UPS was broken.";;
|
warn-comm) MEANING="Communication with the UPS was broken.";;
|
||||||
warn-bypass) MEANING="The UPS is not protecting the server, power line failure would kill $HOSTNAME instantly.";;
|
warn-bypass) MEANING="The UPS is not protecting the server, power line failure would kill $HOSTNAME instantly.";;
|
||||||
*) MEANING="Signal unknown, check configuration.";;
|
*) MEANING="Signal unknown, check configuration.";;
|
||||||
esac
|
esac
|
||||||
sendmail -i -t <<ERRMAIL
|
sendmail -i -t <<ERRMAIL
|
||||||
To: fai+monitoring@dgnum.eu
|
To: fai+monitoring@dgnum.eu
|
||||||
|
@ -84,8 +90,9 @@
|
||||||
|
|
||||||
services.prometheus.exporters.nut = {
|
services.prometheus.exporters.nut = {
|
||||||
enable = true;
|
enable = true;
|
||||||
listenAddress = "100.80.255.180";
|
listenAddress = meta.network.${name}.netbirdIp;
|
||||||
port = 9199;
|
port = 9199;
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.firewall.interfaces.wt0.allowedTCPPorts = [ 9199 ];
|
networking.firewall.interfaces.wt0.allowedTCPPorts = [ 9199 ];
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue