[email protected]

AWS S3 zu Hetzner Object Storage migrieren – rclone & MinIO Client Guide

AWS S3 zu Hetzner Object Storage migrieren – rclone & MinIO Client Guide

Hinweis zum Inhalt: Die Informationen in diesem Artikel wurden nach bestem Wissen zum Zeitpunkt der Veröffentlichung zusammengestellt. Technische Details, Preise, Versionen, Lizenzmodelle und externe Inhalte können sich ändern. Bitte prüfen Sie die genannten Angaben eigenständig, insbesondere vor geschäftskritischen oder sicherheitsrelevanten Entscheidungen. Dieser Artikel ersetzt keine individuelle Fach-, Rechts- oder Steuerberatung.

AWS S3 zu teuer? Egress-Kosten explodieren? Wir unterstützen Sie bei der kompletten Migration zu Hetzner Object Storage – von der Analyse bis zum Cutover. 👉 Zur AWS-Migration-Übersicht | Cloud-Exit-Check

Bei einer AWS-Migration ist S3 oft der erste große Brocken: viele Daten, viele Requests – und am Ende muss alles stimmen. Hetzner Object Storage ist S3-kompatibel (Docs), sodass bestehende S3-Tools weiterhin funktionieren – nur mit Hetzner-Endpunkten.

Dieser Guide zeigt einen bewährten Ablauf: Initial Copy → Delta Sync → Cutover, inkl. Tool-Vergleich (rclone vs. MinIO Client vs. AWS CLI) und Verifikations-Checks.

Inhaltsverzeichnis


Voraussetzungen und Planung

Vorab-Checkliste

Bevor Sie Kommandos ausführen, klären Sie diese Punkte – sie entscheiden über Tool-Wahl und Cutover-Strategie:

Frage Warum relevant
Bucket-Größe & Objektanzahl TB? Millionen Objekte? Bestimmt Parallelität und Dauer
Änderungsrate Neue/aktualisierte Objekte pro Stunde/Tag? Anzahl Delta-Syncs
Versioning / Object Lock Compliance-Features müssen ggf. nachgebildet werden
Custom Metadata x-amz-meta-* Header? → Tool-Wahl kritisch!

⚠️ Wichtig: s3cmd und aws s3 kopieren keine Custom Metadata. rclone überträgt Custom Metadata nur mit dem Flag --metadata (-M), ohne das Flag bleiben nur Änderungszeit und Content-Type erhalten (rclone Docs). Hetzner empfiehlt für Custom Metadata den MinIO AIStor Client (mc) (Hetzner Docs).

Ziel-Region/Endpoint wählen

Hetzner Object Storage bietet regionale Endpoints in der EU:

  • fsn1.your-objectstorage.com (Falkenstein)
  • nbg1.your-objectstorage.com (Nürnberg)
  • hel1.your-objectstorage.com (Helsinki)

Wählen Sie:

  • Nahe an Compute-Workloads (Latenz minimieren)
  • Nahe an Nutzern (bei Public Assets)
  • Nach Compliance-Vorgaben (Datenstandort)

S3-Credentials erstellen

Bei Hetzner erzeugen Sie S3-Zugangsdaten in der Console. Der Secret Key ist nur einmal sichtbar – speichern Sie ihn direkt in Ihrem Secret-Manager (1Password, Vault, KMS), nicht im Klartext-Repo (Hetzner Docs).


Tool-Auswahl: rclone vs. MinIO Client vs. AWS CLI

rclone (Standardwahl, Custom Metadata mit -M)

Stärken:

  • Exzellent für Sync, Delta Sync, Listings und Checks
  • Kann Source/Destination vergleichen ohne Daten zu verändern
  • Ideal für "Initial Copy → Delta → Cutover"

Schwäche:

  • Kopiert Custom Metadata nur mit --metadata (-M), standardmäßig nicht

MinIO Client mc (Alternative bei Custom Metadata)

Stärken:

  • Erhält Custom Metadata bei der Migration
  • mc mirror ist sehr migrationsfreundlich (inkrementell nutzbar)

Schwächen:

  • Das Open-Source-Repository minio/mc ist seit dem 14. Juli 2026 archiviert und wird nicht mehr gepflegt (GitHub). Aktuelle Builds stellt MinIO als AIStor Client bereit, der als Drop-in-Ersatz für den bisherigen Client dokumentiert ist (MinIO Docs).
  • Bei sehr großen Datenmengen ggf. Feintuning nötig (Retries, Parallelität)

