Files
nix-config/hosts/k8s/kubevirt-shushou/ups.nix
T

52 lines
1.1 KiB
Nix

{ myvars, ... }:
let
hostAddress = myvars.networking.hostsAddr.kubevirt-shushou.ipv4;
in
{
power.ups = {
enable = true;
mode = "standalone";
# Metrics only. Coordinated shutdown of all homelab hosts is a separate feature.
upsmon = {
enable = false;
settings.POWERDOWNFLAG = null;
};
upsd.listen = [
{
address = "127.0.0.1";
port = 3493;
}
];
ups.homelab = {
driver = "nutdrv_qx";
port = "auto";
description = "Homelab UPS";
directives = [
"vendorid = 0665"
"productid = 5161"
];
};
};
services.prometheus.exporters.nut = {
enable = true;
listenAddress = hostAddress;
port = 9199;
nutServer = "127.0.0.1";
# The NixOS module omits --nut.vars_enable when nutVariables is empty, but the exporter needs
# an explicitly empty value to export every numeric NUT variable.
extraFlags = [ "--nut.vars_enable=" ];
};
systemd.services.prometheus-nut-exporter = {
after = [
"upsd.service"
"upsdrv.service"
];
};
}