Hochladen von Daten auf Amazon S3 und von S3 auf Glacier

von | 21.10.2024

Unternehmen, die große Datenmengen und große Dateien verarbeiten und auch Amazon S3-Speicher verwenden, benötigen eine einfache Möglichkeit, Daten in S3 und dann von S3 zu Glacier zu bringen, um sie zu archivieren und zu anderen Zwecken kalt zu speichern.

Doch das ist leichter gesagt als getan - vor allem für IT-Teams, die mehrere Speicherziele, Berechtigungen und andere Konfigurationen für potenziell Hunderte von Benutzern verwalten.:

  • IT-Teams müssen den Zugriff auf den IA-Speicher (Infrequent Access) für jeden Benutzer manuell konfigurieren, was das Risiko von Fehlkonfigurationen, unbefugtem Zugriff oder der Ablage "heißer" Daten im kalten Speicher erhöht.
  • Beim nativen Hochladen von Inhalten in AWS S3 und S3 Glacier müssen strenge Dateigrößenbeschränkungen und technisch anspruchsvolle Upload-Prozesse wie der mehrteilige Upload über die AWS-Befehlszeilenschnittstelle (CLI) beachtet werden.
  • Das native Hochladen von Inhalten auf S3 und Glacier ist in der Regel ein manueller, zeitaufwändiger Prozess.

All dies kann für IT-Teams zu einem Zustand führen, der die Verwaltung und Administration zur Hölle macht. Daher finden Sie hier eine kurze Anleitung zum Hochladen von Daten von S3 auf Glacier mithilfe der AWS Management Console und der Befehlszeilenschnittstelle - und warum MASV ist eine bessere Option zum Hochladen von Daten in jede Version von S3.

Inhaltsübersicht

Große Dateien schnell in den Cloud Cold Storage einlesen

MASV lässt sich in mehrere Cloud Cold Storage-Plattformen integrieren und kann Speicher-Workflows automatisieren.

Was ist Amazon S3?

Amazon Einfacher Speicherdienst (S3) ist ein Objektspeicherdienst mit hoher Skalierbarkeit, Sicherheit, Datenverfügbarkeit und Leistung. Da der Objektspeicher für die Speicherung unstrukturierter Daten konzipiert ist, ist Amazon S3 ein beliebter Speicher für M&E-Unternehmen, die mit großen Mengen an Bildern und Videos arbeiten.

💡 MASV's Code-freie Integrationen mit mehreren großen Cloud-Anbietern, darunter S3, ermöglichen die problemlose Aufnahme von Inhalten in den Cloud-Speicher sowie die Automatisierung von Dateiübertragung und -speicherung.

S3-Speicherklassen

S3 ist jedoch kein Monolith: Es enthält mehrere verschiedene Lagerklassen die auf unterschiedliche Anwendungsfälle und Datenspeicheranforderungen zugeschnitten sind. Diese Speicherklassen umfassen:

  • S3-Norm
  • S3 Intelligent-Tiering
  • S3 Express Eine Zone
  • S3 Standard-IA
  • S3 Eine Zone-IA
  • S3 Glacier Sofortabruf
  • S3 Glacier Flexible Retrieval
  • S3 Gletschertiefes Archiv
  • S3-Außenposten
Platzhalterbild

Jede S3-Speicherklasse hat unterschiedliche Kosten und Leistungen für die Speicherung und den Datenexport, wobei die Speicheroptionen für seltenen Zugriff (IA) und kalten Zugriff (Glacier) zwar billiger sind, aber einen teureren (und weniger leistungsfähigen) Datenexport bieten. Einige Glacier-Speicheroptionen benötigen mehrere Stunden oder sogar Tage, um Daten abzurufen.

Eine Analyse der verschiedenen S3-Speicherklassen, ihrer Kosten, ihrer Leistung und ihrer Eignung für verschiedene Anwendungsfälle - insbesondere in Bezug auf S3 Glacier-Speicherklassen - finden Sie in unserem Beitrag über Einrichtung und Verwaltung eines Cloud-Archivs.

Cloud Storage Machines

Cloud-Archiv: Vorteile, Herausforderungen und Best Practices

Was sind die wichtigsten Best Practices für Cloud-Archive, die Sie befolgen sollten? Wir haben alles für Sie.

Lesen Sie mehr >

Was ist Amazon S3 Glacier?

Amazon S3 Glacier ist eine Art von S3-Speicher, insbesondere ein kalter Speicher, der für Daten verwendet wird, auf die weniger häufig zugegriffen wird, wie z. B. Cloud-Archivdaten.

