FermiHDI HD Ecosystem Overview
---
title: HD Ecosystem Overview
---
flowchart TD
oap[OAP Control Plane] --> dms_opamp_proxy[DMS OpAMP Proxy]
Kafka ==> Ingest[HD Message Bus Ingester]
RabbitMQ ==> Ingest
MQTT ==> Ingest
S3 ==> Ingest
ld[Local Directory] ==> Ingest
subgraph Core HD
Ingest ==> SCC[HD Storage Cluster Controller]
subgraph "`Storage Cluster **SC n**`"
SCC ==> SN1[HD Storage Node 1]@{ shape: lin-cyl, label: "Disk storage" }
SCC ==> SN2[HD Storage Node 2]@{ shape: lin-cyl, label: "Disk storage" }
SCC ==> SNn[HD Storage Node n]@{ shape: lin-cyl, label: "Disk storage" }
end
dms_core[DMS Core] -- mTLS --> Ingest
dms_core -- mTLS --> SCC
dms_core -- mTLS --> SN1
dms_core -- mTLS --> SN2
dms_core -- mTLS --> SNn
dms_core -- mTLS --> Proxy[HD Query Proxy]
dms_core-.->|mTLS|sdk[HD SDK Client]
Proxy -- mTLS --> SCC
subgraph DMS
dms_core --> dms_ca[DMS CA]
dms_core --> dms_opamp[DMS OpAMP Server]
dms_opamp_proxy --> dms_opamp
dms_core --> dms_ux[DMS Web UI]
dms_core --> local_sentery["`Local Sentry Relay **only live with OptIn**`"]
dms_core --> local_otel[Local OTel Collector]
end
end
dms_core-.->|mTLS|ext_lic_api[External License / OptIn API]
local_sentery-.->|mTLS|Central_Sentry[Central Sentry Relay]
local_otel-.->|mTLS|Central_OTel[Central OTel]
sentry[Sentry.io] --> grafana[Grafana]
subgraph Centeral Services
Central_Sentry --> sentry
Central_OTel --> grafana
ext_lic_api <--> redis[Redis]@{ shape: cyl, label: "Redis" }
int_lic_api[Internal License API] <--> redis
managment[Centeral Management] <--> redis
managment --> lic_db_access[License DB Access]
lic_db_access --> lic_db[License DB]@{ shape: cyl, label: "Database" }
managment --> lic_ica[Intermediate Lic CA]
managment --> optIn_ica[Intermediate OptIn CA]
managment_webUX[Managment Web UI] --> managment
end
border0["`Border0 **Web Recording**`"] --> managment_webUX
zapier[Zapier] --> int_lic_api[Internal License API]
HubSpot --> zapier
subgraph Traefik
traefik <--> fwa[Forward Auth]
traefik <--> x509[mTLS M2M Auth]
end
traefik -- mTLS --> Proxy
ext_sdk[External SDK] --> traefik[Traefik]
graphql[GraphQL Server] --> Proxy
mcp[MCP Server] --> Proxy
de[Data Explorer] --> Proxy