diff --git a/SCRATCH/migration-new-host.md b/SCRATCH/migration-new-host.md new file mode 100644 index 0000000..060cc81 --- /dev/null +++ b/SCRATCH/migration-new-host.md @@ -0,0 +1,87 @@ +# Migration Checklist — New GTHost Detroit Server + +**New hardware:** Supermicro 2029TP-HTR, Intel Gold 6152 22c/44t, 192GB DDR4, 2x1.92TB SSD +**Target OS:** Proxmox 9 (fallback: Proxmox 8 if issues) +**Old server:** Denver, Silver 4116, $103/mo → cancel after migration confirmed + +--- + +## Pre-Migration + +- [ ] Verify PBS backup is current and all VMs/containers have recent backups +- [ ] Note all VM IDs and names from current Proxmox +- [ ] Note VLAN/bridge config from current OPNsense setup +- [ ] Export OPNsense config (both routers) — System → Configuration → Backups + +--- + +## Phase 1 — New Server Setup (est. 2-4 hrs) + +- [ ] GTHost provisions server (5-15 mins) +- [ ] Install Proxmox 9 via GTHost panel +- [ ] Initial Proxmox config: + - [ ] Set hostname + - [ ] Configure network bridges to match current layout + - [ ] Set up VLANs +- [ ] Add new server as additional node or standalone in PBS +- [ ] Verify PBS can see backup repository + +--- + +## Phase 2 — Restore VMs (est. 2-4 hrs) + +Restore in this order — networking first: + +- [ ] OPNsense core router (VM) +- [ ] OPNsense zpack router (VM) +- [ ] zlh-dns (Technitium) +- [ ] zlh-proxy (Traefik core) +- [ ] zlh-zpack-proxy (Traefik game/dev edge) +- [ ] zlh-monitor (Prometheus/Grafana) +- [ ] zlh-artifacts +- [ ] zpack-api +- [ ] zpack-portal +- [ ] zlh-velocity (Minecraft proxy) +- [ ] zlh-back (PBS — if moving) +- [ ] Game/dev containers + +--- + +## Phase 3 — Verification (est. 2-4 hrs) + +- [ ] Internal networking between VMs working +- [ ] Portal loads +- [ ] API responds +- [ ] Twingate connector online — update connector to new server if needed +- [ ] Dev container provisions and browser IDE loads +- [ ] Game server provisions and Minecraft connects via Velocity +- [ ] PBS backup runs successfully on new host +- [ ] Monitoring shows all services + +--- + +## Phase 4 — DNS Cutover (est. 30 mins) + +- [ ] Update Cloudflare A record for Velocity public IP +- [ ] Update Cloudflare SRV records for Minecraft +- [ ] Update any other DNS records pointing to old server IPs +- [ ] Monitor for issues — 30 min observation window +- [ ] Confirm everything stable + +--- + +## Phase 5 — Cleanup + +- [ ] Cancel old Denver server (or let expire) +- [ ] Update PROJECT_CONTEXT.md with new VM map and IPs +- [ ] Update OPEN_THREADS.md — mark migration complete + +--- + +## Notes + +- Everything runs on private IPs internally — no hardcoded public IP dependencies +- DNS cutover is the only external change +- Worst case: reinstall Proxmox 8 and repeat +- IPMI available via GTHost panel for out-of-band access if needed +- Proxmox 9 ships with kernel 6.14, LXC 6.0 — no API changes required