Amazon Glacier und andere Kältespeicheroptionen, wie z. B. Google Coldline oder die Azure Blob Storage's Kaltes Tierbieten mehrere Vorteile bei der Speicherung von Daten mit seltenem Zugriff (IA), wie z. B.:

  • Gibt Platz in Ihrem primären (heißen) Speicher frei, indem inaktive Daten entfernt werden.
  • Geringere Speicherkosten als bei der Speicherung heißer Daten (mit häufigem Zugriff).
  • Bietet eine kostengünstigere Alternative zu physischen Archiven und ermöglicht es Unternehmen, die

Obwohl Cold Storage viele Vorteile bietet, ist es auch wichtig, genau zu überwachen, wer in Ihrem Team Zugriff auf AWS Glacier hat.

Das liegt daran, dass Glacier zwar günstigere Speicherkosten als andere Speichertypen bietet, es aber, wie bereits erwähnt, viel teurer sein kann, Daten aus dem kalten Speicher abzurufen (und es dauert länger als das Abrufen von Daten aus dem heißen Speicher).

Migration von Daten zu S3 und von S3 zu Glacier

Zunächst einmal: Wir empfehlen immer, entweder die Befehlszeilenschnittstelle (CLI) oder Infrastructure-as-Code (IaC) zu verwenden, um Ihren Amazon-Speicher zu konfigurieren und zu verwalten, da dies eine größere Kontrolle und einen besseren Überblick über potenziell verheerende Fehlkonfigurationen ermöglicht. Bei der Verwendung der Verwaltungskonsole kann es leicht passieren, dass durch einen oder zwei falsche Klicks eine Reihe von kaskadierenden Problemen entsteht.

Wir wissen aber auch, dass nicht-technische und neuere Benutzer die AWS Management Console bevorzugen.

So migrieren Sie Ihre Daten von S3 nach Gletscher über die Management-Konsole.

Management-Konsole

Teil 1: Einrichten eines S3-Buckets

  1. Erstellen Sie ein AWS-Konto und melden Sie sich bei der Management-Konsole an.
  2. Verwenden Sie die Suchleiste, um nach S3 zu suchen. Wählen Sie S3 aus den Ergebnissen.
  3. Wählen Sie im Menü auf der linken Seite Buckets. Benennen Sie Ihren neuen Bucket (wir nennen ihn "MASV-Archiv") und wählen Sie die gewünschte Region. Stellen Sie sicher, dass der Standard Öffentlichen Zugang blockieren ausgewählt ist.
  4. Aktivieren Sie Eimer-Versionierung und (optional) hinzufügen tags um Lagerkosten oder andere Kriterien zu verfolgen.
  5. Aktivieren Sie die Verschlüsselung im Ruhezustand.
  6. Unter Erweiterte Einstellungen sollten Sie Folgendes aktivieren S3 Objektsperre (optional), um sicherzustellen, dass wichtige Daten nicht gelöscht werden (wenn Sie den Bucket z. B. für Archivierungszwecke erstellen).
    1. Sobald der Bereich erstellt ist und Sie die Objektsperre aktiviert haben, wählen Sie Details zum Eimer, die den Eimer öffnet Eigenschaften tab.
    2. Wählen Sie die bearbeiten im Abschnitt Objektsperre auf der Registerkarte Eigenschaften. Damit können Sie Standardwerte für die in den Bereich hochgeladenen Daten auswählen (z. B. die Daten für eine Anzahl von X Jahren aufbewahren).

Teil 2: Hochladen auf S3 und Auswahl der Speicherklasse

  1. Wählen Sie Ihren Bucket in der S3-Konsole aus. Drücken Sie dort die Taste Objekte Registerkarte und wählen Sie Hochladen.

Sie können ein einzelnes Objekt mit bis zu 160 GB über die Konsole in S3 hochladen. Um eine Datei mit mehr als 160 GB hochzuladen, müssen Sie die AWS CLI, das AWS SDK oder die Amazon S3 REST API verwenden. Oder Sie können MASV verwenden, um Dateien von bis zu 5 TB auf S3 hochzuladen..

2. Wählen Sie die Dateien hinzufügen und navigieren Sie dann zu den Dateien, die Sie hochladen möchten. Die Datei erscheint im Fenster Dateien und Verzeichnisse Abschnitt von S3.

3. Unter den Eimern Eigenschaften können Sie dann die S3-Speicherklasse (z. B. Glacier Deep Archive oder Glacier Instant Retrieval) auswählen, in die Sie Ihren Bucket hochladen möchten.

