Centralized fleet management for OpenTelemetry collectors with OpAMP

Modern observability depends not just on collecting traces, metrics, and logs, but on managing the collectors that produce and forward that data. As organizations scale from a handful of agents to hundreds or thousands, manual updates and scattered YAML files become a reliability and security risk. The Open Agent Management Protocol (OpAMP) brings standardized, bi-directional control to collector fleets so you can treat your OpenTelemetry Collectors as manageable infrastructure — not pets. (opentelemetry.io)

Why centralized management matters

These operational gains are especially important when your collectors are deployed across hybrid environments (Kubernetes, VMs, edge) or when vendors and cloud providers supply custom collector distributions. (opentelemetry.io)

What OpAMP is — and what it gives you OpAMP is an open, vendor-agnostic protocol for managing telemetry agents. It defines a client/server model where:

Key Capabilities

How OpAMP fits into an OpenTelemetry pipeline Think of OpAMP as the control plane sitting beside your existing observability data plane:

A practical pattern: OpAMP Supervisor + Collector The simplest deployable pattern uses the OpAMP Supervisor to manage an otelcol binary. The Supervisor handles OpAMP protocol details and controls the collector process (start/stop/reconfigure). The OpenTelemetry docs include a concise, hands-on walkthrough; here’s a minimal supervisor config adapted from that guide:

server:
  endpoint: wss://opamp.example.com/v1/opamp
  tls:
    insecure_skip_verify: true

capabilities:
  accepts_remote_config: true
  reports_effective_config: true
  reports_own_metrics: true
  reports_own_logs: true
  reports_health: true
  reports_remote_config: true

agent:
  executable: /usr/local/bin/otelcol

storage:
  directory: /var/lib/opamp-supervisor

This supervisor launches the collector binary, maintains local storage for state, and negotiates with the OpAMP server. The supervisor and example commands are provided and maintained by the OpenTelemetry project. (opentelemetry.io)

Remote configuration example Once an agent is connected, you can send fragments of collector configuration (receivers/exporters/processors) from the control plane. A simple remote config to enable host metrics looks like this:

receivers:
  hostmetrics:
    collection_interval: 10s
    scrapers:
      cpu:

exporters:
  logging:
    verbosity: detailed

service:
  pipelines:
    metrics:
      receivers: [hostmetrics]
      exporters: [logging]

That fragment can be targeted at a single agent, a set of agents with a label, or rolled out in stages. The agent reports its effective configuration back so you can verify intended vs. applied settings. (opentelemetry.io)

Security, trust, and safe rollouts When you centralize control, secure defaults matter:

Why vendors are embracing OpAMP Major vendors and distributions have started building OpAMP-based management:

Operational trade-offs and considerations

Reality check: what OpAMP doesn’t replace OpAMP simplifies management but doesn’t eliminate good CI/CD and infra practice:

Closing note OpAMP gives you a practical, standardized control plane for your OpenTelemetry collectors. It makes dynamic configuration, fleet health monitoring, and safe upgrades possible without building bespoke orchestration tooling. For teams running collectors at scale — across clouds, edge sites, and mixed environments — OpAMP reduces operational friction while keeping the data plane portable and vendor-neutral. (opentelemetry.io)

Further reading and references