AWS CLI (aws s3 sync)

Einschränkungen:

  • Zwei Profile gleichzeitig nicht möglich – erfordert lokales Zwischenparken (Download aus Quelle, Upload ins Ziel)
  • Kopiert keine Custom Metadata

Faustregel:

  • Metadata egal? → rclone
  • Metadata wichtig? → rclone mit --metadata oder AIStor Client (mc), Ergebnis im Pilot prüfen
  • Schnell & simpel, ohne Metadata? → AWS CLI (aber oft umständlich)

Step-by-Step: Initial Sync → Delta Sync → Cutover

Schritt 1: Ziel-Bucket in Hetzner anlegen

Bucket in der Hetzner Console erstellen (Name, Location wählen).

Public-URL-Format bei Hetzner:

https://<bucket-name>.<location>.your-objectstorage.com/<file-name>

Schritt 2: Dry Run mit Teilmenge

Bevor Sie 5–50 TB anwerfen: Testen Sie mit einem Prefix wie test/ oder assets/2025-….

Option A: rclone

# Remotes vorher konfigurieren (aws + hetzner)
rclone sync aws:mein-bucket/assets/ hetzner:mein-bucket/assets/ \
  --progress --transfers 32 --checkers 32

Option B: MinIO Client

mc mirror --overwrite --remove aws/mein-bucket/assets/ hetzner/mein-bucket/assets/

Schritt 3: Initial Copy (Bulk Sync)

Jetzt migrieren Sie alles (oder die großen Prefixe zuerst).

rclone Bulk Copy:

rclone sync aws:mein-bucket hetzner:mein-bucket \
  --progress --transfers 64 --checkers 64 \
  --fast-list --retries 10 --low-level-retries 20

Nutzen Ihre Objekte Custom Metadata, ergänzen Sie --metadata (kurz -M), auch bei den Delta-Läufen.

MinIO Client Bulk Copy:

mc mirror --overwrite aws/mein-bucket hetzner/mein-bucket

Tipp: Bei sehr vielen Objekten hilft --fast-list (rclone), um weniger API-Calls zu verursachen – aber testen Sie das vorher (Memory/Listing-Verhalten).

Schritt 4: Delta Sync (vor Cutover)

Wenn sich Ihr S3-Bucket weiter verändert, machen Sie vor dem Cutover mehrere Delta-Läufe:

  • T-24h: Delta Sync
  • T-1h: Delta Sync
  • T-5min: Finaler Delta Sync nach "Freeze" (wenn möglich)
rclone sync aws:mein-bucket hetzner:mein-bucket \
  --progress --transfers 64 --checkers 64

Schritt 5: Cutover (Applikation umstellen)

Was "Cutover" bedeutet, hängt vom Use Case ab:

Use Case Aktion
Backups/Archiv Producer schreibt künftig nach Hetzner
Static Assets/CDN Origin-URL im CDN ändern
App-Uploads S3-Endpoint + Credentials in der App ändern

Beachten Sie: Die Public-URL enthält die Location im Hostnamen (.<location>.).


Datenintegrität prüfen

1. Listings vergleichen

Vergleichen Sie pro Prefix: Anzahl Objekte, Gesamtgröße.

rclone size aws:mein-bucket
rclone size hetzner:mein-bucket

2. rclone check: Größen + Hashes vergleichen

rclone check vergleicht Size und Hashes (z.B. MD5/SHA1) und schreibt Reports, ohne Daten zu verändern (rclone Docs).

rclone check aws:mein-bucket hetzner:mein-bucket --one-way --progress

⚠️ ETag ≠ MD5 bei Multipart Uploads: Bei Objekten, die als Multipart Upload hochgeladen wurden, ist der ETag kein MD5-Digest (AWS Docs). Verlassen Sie sich nicht blind auf ETag-MD5-Vergleiche.

3. Stichproben für kritische Daten

Für "muss 100% stimmen"-Daten (DB-Dumps, Releases, Rechnungen):

  • Zufällig 100–1.000 Objekte ziehen (verschiedene Größenklassen)
  • Aus beiden Buckets herunterladen und lokal hashen (SHA-256), vergleichen

Häufige Fallstricke

Fallstrick 1: Custom Metadata geht verloren

aws s3 und s3cmd kopieren keine Custom Metadata, rclone nur mit --metadata (-M). Wenn Sie Custom Metadata nutzen → rclone mit -M oder AIStor Client (mc) verwenden und das Ergebnis an Stichproben prüfen.

Fallstrick 2: Falscher Endpoint

