Versioning & updates
AtherOps tracks two versions per host: the agent version (the wrapper) and
the collector version (otelcol-contrib). Keeping them visible and
centrally updatable is the core operational advantage over hand-edited install
scripts.
Two versions, reported every heartbeat
Every ~30 seconds the agent sends a signed heartbeat that carries:
X-Agent-Version: the wrapper versionX-Collector-Version: the running collector version (read from the active install, not by spawning the collector each time).
The platform stores both, so you can see what each host runs on the Hosts page. The card has an Agent row and a Collector row.
atherops-otel-agent --version
atherops-otel-agent 1.2.0
otelcol-contrib 0.102.0
Central, verified collector upgrades
An operator can set a target collector version in a host's remote config
from the backend. On its next poll the agent fetches that version from the
manifest, verifies its SHA-256, installs it
alongside the current version, repoints the current symlink, and restarts the
collector. On a checksum mismatch it keeps running the current binary. This is
how you move a fleet to a new OSS collector version without touching install
scripts on each host. See
Upgrade the collector.
Remote config convergence
The agent polls remote config periodically. On a change it merges the new values
and, if anything affecting the collector changed, re-renders the collector YAML
and restarts. Remote-configurable knobs are marked # [remote] in
config.yaml (e.g. scrape_interval).
level=info msg="remote config applied" target_collector=0.103.0 changed=true
level=info msg="config reloaded, restarting collector"
What this release does and does not do for fleets
- Does: report each host's running agent + collector version; push a target collector version and converge to it, checksum-verified.
- Does not (this release): a fleet-wide "version drift / rollout status" view (which hosts have converged vs are pending). You can see per-host versions on the Hosts page; an aggregated rollout view is planned but not part of this release. Restart-based convergence (not live binary swap) is the model.