Hinweis: Einige Speicherklassen haben Mindestlaufzeiten für hochgeladene Daten; Glacier Deep Archive beispielsweise rechnet 180 Tage lang ab, auch wenn die Datei schon nach wenigen Tagen gelöscht wird.

4. Als Nächstes wird ein Banner mit dem Status des Datei-Uploads angezeigt. Sobald der Upload abgeschlossen ist, wird eine Zusammenfassung des Uploads angezeigt.

Herzlichen Glückwunsch! Sie haben erfolgreich eine Datei von Ihrem Computer zu S3 und von S3 zu Glacier hochgeladen, indem Sie die AWS Management Console verwendet haben.

Befehlszeilenschnittstelle (CLI)

Versuchen wir nun, denselben Prozess mit der AWS-Befehlszeile einzurichten. In diesem Beispiel erstellen wir einen Bucket namens masv-archive mit der AWS-Befehlszeilen-Tool.

Dieser Bucket befolgt einige Best Practices für die Sicherheit: Öffentlicher Zugriff gesperrt, Versionierung eingeschaltet, Verschlüsselung im Ruhezustand eingeschaltet, Objektsperre eingeschaltet. Um dieses Archiv für das Projektmanagement und die Rechnungsstellung zu verfolgen, fügen wir ein Tag hinzu: project-x. Dann laden wir eine kleine und eine große Datei vom lokalen Speicher auf S3 Glacier hoch.

Die AWS CLI ist zwar flexibler als die Management Console, da sie Uploads mit einer Größe von mehr als 160 GB unterstützt, hat aber ein PUT-Limit von 5 GB für ein einzelnes Objekt, so dass mehrteilige Uploads erforderlich sind.

Bevor Sie beginnen, vergewissern Sie sich, dass Ihre Anmeldedaten und Ihre Region bereits bekannt sind. konfiguriert für die AWS CLI. In diesem Beispiel verwenden wir das masv-Profil.

Lassen Sie uns den Bucket erstellen und konfigurieren. Sie müssen dies nur einmal tun.

1. Erstellen Sie den Eimer:

$ aws s3api create-bucket \\
    --bucket masv-archive \\
    --region $(aws configure get region --profile masv) \\\
    --object-lock-enabled-for-bucket \\
    --profil masv 

Ausgabe:

{
    "Ort": "/masv-archive"
}

2. Blockieren Sie den öffentlichen Zugang:

$ aws s3api put-public-access-block \
    --bucket masv-archive \
    --öffentlicher-zugriffsblock-konfiguration 
BlockPublicAcls=true,IgnorePublicAcls=true,BlockPublicPolicy=true,RestrictPublicBuckets=true \
    --profil masv

3. Schalten Sie die Versionierung ein:

$ aws s3api put-bucket-versioning \\
    --bucket masv-archive \\\
    --versioning-configuration Status=Enabled \\
    --profile masv

4. Aktivieren Sie die serverseitige Verschlüsselung:

$ aws s3api put-bucket-encryption \
    --bucket masv-archive \
    --server-side-encryption-configuration '{
        "Rules": [{
            "ApplyServerSideEncryptionByDefault": {
                "SSEAlgorithm": "AES256"
            }
        }]
    }' \
    --profile masv

5. Fügen Sie ein Tag mit dem Namen "project-x" hinzu:

$ aws s3api put-bucket-tagging \
    --bucket masv-archive \
    --tagging 'TagSet=[{Key=project-x,Value=true}]' \
    --profile masv

Jetzt ist der Bucket bereit für die Speicherung unserer archivierten Dateien. Wir laden die Dateien vom lokalen Speicher in unseren Bucket mit der Glacier-Speicherklasse hoch.

Das Hochladen kleinerer Dateien (weniger als 5 GB) ist ganz einfach. Es ist nur ein einziger Befehl erforderlich. Wenn Ihre lokale Datei zum Beispiel den Namen meine-kleine-datei.mp4dann würden Sie dies eingeben:

$ aws s3api put-object \
    --bucket masv-archive \
    --key meine-kleine-datei.mp4 \
    --body meine-kleine-datei.mp4 \
    --storage-class GLACIER \
    --profil masv

Ausgabe:

{
    "ETag": "\"e5x2a5mbpdl4e2d4c3549862b2a5f2b\"",
    "ServerSideEncryption": "AES256",
    "VersionId": "eixDahmmp.lreyCa8cKkkHoV80r17S8k"
}

Mehrteilige Uploads über CLI

Das Hochladen von Dateien, die größer als 5 GB sind, mit der CLI erfordert mehrere Schritte, da sie das direkte Hochladen von Dateien, die größer als 5 GB sind, nicht unterstützt.