Hetzner-Endpunkte sind locationspezifisch (fsn1/nbg1/hel1). Wenn Sie z.B. fsn1 nutzen, aber der Bucket in nbg1 liegt, sehen Sie "komische" Fehler oder leere Listings.

Fallstrick 3: Public URL funktioniert nicht

Typische Fehler bei Public Buckets:

  • Location fehlt (.<location>.)
  • Object Key falsch encoded (Spaces/UTF-8)

Fallstrick 4: Kosten/Requests falsch eingeschätzt

Bei Hetzner Object Storage:

  • Ingress ist kostenlos
  • S3-Operationen (PUT/GET/DELETE) kostenlos
  • Abrechnung über Base-Price + inkludierte Quota + Pay-as-you-go

Bei extrem vielen Objekten kann das Migrationstempo durch API/Parallelität begrenzt werden, nicht durch Kosten.


Unser Vorgehen bei WZ-IT

Unser Standard-Flow für AWS S3 → Hetzner Object Storage:

  1. Assessment: Bucket-Features (Versioning/Object Lock/Metadata), Größen, Änderungsrate
  2. Pilot: Testprefix migrieren + Validierungs-Checks
  3. Bulk + Delta: Initial Sync + mehrere Delta-Runs
  4. Cutover-Plan: Freeze-Fenster, Endpoint-Umstellung, Rollback-Plan
  5. Monitoring: Fehlerraten, 404s, Latenzen, App-Logs

👉 Wir bauen Ihnen daraus einen konkreten Cutover-Runbook (inkl. Kommandos, Parallelitäts-Tuning, Verifikationsplan).


Weiterführende Guides

Andere Quellen benötigen eigene Zugangsdaten und Funktionsprüfungen: Google Cloud Storage mit rclone migrieren und DigitalOcean Spaces zu Hetzner übertragen.

Diese Anleitungen könnten Sie ebenfalls interessieren:


WZ-IT: Spezialisierte AWS Exit Services

Unser dediziertes Label WZ-IT bietet umfassende Unterstützung beim AWS-Ausstieg:


Bereit für die Migration? Bei WZ-IT übernehmen wir Analyse, Migration und Betrieb Ihrer Infrastruktur – von AWS zu kosteneffizienten, europäischen Alternativen.

👉 Cloud-Exit-Check ansehen

Quellen

Timo Wevelsiep

Geschrieben von

Timo Wevelsiep

Co-Founder & CEO

Co-Founder von WZ-IT. Spezialisiert auf Cloud-Infrastruktur, Open-Source-Plattformen und Managed Services für KMUs und Enterprise-Kunden weltweit.

Häufig gestellte Fragen

Antworten auf wichtige Fragen zu diesem Thema

Unternehmen weltweit vertrauen WZ-IT

  • Stadtwerke Brühl
  • DGHO e.V.
  • solarwerkstatt berlin
  • ABCO Water Systems
  • Golem.de
  • EVADXB
  • nextGYM
  • AInergy
  • ml&s
  • Odiseo Solutions
  • Annota
  • ARGE
  • SweetConnect GmbH
  • Aphy AG
  • CORGOS
  • Rekorder
  • SolidProof
  • Yonju
  • Keymate
  • Paritel
  • Mr. Clipart
  • Millenium
  • Negosh
  • Führerscheinmacher
Kundenstimmen ansehen

Anfrage

S3-Buckets mit geprüfter Datenintegrität zu Hetzner migrieren

Wir analysieren Objektanzahl, Änderungsrate, Versioning, Object Lock und Custom Metadata und planen Pilot, Bulk- und Delta-Sync, Cutover und Verifikation.

  • Direkt mit Timo und Robin - kein Vertrieb, kein Sales-Pitch
  • Fachliche Einschätzung Ihrer Situation
  • Konkrete nächste Schritte für Infrastruktur, Software oder KI

Das Gespräch ist unverbindlich und kostenlos.

Die Beratung von WZ-IT zu unserer Azure-Migration war schon im Erstgespräch fachlich sehr fundiert und völlig unverbindlich - wir haben eine Menge mitgenommen.
Jakob ÖschlbergerInno7 GmbH
Timo und Robin, Gründer von WZ-IT

Was benötigt Ihre S3-Migration?

Die Beratung von WZ-IT zu unserer Azure-Migration war schon im Erstgespräch fachlich sehr fundiert und völlig unverbindlich - wir haben eine Menge mitgenommen.
Jakob ÖschlbergerInno7 GmbH