From 4310af903bbb4fcfcaf1efea12e683337cd9846a Mon Sep 17 00:00:00 2001 From: Tim Keller Date: Wed, 11 Nov 2026 14:34:37 -0600 Subject: add metrics container to poweredge-pro --- hosts/poweredge-pro/metrics.nix | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 hosts/poweredge-pro/metrics.nix (limited to 'hosts/poweredge-pro/metrics.nix') diff --git a/hosts/poweredge-pro/metrics.nix b/hosts/poweredge-pro/metrics.nix new file mode 100644 index 0000000..76ffea9 --- /dev/null +++ b/hosts/poweredge-pro/metrics.nix @@ -0,0 +1,44 @@ +{ config, inputs, ... }: { + imports = [ inputs.telemetry.nixosModules.collectors ]; + + services.telemetry.collectors = { + enable = true; + logs.lokiUrl = "http://metrics:3100"; # The container + }; + + containers.metrics = { + autoStart = true; + privateNetwork = true; + hostBridge = "br-lan0"; + localMacAddress = "02:00:00:00:77:16"; + ephemeral = true; + + # The module reads whatever path you point secretKeyFile at. + bindMounts = { + "/var/lib/prometheus2" = { hostPath = "/nix/persist/metrics/prometheus2"; isReadOnly = false; }; + "/var/lib/loki" = { hostPath = "/nix/persist/metrics/loki"; isReadOnly = false; }; + "/var/lib/grafana" = { hostPath = "/nix/persist/metrics/grafana"; isReadOnly = false; }; + }; + + config = { ... }: { + imports = [ inputs.telemetry.nixosModules.server ]; + + networking.enableIPv6 = false; + networking.interfaces.eth0.useDHCP = true; + networking.hosts."192.168.77.11" = [ "poweredge-pro" ]; + + services.telemetry.server = { + enable = true; + collectorHosts = [ "poweredge-pro" ]; + grafana.generateSecretKey = true; + proxy.enable = true; + }; + + # Pin loki uid+gid + users.users.loki = { uid = 3100; group = "loki"; isSystemUser = true; }; + users.groups.loki.gid = 3100; + + system.stateVersion = "26.05"; + }; + }; +} -- cgit v1.3.1