37 lines
2.3 KiB
Markdown
37 lines
2.3 KiB
Markdown
# Hermes Disaster Recovery Plan v2
|
|
|
|
**Last updated:** July 9, 2026
|
|
**Author:** Sho'Nuff + Network Services Team
|
|
**Supersedes:** `hermes-standby-deployment` skill's failover logic
|
|
|
|
---
|
|
|
|
## Architecture
|
|
|
|
```
|
|
Core (netcup RS 2000 — 152.53.192.33) app1-bu (Hetzner CPX21 — 5.161.114.8)
|
|
┌──────────────────────────────────┐ ┌──────────────────────────────────┐
|
|
│ Hermes Agent (active) │ │ Hermes Gateway (dormant) │
|
|
│ Ollama + llama3.2:3b (fallback) │◄─Tailnet─►│ Ollama + llama3.2:3b (standby) │
|
|
│ state.db (SQLite, ~1.87 GB) │ │ state.db (synced) │
|
|
│ Telegram gateway (active) │ │ Telegram gateway (off) │
|
|
│ │ │ │
|
|
│ S3 backup every 15 min ─────────┼─────────►│ S3 sync every 5 min ◄───────────┤
|
|
│ Snapshot every 10 min ──────────┼─────────►│ │
|
|
└──────────────────────────────────┘ └──────────────────────────────────┘
|
|
│ │
|
|
▼ ▼
|
|
s3://hermes-vps-backups/live/
|
|
s3://hermes-vps-backups/snapshots/ (standby pulls snapshots on change)
|
|
s3://hermes-vps-backups/ACTIVE_OWNER (standby writes on takeover only)
|
|
```
|
|
|
|
**Key changes from v1:**
|
|
- app1-bu upgraded from CPX11 (2C/2G) to CPX21 (4C/8G, ~$14/mo) to run its own local Ollama
|
|
- Both boxes have local Ollama (llama3.2:3b) — health checks never depend on external LLM providers
|
|
- Traffic between boxes goes over Tailscale tailnet (not public IPs), avoiding the Hetzner↔netcup routing issue
|
|
- No 60-second S3 writes from standby — all cross-box communication uses Tailscale directly
|
|
- S3 is backup storage only, not a communication channel
|
|
|
|
[Full document contents at /root/.hermes/cache/documents/doc_0e07de339e65_hermes-dr-plan-v2.md]
|