diff --git a/modules/nixos/monitoring/hosts.nix b/modules/nixos/monitoring/hosts.nix
deleted file mode 100644
index cbeab17..0000000
--- a/modules/nixos/monitoring/hosts.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-[
-  "build01.nix-community.org"
-  "build02.nix-community.org"
-  "build03.nix-community.org"
-  "build04.nix-community.org"
-  "darwin01.nix-community.org"
-  "darwin02.nix-community.org"
-  #"web02.nix-community.org"
-]
diff --git a/modules/nixos/monitoring/prometheus.nix b/modules/nixos/monitoring/prometheus.nix
index 54268d7..0b8aff3 100644
--- a/modules/nixos/monitoring/prometheus.nix
+++ b/modules/nixos/monitoring/prometheus.nix
@@ -1,4 +1,4 @@
-{ pkgs, ... }:
+{ inputs, pkgs, ... }:
 {
   systemd.services.prometheus.after = pkgs.lib.mkForce [ "network-online.target" ];
   systemd.services.prometheus.wants = [ "network-online.target" ];
@@ -19,11 +19,13 @@
         metrics_path = "/metrics";
         static_configs =
           let
-            hosts = import ./hosts.nix;
+            hosts = (import "${inputs.self}/modules/shared/known-hosts.nix").programs.ssh.knownHosts;
           in
           [
             {
-              targets = map (host: "${host}:9273") hosts ++ [ "localhost:9273" ];
+              targets = builtins.concatMap (host: map (name: "${name}:9273") host.hostNames) (
+                builtins.attrValues hosts
+              );
               labels.org = "nix-community";
             }
           ];
diff --git a/modules/nixos/monitoring/telegraf.nix b/modules/nixos/monitoring/telegraf.nix
index c5cd653..5a01d39 100644
--- a/modules/nixos/monitoring/telegraf.nix
+++ b/modules/nixos/monitoring/telegraf.nix
@@ -1,3 +1,4 @@
+{ inputs, ... }:
 {
   services.telegraf.extraConfig.inputs = {
     http_response = [
@@ -28,17 +29,17 @@
     ];
     net_response =
       let
-        hosts = import ./hosts.nix;
+        hosts = (import "${inputs.self}/modules/shared/known-hosts.nix").programs.ssh.knownHosts;
       in
       map (host: {
         protocol = "tcp";
-        address = "${host}:22";
+        address = "${toString host.hostNames}:22";
         send = "SSH-2.0-Telegraf";
         expect = "SSH-2.0";
-        tags.host = host;
+        tags.host = toString host.hostNames;
         tags.org = "nix-community";
         timeout = "10s";
-      }) hosts;
+      }) (builtins.attrValues hosts);
     prometheus.urls = [ "https://events.ofborg.org/prometheus.php" ];
   };
 }