Stattdessen müssen Sie sie auf Ihrem lokalen Computer in Teile aufteilen und jeden Teil einzeln hochladen. AWS nennt dies "Multipart Upload".
In diesem Beispiel beschränken wir uns auf eine 10 GB große Datei, die nur in zwei Teile aufgeteilt werden muss.

1. Ermitteln Sie eine Upload-ID. Wir benötigen diese Upload-ID für jedes Teil, das wir in späteren Schritten hochladen.

$ uploadId=$(aws s3api create-multipart-upload \
    --bucket masv-archive \
    --key my-large-file.mp4 \
    --storage-class GLACIER \
    --query UploadId \
    --output text \
    --profile masv)

2. Laden Sie den ersten 5 GB großen Teil der Datei hoch.

$ head --bytes 1073741824 meine-große-datei.mp4 > meine-große-datei.mp4.part1
$ aws s3api upload-part \
    --bucket masv-archive \
    --key meine-große-datei.mp4 \
    --part-number 1 \
    --body meine-große-datei.mp4.part1 \
    ---upload-id "$uploadId" \
    --profile masv

Wir müssen uns den ETag-Wert in der Ausgabe merken:

{
    "ServerSideEncryption": "AES256",
    "ETag": "\"e5x5adm2pflee9ed4c3549862b2a5f2b\""
}

3. Laden Sie den letzten Teil der Datei hoch.

$ tail --bytes 1073741825 meine-große-datei.mp4 > meine-große-datei.mp4.part2
$ aws s3api upload-part \
    --bucket masv-archive \
    --key meine-große-datei.mp4 \
    --part-number 2 \
    --body meine-große-datei.mp4.part2 \
    --upload-id "$uploadId" \
    --profile masv

4. Schließen Sie den mehrteiligen Upload ab und bereinigen Sie ihn.

$ aws s3api complete-multipart-upload \
    --bucket my-archive \
    --key my-large-file.mp4 \
    --upload-id $upload_id \
    --multipart-upload '{"Parts":[{"ETag":"e5x5adm2pflee9ed4c3549862b2a5f2b","Part
Number":1}, {"ETag":"5e5xda2mfpel9ede4c534986ba225b2f","PartNumber":2} ]}' \ --profile masv $ rm meine-große-datei.mp4.part1 meine-große-datei.mp4.part2

Zu diesem Zeitpunkt ist die Datei sicher in S3 Glacier gespeichert.

Wie Sie sich denken können, ist dieses Beispiel für einen mehrteiligen Upload nicht der einfachste Weg, um große Dateien an S3 zu übertragen. Es ist auch nicht der schnellste Weg, nicht einmal für kleine Dateien.

Um die Leistung zu verbessern, können Sie die Größe der einzelnen Teile anpassen und mehrere Teile gleichzeitig hochladen, aber das würde den Rahmen dieses Beispiels sprengen.

Das mehrteilige Hochladen hat jedoch noch weitere Vorteile, z. B. die schnellere Behebung von Fehlern und die Wiederaufnahme von angehaltenen oder unterbrochenen Uploads.

S3 Glacier verwalten: Tipps und bewährte Praktiken

Sie haben also Ihre Dateien auf S3 Glacier hochgeladen. Super! Und was jetzt?

Bei MASV haben wir viel Erfahrung mit der Verwaltung einer Vielzahl von S3- und anderen Cloud-Instanzen. Hier sind einige unserer besten Tipps für die Verwaltung von S3 Glacier im Besonderen:

  • Verwendung eines Datei-Upload-Tools eines Drittanbieters mit S3-Integrationen ohne Code, wie z. B. MASV-Portalekann dazu beitragen, den S3-Upload-Prozess zu vereinfachen und zu beschleunigen, während die Benutzer bis zu 5 TB pro Datei auf einmal hochladen können.
  • Wie bereits erwähnt, wird im obigen Beispiel zwar die Verwaltungskonsole verwendet, doch wenn Sie über das technische Fachwissen verfügen, empfehlen wir die Verwaltung der gesamten AWS-Infrastruktur über AWS CLI oder mit IaC.
    • Mit diesen Methoden können Sie größere Dateien hochladen.
    • Wir empfehlen, noch einen Schritt weiter zu gehen und Ihre AWS Management Console als schreibgeschützt zu konfigurieren. Dadurch wird sichergestellt, dass ein einzelner Mitarbeiter keine potenziell katastrophalen Änderungen ohne die Genehmigung anderer Teammitglieder vornehmen kann.
    • Sie können Richtlinien für die Verwendung der Konsole in Notfällen aufstellen, die "Glasbruch" vorsehen.
