2026-05-19 22:28:01 +02:00
|
|
|
# Disaster recovery
|
|
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
Goal: fully restore the **atc-docker01** dashboard stack and configuration from git.
|
2026-05-19 22:28:01 +02:00
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
## Requirements
|
2026-05-19 22:28:01 +02:00
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
- VM `atc-docker01` with Docker and git
|
|
|
|
|
- Network to internal `.dell-atc.lan` hosts
|
|
|
|
|
- Secrets: `.env` or existing `config/homepage/proxmox.yaml`
|
|
|
|
|
- SSH mesh deployed ([ssh-mesh.md](ssh-mesh.md)) for multi-host config pull
|
2026-05-19 22:28:01 +02:00
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
## Step 1 — Repository
|
2026-05-19 22:28:01 +02:00
|
|
|
|
|
|
|
|
```bash
|
2026-05-19 22:46:40 +02:00
|
|
|
dnf install -y git docker-compose-plugin
|
2026-05-19 22:28:01 +02:00
|
|
|
git clone http://atc-mgt01.dell-atc.lan:3001/mo/Lakehouse.git /root/lakehouse
|
|
|
|
|
cd /root/lakehouse
|
|
|
|
|
cp .env.example .env
|
2026-05-19 22:46:40 +02:00
|
|
|
# Edit .env: SUPERSET_SECRET_KEY, etc.
|
2026-05-19 22:28:01 +02:00
|
|
|
```
|
|
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
## Step 2 — Homepage + RSS + icons
|
2026-05-19 22:28:01 +02:00
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
docker compose -f deploy/docker-compose.homepage.yml up -d --build
|
|
|
|
|
docker exec homepage wget -qO- http://127.0.0.1:3000/api/revalidate
|
|
|
|
|
```
|
|
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
## Step 3 — Superset
|
2026-05-19 22:28:01 +02:00
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
docker compose -f compose/superset/docker-compose.yaml up -d --build
|
|
|
|
|
```
|
|
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
## Step 4 — Optional: Forgejo, LAM, cAdvisor
|
2026-05-19 22:28:01 +02:00
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
docker compose -f compose/forgejo/compose.yaml up -d
|
|
|
|
|
docker compose -f compose/lam/compose.yml up -d
|
|
|
|
|
```
|
|
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
Or all at once:
|
2026-05-19 22:28:01 +02:00
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
./scripts/deploy/deploy-atc-docker01.sh
|
|
|
|
|
```
|
|
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
## Step 5 — Other hosts (manual)
|
2026-05-19 22:28:01 +02:00
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
This repo holds **config references**, not full VM images:
|
2026-05-19 22:28:01 +02:00
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
| Host | Restore from git |
|
|
|
|
|
|------|------------------|
|
|
|
|
|
| Kafka connectors | `config/kafka/*.json` → Connect REST API |
|
|
|
|
|
| Trino | `config/trino/config.properties` → lake host |
|
2026-05-19 22:28:01 +02:00
|
|
|
| Spark | `config/spark/spark-defaults.conf` |
|
|
|
|
|
| Airflow | `config/airflow/` |
|
|
|
|
|
| Data scripts | `config/scripts/data-generation/` |
|
|
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
See `inventory/containers-atc-docker01.json` for last exported container state.
|
2026-05-19 22:28:01 +02:00
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
## Volumes (not in git)
|
2026-05-19 22:28:01 +02:00
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
Back up separately:
|
2026-05-19 22:28:01 +02:00
|
|
|
|
|
|
|
|
- `forgejo_forgejo` — Git data
|
|
|
|
|
- `superset_superset_home` — Superset metadata
|
2026-05-19 22:46:40 +02:00
|
|
|
- `lam_lam` — LAM configuration
|
2026-05-19 22:28:01 +02:00
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
docker run --rm -v forgejo_forgejo:/data -v /backup:/backup alpine \
|
|
|
|
|
tar czf /backup/forgejo_forgejo.tgz -C /data .
|
|
|
|
|
```
|
|
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
## Verification
|
2026-05-19 22:28:01 +02:00
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
1. http://atc-docker01.dell-atc.lan/ — homepage loads, 4 tabs
|
2026-05-19 22:28:01 +02:00
|
|
|
2. http://atc-docker01.dell-atc.lan:8090/health — RSS proxy
|
|
|
|
|
3. http://atc-docker01.dell-atc.lan:8088/health — Superset
|
2026-05-19 22:46:40 +02:00
|
|
|
4. FEEDS tab shows RSS widgets
|
2026-05-19 22:28:01 +02:00
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
## Proxmox widget
|
2026-05-19 22:28:01 +02:00
|
|
|
|
2026-05-19 22:46:40 +02:00
|
|
|
Token in `config/homepage/proxmox.yaml`. After restore, verify in Proxmox → Permissions → API Tokens → `root@pam!homepage`.
|