Skip to content

Cloudflare Migration — Privat → MQA Organisation

Executive Overview — all summaries for decision-makers.

Status: R2 migriert ✅ · DNS-Migration offen · Priorität: Hoch

Warum

  • DNS für mqa.group liegt am persönlichen Account → kein Team-Zugang
  • R2 Bucket mqa-media + API Keys gehören organisatorisch zu MQA
  • Billing, Audit, Offboarding nicht NGO-konform

Scope

AssetAktuellZiel
Zone mqa.groupPrivatMQA Cloudflare Org
R2 Bucket mqa-mediaPrivatMQA Org (EU)
DNS Recordsportal, api, …1:1 übernehmen
R2 API Keys in RenderPrivat-AccountNeu generieren in MQA

DNS Records (Production)

Vor Migration exportieren (Cloudflare Dashboard → DNS → Export):

TypeNameTargetProxy
CNAMEportalRender Frontend URLDNS only (grau) empfohlen
CNAMEapiRender Backend URLDNS only (grau)
CNAMEgovernanceLegacy / Redirectprüfen

Wichtig: Proxy-Status (orange vs grau) 1:1 übernehmen — Render SSL bricht bei falscher Proxy-Konfiguration.

Migrations-Schritte

1. Vorbereitung (T-7 Tage)

  • [ ] MQA Cloudflare Account + Team anlegen
  • [ ] TTL auf 300s senken
  • [ ] DNS Export aus Privat-Account
  • [ ] R2: Bucket-Inventar dokumentieren

2. MQA-Zone anlegen (T-0)

  • [ ] Zone mqa.group in MQA-Account hinzufügen
  • [ ] Nameserver bei Domain-Registrar noch nicht umstellen (parallel testen)
  • [ ] Alle Records importieren
  • [ ] Staging-Subdomains vorbereiten (optional)

3. R2 Migration ✅ (2026-08-04)

Ergebnis:

MetrikWert
Bucket (MQA Org, EU)mqa-media
Account ID441f30afc2a4a53d635f9fd3450f75e2
Objekte kopiert4 (~404 MiB)
Public URL (neu)https://pub-e40a213d0a4e48019e8d0debf3cfd6a3.r2.dev
Public URL (alt, Privat)https://pub-82f40ef04199453c80f3c9316b0c272c.r2.dev

Keys in der DB (MediaFile.r2Key) unverändert — Objekte mit identischen Keys kopiert.

Upload: 3 PDFs via wrangler r2 object put; großes Video (401 MiB) via rclone (Wrangler-Limit 300 MiB).

Render: Prod + Staging Backend — R2_*, CF_API_TOKEN auf MQA-Werte gesetzt, Redeploy ausgelöst.

Offen nach R2

  • [ ] Media Hub Smoke-Test (Upload + PUBLIC/INTERNAL Download) auf Prod
  • [ ] Alte R2-Keys im Privat-Account widerrufen (T+7 Tage)
  • [ ] Optional: Custom Domain media.mqa.group statt pub-….r2.dev

Referenz-Skript (Archiv): backend/scripts/migrate-r2-to-mqa.mjs

4. DNS Cutover

  • [ ] Nameserver auf MQA-Cloudflare umstellen oder Records beim Registrar auf MQA zeigen
  • [ ] Propagation prüfen: dig portal.mqa.group
  • [ ] Smoke-Tests → DEPLOYMENT-CHECKLIST

5. Aufräumen (T+7 Tage)

  • [ ] Alte Zone im Privat-Account entfernen
  • [ ] Alte R2 Keys widerrufen
  • [ ] ENV-INVENTORY aktualisieren
  • [ ] OPS-ROADMAP Phase 1 abhaken

Rollback

Nameserver zurück auf Privat-Account (DNS-Export vorhanden halten).

Verantwortlich

RolleAufgabe
MQA ITAccount, Nameserver, Team-Zugänge
DeveloperR2 Sync, Render Env, Tests