2026-05-19 23:01:47 +02:00
|
|
|
# ATC Lakehouse — Application Landscape
|
|
|
|
|
|
|
|
|
|
High-level view of the Dell ATC Forward Deployed Engineering lab.
|
|
|
|
|
**Live diagram:** http://atc-docker01.dell-atc.lan:8080/docs/architecture.html
|
|
|
|
|
|
|
|
|
|
## Architecture diagram
|
|
|
|
|
|
|
|
|
|
```mermaid
|
|
|
|
|
flowchart TB
|
|
|
|
|
subgraph users [Users]
|
|
|
|
|
FDE[FDE Engineers]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
subgraph ops [Operations Layer]
|
|
|
|
|
HP[Homepage Dashboard<br/>atc-docker01:80]
|
|
|
|
|
GF[Grafana<br/>atc-grafana:3000]
|
|
|
|
|
PVE[Proxmox pve01<br/>10.0.10.65:8006]
|
|
|
|
|
IDRAC[iDRAC<br/>10.0.41.102]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
subgraph git [Source Control]
|
|
|
|
|
FG[Forgejo Git<br/>atc-mgt01:3001]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
subgraph ingest [Ingest & Streaming]
|
|
|
|
|
KF[Kafka<br/>atc-kafka01:9092]
|
|
|
|
|
KUI[Kafka UI<br/>:9000]
|
|
|
|
|
DEB[Debezium Connect<br/>atc-lake01:8083]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
subgraph process [Processing]
|
|
|
|
|
SP[Spark Master/Worker<br/>atc-lake01:8080]
|
|
|
|
|
AF[Airflow<br/>atc-airflow01:8080]
|
|
|
|
|
TR[Trino<br/>atc-lake01:8089]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
subgraph storage [Storage]
|
|
|
|
|
OS[ObjectScale ECS<br/>atc-objectscale 10.0.20.111]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
subgraph sources [Source Databases — atc-db02]
|
|
|
|
|
PG[(PostgreSQL)]
|
|
|
|
|
MY[(MySQL)]
|
|
|
|
|
MG[(MongoDB)]
|
|
|
|
|
CA[(Cassandra)]
|
|
|
|
|
N4[(Neo4j)]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
subgraph analytics [Analytics & Search]
|
|
|
|
|
SS[Superset<br/>atc-docker01:8088]
|
|
|
|
|
ES[Elasticsearch<br/>atc-elastic01:9200]
|
|
|
|
|
KB[Kibana<br/>:5601]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
FDE --> HP
|
|
|
|
|
FDE --> SS
|
|
|
|
|
FDE --> KB
|
|
|
|
|
HP --> KUI
|
|
|
|
|
HP --> DEB
|
|
|
|
|
HP --> SP
|
|
|
|
|
HP --> TR
|
|
|
|
|
HP --> OS
|
|
|
|
|
HP --> FG
|
|
|
|
|
|
|
|
|
|
PG & MY & MG & CA --> DEB
|
|
|
|
|
DEB --> KF
|
|
|
|
|
KF --> SP
|
|
|
|
|
SP --> OS
|
|
|
|
|
TR --> PG
|
|
|
|
|
TR --> KF
|
|
|
|
|
KF --> SS
|
|
|
|
|
ES --> KB
|
|
|
|
|
AF --> SP
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## Host roles
|
|
|
|
|
|
|
|
|
|
| Host | IP | Role | Key services |
|
|
|
|
|
|------|-----|------|--------------|
|
|
|
|
|
| **atc-docker01** | 10.0.21.45 | Ops & BI hub | Homepage, Superset, RSS-proxy, icons, Forgejo (local), LAM |
|
|
|
|
|
| **atc-docker02** | 10.0.21.47 | Secondary Docker | Standby / experiments |
|
|
|
|
|
| **atc-mgt01** | 10.0.20.104 | Management | Forgejo (:3001), Nginx Proxy Manager, LDAP |
|
|
|
|
|
| **atc-kafka01** | 10.0.21.36 | Streaming | Kafka broker (:9092), Kafka UI (:9000) |
|
|
|
|
|
| **atc-lake01** | 10.0.21.50 | Lakehouse compute | Spark, Trino, Debezium Connect |
|
|
|
|
|
| **atc-airflow01** | 10.0.21.55 | Orchestration | Apache Airflow (systemd) |
|
|
|
|
|
| **atc-elastic01** | 10.0.21.46 | Search & observability | Elasticsearch, Kibana |
|
|
|
|
|
| **atc-db01** | 10.0.20.112 | Source DBs | PostgreSQL, MySQL (native or container) |
|
|
|
|
|
| **atc-db02** | 10.0.21.51 | Polyglot sources | PG, MySQL, Mongo, Cassandra, Neo4j (Docker) |
|
|
|
|
|
| **atc-grafana** | 10.0.20.103 | Monitoring | Grafana |
|
|
|
|
|
| **atc-objectscale** | 10.0.20.111 | Object storage | Dell ECS / S3 API (Luna OS) |
|
|
|
|
|
| **pve01** | 10.0.10.65 | Hypervisor | Proxmox VE |
|
|
|
|
|
|
|
|
|
|
## Data flow
|
|
|
|
|
|
|
|
|
|
1. **Operational data** lives on **atc-db02** (and db01) — sales, HR, supply chain, telemetry, graph.
|
|
|
|
|
2. **Debezium** on lake01 reads CDC from PostgreSQL → **Kafka** on kafka01.
|
|
|
|
|
3. **Spark** processes streams/batch; results can land in **ObjectScale** (S3-compatible).
|
|
|
|
|
4. **Trino** federates queries across catalogs (Postgres, Kafka, Hive, etc.).
|
|
|
|
|
5. **Superset** on docker01 is the primary BI UI; **Kibana** for search/logs.
|
|
|
|
|
6. **Airflow** orchestrates pipelines on airflow01.
|
|
|
|
|
7. **Homepage** aggregates links, health, RSS intel, and Proxmox status.
|
|
|
|
|
|
|
|
|
|
## Docker vs native
|
|
|
|
|
|
|
|
|
|
| Component | Deployment | Config in git |
|
|
|
|
|
|-----------|------------|---------------|
|
|
|
|
|
| Homepage, Superset, RSS | Docker (docker01) | `compose/`, `deploy/` |
|
|
|
|
|
| Spark, Trino, Debezium | Docker (lake01) | `config/docker/atc-lake01/` |
|
|
|
|
|
| Source DBs | Docker (db02) | `config/docker/atc-db02/` |
|
|
|
|
|
| Kafka UI | Docker (kafka01) | `config/docker/atc-kafka01/` |
|
2026-05-19 23:08:04 +02:00
|
|
|
| Kafka broker | Native KRaft (kafka01) | `config/kafka/kraft-server.properties` |
|
2026-05-19 23:01:47 +02:00
|
|
|
| Elasticsearch | Native (elastic01) | `config/elastic/` |
|
2026-05-19 23:08:04 +02:00
|
|
|
| Airflow | Native (airflow01) | `config/airflow/airflow.cfg`, DAGs |
|
2026-05-19 23:01:47 +02:00
|
|
|
| ObjectScale | ECS appliance | `config/objectscale/` |
|
|
|
|
|
| Forgejo | Docker (mgt01) | `compose/forgejo/` |
|
|
|
|
|
|
|
|
|
|
## Network zones
|
|
|
|
|
|
|
|
|
|
- **Management:** 10.0.10.x — Proxmox, iDRAC
|
|
|
|
|
- **Storage / legacy:** 10.0.20.x — ObjectScale, db01, mgt01, grafana, elastic
|
|
|
|
|
- **Lakehouse compute:** 10.0.21.x — docker, kafka, lake, db02, airflow
|
|
|
|
|
|
|
|
|
|
## Related docs
|
|
|
|
|
|
|
|
|
|
- [Hosts & ports](hosts.md)
|
|
|
|
|
- [Architecture layers](architecture.md)
|
|
|
|
|
- [SSH mesh](ssh-mesh.md)
|
|
|
|
|
- [Disaster recovery](disaster-recovery.md)
|
|
|
|
|
- [Docker inventory](docker-inventory.md)
|