diff --git a/nix/host-modules/hive-forge/default.nix b/nix/host-modules/hive-forge/default.nix index b126db5a..d4b9658f 100644 --- a/nix/host-modules/hive-forge/default.nix +++ b/nix/host-modules/hive-forge/default.nix @@ -458,14 +458,13 @@ in assertion = !(lib.elem forwarderTelemetryPort [ config.services.hyperhive.otel.telemetryPort - config.services.hyperhive.swarm.otel.telemetryPort config.services.hyperhive.swarm.bao.otel.telemetryPort config.services.hyperhive.swarm.nats.otel.telemetryPort ]); message = '' The forge's journal forwarder's telemetry port (${toString forwarderTelemetryPort}) collides with another collector's in the host netns: the hive - collector's, the swarm collector's, the store forwarder's or the + collector's, the store forwarder's or the queue forwarder's. ''; } diff --git a/nix/host-modules/otel.nix b/nix/host-modules/otel.nix index e2379eb9..57c4baad 100644 --- a/nix/host-modules/otel.nix +++ b/nix/host-modules/otel.nix @@ -144,9 +144,7 @@ in the value *configured* rather than implied, which is the point of the option. An undeclared port is invisible to anything comparing ports, so a second collector on the same host picking the same - number fails at `bind()` rather than at eval — - `services.hyperhive.swarm.otel.telemetryPort` sidesteps 8888 by - hand for that reason. + number fails at `bind()` rather than at eval. ''; }; diff --git a/nix/host-modules/swarm-bao-service.nix b/nix/host-modules/swarm-bao-service.nix index 7c83df05..40774b9b 100644 --- a/nix/host-modules/swarm-bao-service.nix +++ b/nix/host-modules/swarm-bao-service.nix @@ -136,12 +136,10 @@ in failures. How you find out that telemetry is being lost, so it is worth keeping rather than switching off. - ⚠️ **Deliberately neither 8888 nor 8889.** 8888 is the collector + ⚠️ **Deliberately not 8888.** 8888 is the collector binary's built-in default, which the hive tier - ({option}`services.hyperhive.otel.telemetryPort`) already binds, and - 8889 is the swarm tier's - ({option}`services.hyperhive.swarm.otel.telemetryPort`). This - container runs with `privateNetwork = false`, so all three share the + ({option}`services.hyperhive.otel.telemetryPort`) already binds. This + container runs with `privateNetwork = false`, so both share the host's network namespace whenever they are co-located — and unlike the OTLP ports this one appears nowhere in either config when it is left undeclared, so nothing that compares configured ports can see diff --git a/nix/host-modules/swarm-nats-service.nix b/nix/host-modules/swarm-nats-service.nix index fe48c19b..c3de732a 100644 --- a/nix/host-modules/swarm-nats-service.nix +++ b/nix/host-modules/swarm-nats-service.nix @@ -115,10 +115,8 @@ in serves its own metrics on (refused and dropped records, exporter failures). - ⚠️ Not 8888, 8889 or 8890: the hive collector, the swarm collector - and the store's forwarder bind those - ({option}`services.hyperhive.otel.telemetryPort`, - {option}`services.hyperhive.swarm.otel.telemetryPort`, + ⚠️ Not 8888 or 8890: the hive collector and the store's forwarder + bind those ({option}`services.hyperhive.otel.telemetryPort`, {option}`services.hyperhive.swarm.bao.otel.telemetryPort`), and this container shares the host netns with them when co-located. The second collector to bind a port dies with `bind: address already in use`. diff --git a/nix/host-modules/swarm-nats.nix b/nix/host-modules/swarm-nats.nix index 0b76a267..c2d61fdd 100644 --- a/nix/host-modules/swarm-nats.nix +++ b/nix/host-modules/swarm-nats.nix @@ -603,7 +603,6 @@ in cfg.metricsPort cfg.otel.telemetryPort config.services.hyperhive.otel.telemetryPort - swarmOtelCfg.telemetryPort config.services.hyperhive.swarm.bao.otel.telemetryPort ]; in @@ -612,7 +611,7 @@ in services.hyperhive.swarm.nats.otel.telemetryPort (${toString cfg.otel.telemetryPort}) collides with another port in the host netns: the queue's own ports, or the telemetry port of the - hive collector, the swarm collector or the store's forwarder. Pick + hive collector or the store's forwarder. Pick a free port. ''; } diff --git a/nix/host-modules/swarm-victorialogs.nix b/nix/host-modules/swarm-victorialogs.nix index 2276ad6e..a3f09089 100644 --- a/nix/host-modules/swarm-victorialogs.nix +++ b/nix/host-modules/swarm-victorialogs.nix @@ -276,14 +276,13 @@ in assertion = !(lib.elem forwarderTelemetryPort [ hyperhiveCfg.otel.telemetryPort - hyperhiveCfg.swarm.otel.telemetryPort hyperhiveCfg.swarm.bao.otel.telemetryPort hyperhiveCfg.swarm.nats.otel.telemetryPort ]); message = '' The log store's journal forwarder's telemetry port (${toString forwarderTelemetryPort}) collides with another collector's in the host netns: the hive - collector's, the swarm collector's, the store forwarder's or the + collector's, the store forwarder's or the queue forwarder's. ''; } diff --git a/nix/module-eval/nats-authelia.nix b/nix/module-eval/nats-authelia.nix index 95f01e18..d21bc646 100644 --- a/nix/module-eval/nats-authelia.nix +++ b/nix/module-eval/nats-authelia.nix @@ -153,7 +153,6 @@ let # Every other collector port on the host, and the queue's forwarder. taken = [ 8888 - 8889 8890 h.services.hyperhive.swarm.nats.otel.telemetryPort ] @@ -266,7 +265,6 @@ let let taken = [ 8888 - 8889 8890 h.services.hyperhive.swarm.nats.otel.telemetryPort ] @@ -1002,7 +1000,6 @@ let reader = lib.head s.service.telemetry.metrics.readers; taken = [ 8888 - 8889 8890 h.services.hyperhive.swarm.nats.otel.telemetryPort ]