Platzhalterbild
  • Idealerweise sollten Sie bei der Einrichtung und Konfiguration von S3 Glacier ein dreiköpfiges Team einsetzen, mindestens jedoch zwei Personen (eine einzige Person würde wahrscheinlich einen Engpass darstellen).
    • Teams, die an der Konfiguration von Cloud-Buckets arbeiten, sollten in der Lage sein, die Arbeit der anderen zu überprüfen.
    • Das Team kann für die Konfiguration und das Management verantwortlich sein, die Einhaltung von Vorschriften gewährleisten und eine Datenklassifizierung vornehmen, um sicherzustellen, dass die richtigen Daten im Archiv landen.
    • Die Aufgabe des Teams wird es sein, die Sicherheit, die Datenintegrität und die Kosten zu schützen.
  • Implementieren Sie einen geregelten Prozess, an dem mehrere Beteiligte beteiligt sind, wenn Sie Änderungen an Ihren AWS-Buckets vornehmen.
    • Dies trägt dazu bei, Konfigurationsabweichungen zu vermeiden, was bei der Verwendung der Verwaltungskonsole leichter möglich ist, da Sie etwas mit einem Klick ändern können (was später zu Problemen führen könnte).
    • Unter dem Gesichtspunkt der Einhaltung von Vorschriften müssen alle Änderungen an der Infrastruktur einen Änderungsmanagementprozess durchlaufen, der eine zweite Genehmigung erfordert.
  • Implementieren Sie einen reglementierten Prozess für die Datenaufnahme und erlauben Sie nur autorisierten Benutzern den Zugriff auf bestimmte Speicherbereiche (geben Sie beispielsweise normalen Geschäftsanwendern keinen Zugriff auf den kalten Speicher, da sie heiße Daten aufnehmen könnten, was zu unnötig teurem und zeitaufwändigem Datenabfluss führen würde).

MASV: Der einfache Weg zum Hochladen großer Dateien auf S3 Glacier

Denn Postproduktions-Workflows Wenn Daten an mehreren Orten gespeichert werden müssen (z. B. auf einem lokalen Gerätespeicher für die Videobearbeitung und in der Cloud für Backup und Archivierung), ist die Konfiguration von S3 Glacier (und das Hochladen von S3 zu Glacier) in der Regel Teil eines umfassenderen Einrichtungsprozesses für den Content-Ingest-Workflow, an dem sowohl IT- als auch Betriebsmitarbeiter beteiligt sind.

  • Das Einrichten, Konfigurieren und Verwalten von S3 Glacier innerhalb eines größeren Arbeitsablaufs erfordert jedoch Mitarbeiter, die in der Lage sind, eine Cloud-Infrastruktur aufzubauen und zu pflegen und gleichzeitig mehrere Speicherziele und Benutzer mit unterschiedlichen Regeln und Berechtigungen zu verwalten. Dies kann zu potenziell verheerenden Fehlkonfigurationen führen.
  • Die Mitarbeiter müssen auch in der Lage sein, Workflows einzurichten, um die Daten denjenigen im Unternehmen zugänglich zu machen, die über privilegierten Zugang verfügen.
  • Selbst wenn das alles erledigt ist, haben native Uploads auf S3 und S3 Glacier relativ strenge Dateigrößenbeschränkungen, können langsam sein und erfordern oft technisches Fachwissen, was Uploads unnötig zeitaufwändig machen kann.

Entwickler können diese Einschränkungen umgehen, indem sie monatelang einen eigenen Uploader für S3 erstellen - oder sie können MASV verwenden Zentraler Ingest als zentraler, sicherer Punkt für den Dateninput in die Cloud und den vernetzten On-Premise-Speicher und erspart Teams stundenlange Konfigurations- und Einrichtungszeiten.

Teams können MASV verwenden, um Uploads von Stakeholdern an mehrere Ziele gleichzeitig zu erleichtern, einschließlich einer Reihe von S3-Speicherklassen, ohne den Stakeholdern privilegierten Zugriff gewähren zu müssen. Wenn Sie eine Speicherklasse für eine MASV-Integration festlegen, schließen Sie Benutzerfehler aus und verringern das Risiko einer Überschreitung der Speicherkosten.

Für MASV anmelden und erhalten Sie jeden Monat kostenlose Daten, um Ihre Speicherabläufe zu flexibilisieren.

Große Videodateien vertrauensvoll versenden

Melden Sie sich für MASV an und beginnen Sie mit dem schnellen und sicheren Senden und Empfangen großer Dateien.