Full Demo Presentation Overview
Slide 1: Demo Purpose
This demo shows one OpAMP provider managing five different telemetry agents through a shared server UI.
Key points:
- Fluent Bit and Fluentd run in supervisor mode, so the consumer launches and manages the agent process.
- Vector, Elastic Agent, and Elastic Heartbeat run in observer mode, so the consumer attaches to already-running agents.
- Fluent Bit and Vector use the OpAMP WebSocket transport.
- Fluentd, Elastic Agent, and Elastic Heartbeat use the OpAMP HTTP transport.
- Active and replacement configurations are visible in the server catalog and can be deployed from the UI.
- Agent binaries can be resolved from
PATHor supplied as absolute paths, withuse-demo-agent-paths.cmdprovided for the default localD:\dev-toolslayout.
Slide 2: Runtime Topology
flowchart LR
UI[Server UI<br/>Config Catalog<br/>Client Config Generator]
Provider[OpAMP Provider<br/>127.0.0.1:8080]
Generator[Client Config Generator<br/>schema-driven JSON files]
Logstash[Logstash Container<br/>beats input :5044]
FBC[Fluent Bit Consumer<br/>Supervisor mode]
FDC[Fluentd Consumer<br/>Supervisor mode]
VC[Vector Consumer<br/>Observer mode]
EAC[Elastic Agent Consumer<br/>Observer mode]
HBC[Heartbeat Consumer<br/>Observer mode]
FB[Fluent Bit]
FD[Fluentd]
V[Vector]
EA[Elastic Agent]
HB[Elastic Heartbeat]
UI --> Provider
UI --> Generator
Generator -->|save/load generated consumer configs| Provider
FBC <-->|WebSocket OpAMP| Provider
VC <-->|WebSocket OpAMP| Provider
FDC <-->|HTTP OpAMP| Provider
EAC <-->|HTTP OpAMP| Provider
HBC <-->|HTTP OpAMP| Provider
FBC -->|launches and supervises| FB
FDC -->|launches and supervises| FD
VC -.->|observes local API/process| V
EAC -.->|observes local API/process| EA
HBC -.->|observes local API/process| HB
EA -->|events| Logstash
HB -->|events| Logstash
Slide 3: Transport Split
flowchart TB
Provider[OpAMP Provider<br/>/v1/opamp]
subgraph SocketTransport[Socket transport]
FB[Fluent Bit Consumer<br/>transport: websocket]
V[Vector Consumer<br/>transport: websocket]
end
subgraph HttpTransport[HTTP transport]
FD[Fluentd Consumer<br/>transport: http]
EA[Elastic Agent Consumer<br/>transport: http]
HB[Heartbeat Consumer<br/>transport: http]
end
FB <-->|persistent WebSocket| Provider
V <-->|persistent WebSocket| Provider
FD <-->|poll/request HTTP| Provider
EA <-->|poll/request HTTP| Provider
HB <-->|poll/request HTTP| Provider
Speaker note:
The socket side demonstrates long-lived OpAMP connectivity for agents that benefit from persistent control channels. The HTTP side keeps the rest of the estate on the simpler request/response path.
Slide 4: Configuration Deployment Flow
sequenceDiagram
participant Operator
participant UI as Server UI
participant Catalog as Config Catalog
participant Generator as Client Config Generator
participant Provider as OpAMP Provider
participant Consumer as Selected Consumer
participant Agent
Operator->>UI: Select connected client
Operator->>Generator: Generate or adjust consumer JSON (optional)
Generator-->>UI: Saved JSON configuration file
UI->>Catalog: Browse replacement configs
Catalog-->>UI: Return docs/full-demo/replacements entry
Operator->>UI: Deploy selected config
UI->>Provider: Queue remote config
Provider->>Consumer: Send AgentRemoteConfig
Consumer->>Agent: Apply or stage agent config
Consumer-->>Provider: RemoteConfigStatus and EffectiveConfig
Provider-->>UI: Show updated status
Slide 5: Files To Point At
| Purpose | Path |
|---|---|
| Provider and catalog setup | docs/full-demo/provider/opamp-provider-full-demo.json |
| Active agent configs | docs/full-demo/active |
| Replacement configs | docs/full-demo/replacements |
| Consumer OpAMP configs | docs/full-demo/consumers |
| Logstash pipeline | docs/full-demo/logstash/logstash.container.conf |
Add local agents to PATH |
docs/full-demo/use-demo-agent-paths.cmd |
| Start observer-mode agents | docs/full-demo/start-observed-agents.ps1 |
| Stop observer-mode agents | docs/full-demo/stop-observed-agents.ps1 |
Slide 6: Demo Success Criteria
The demo is healthy when:
- All five consumers appear in the server UI.
- Fluent Bit and Vector show WebSocket-backed OpAMP connectivity.
- Fluentd, Elastic Agent, and Heartbeat show HTTP-backed OpAMP connectivity.
- Fluent Bit and Fluentd are managed as supervisor processes.
- Vector, Elastic Agent, and Heartbeat are detected by observer-mode consumers.
- Replacement configs from
docs/full-demo/replacementscan be selected and sent from the UI. - Elastic Agent and Heartbeat events arrive in the Logstash container output directory.
OpAMP