Kostengünstige Sicherungen mit AWS S3

Miguel Bebensee
14. Dezember 2020
AWS S3 ist ein vielfältig einsetzbarer Cloud Speicherdienst. In diesem Artikel beschreiben wir für Cloud-Einsteiger die Funktionsweise von S3 und wie Sie von AWS S3 als (ergänzenden) Backup-Speicher profitieren können.

AWS S3

Bei dem Amazon Simple Storage Service (AWS S3) handelt es sich um einen Cloud Objektspeicherservice, mit dem eine beliebige Menge an Daten skalierbar und sicher gespeichert werden kann. Wir nutzen AWS S3 in fast jedem Cloud-Projekt, um beispielsweise Anwendungsdaten zu speichern, Backups zu sichern oder Frontend-Anwendungen mit Hilfe von AWS CloudFront zu betreiben. Dabei lässt sich S3 einfach integrieren, auch in AWS-fremde Systeme.

Speicherklassen

Vereinfacht gesagt können sogenannte “Buckets” angelegt werden, in denen Objekte (Dateien) abgelegt werden können. Dabei kann für jedes Objekt flexibel eine der folgenden Speicherklassen gewählt werden:

S3 StandardS3 Standard-IAS3 One Zone-IAS3 Intelligent-TieringS3 GlacierS3 Glacier Deep Archive
LatenzniedrigniedrigniedrigniedrigMinuten bis Stunden12h (Standard), 48h (Bulk)
Zugriffevielewenigewenigevariabelkeinekeine
Redundanzmind. 3 AZsmind. 3 AZs1 AZmind. 3 AZsmind. 3 AZsmind. 3 AZs
Anmerkungengünstiger als Standard, jedoch Lesegebühren20 % günstiger als Standard-IAVerschiebt Objekte automatisch zwischen Standard und Standard-IAMindestspeicherdauer: 90 TageMindestspeicherdauer: 180 Tage
AnwendungsfälleAnwendungsdaten, Analysen und HostingSicherungenSekundäre SicherungskopienDaten mit unbekannten oder unvorhersagbaren Zugriffsmustern, bei denen ein Teil wenig angefragt wirdArchivierung, SicherungenLangzeitarchivierung

AZ = isolierte Standorte in einer Region, z. B. in Frankfurt

Bei Glacier und dem Glacier Deep Archive ist die Besonderheit, dass die Daten nicht unmittelbar abgerufen werden können. Um die Daten zum Beispiel herunterzuladen, müssen die Objekte erst angefragt werden. Dabei werden die Objekte für eine definierte Dauer in einer anderen Speicherklasse bereitgestellt. Je nach Dringlichkeit unterscheidet sich die Abrufgeschwindigkeit und damit die Kosten für das Wiederherstellen.

Lebenszyklen

Mit Hilfe von Lebenszyklen können automatische Übergänge zwischen den Speicherklassen oder ein automatischer Ablauf (Löschung) definiert werden. Beispielsweise könnten Sicherungen standardmäßig in die Speicherklasse Standard hochgeladen werden. In dieser Speicherklasse sind die Objekte jederzeit und unmittelbar verfügbar. Mithilfe eines Lebenszyklus kann definiert werden, dass die Sicherungen nach 30 Tagen automatisch in dem Glacier abgelegt werden. In der Speicherklasse Glacier sind die monatlichen Speicherkosten deutlich günstiger, dafür sind die Objekte nicht unmittelbar zugänglich und müssen erst angefragt werden.

Durch das Hinterlegen eines automatischen Ablaufs werden die Objekte nach der festgelegten Dauer automatisch entfernt. Beispielsweise könnten Sicherungen nach einem Jahr entfernt werden. Wenn Sie eine automatische Löschung definieren, dann sollten Sie Ihre Sicherungen automatisiert überwachen und prüfen. Durch den Lebenszyklus laufen die Objekte nach der definierten Dauer ab und werden entfernt. Standardmäßig interessiert es S3 wenig, ob auch regelmäßig neue Sicherungen hochgeladen werden oder ob diese überhaupt wiederherstellbar sind.

Zugriff auf AWS S3

Der Zugriff auf AWS S3 ist komfortabel. Die AWS CLI kann als Teil von Shell-Skripten verwendet werden, um von diversen Betriebssystemen Dateien und Verzeichnisse zu laden oder synchronisieren. Außerdem können Bibliotheken in diversen Programmiersprachen genutzt werden, um AWS Dienste zu verwenden.

Für den Zugriff werden Berechtigungen benötigt. Diese können sehr granular definiert werden. Beispielsweise kann definiert werden, dass eine Sicherungsanwendung nur in begrenzten Verzeichnissen (Bucket und Objekt-Prefix) Objekte ablegen darf und keine Lese- und Löschberechtigungen besitzt. An die Berechtigungen können weitere Bedingungen angehängt werden, wie z. B. die IP-Adresse des Clients.

Bei dem Zugriff von AWS Diensten oder Maschinen können häufig die Berechtigungen direkt zugewiesen werden. Für alle anderen können Nutzer mit Zugangsdaten generiert werden, die als Access-Key und Secret-Key in die Konfiguration, z. B. der AWS CLI hinterlegt werden.

Vorteile

Zu dem größten Vorteil von AWS S3 im Bereich von Sicherungen zählt, dass Sie mit wenig Aufwand Objekte skalierbar und redundant speichern. Diese (geografische) Redundanz ist häufig kostspielig oder wird vernachlässigt. Sie zahlen nur das, was Sie tatsächlich verwenden. Wenn Sie wenige hundert Gigabyte an Sicherungen vorhalten, bewegt sich die monatliche Abrechnung im Bereich von ein paar Cent bis Euro. Durch Automatismen wie Lebenszyklen oder eventbasierter Programmierung können Sie Ihre Sicherungen intelligent machen.

Nachteile

Durch die vielen Nutzungsmöglichkeiten, wie bei vielen AWS Diensten, ist das Preismodell von AWS S3 komplex. Bei der Schätzung Ihrer Betriebskosten müssen Sie nicht nur den genutzten Speicherplatz berücksichtigen, sondern z. B. auch die Anzahl der Operationen und die Datenübertragungen. AWS bietet einen Pricing Calculator, mit dem genauere Schätzungen erstellt werden können. Aus Erfahrungswerten ist die Speicherung und das Hochladen der Sicherungen sehr preiswert. Sollten Sie jedoch regelmäßig einige Terabyte an Sicherungen herunterladen, sollten Sie vorher Ihren von AWS ausgehenden Traffic mithilfe des Pricing Calculators schätzen.

Fazit

AWS S3 kann für viele Anwendungsfälle genutzt werden, um mit einem minimalem Entwicklungsaufwand Dateien skalierbar und sicher zu speichern. Dabei wird der Dienst nutzungsbasiert abgerechnet, daher können auch kleine Anwendungsfälle für wenige Cents an Betriebskosten betrieben werden. Die Objekte können je nach Anwendungsfall in unterschiedlichen Speicherklassen vorgehalten werden, die sich z. B. bei der Zugriffsgeschwindigkeit und den Betriebskosten unterscheiden. Außerdem können Automatismen genutzt werden, um Objekte automatisiert in andere Speicherklassen zu verschieben, zu entfernen oder eventbasierte Programme zu starten. Privilegien können feingranular und z. B. an Programme oder AWS-Dienste vergeben werden.

Durch die vielseitigen Nutzungsmöglichkeiten müssen die Betriebskosten z. B. mit dem Pricing Calculator geschätzt werden. Durch die Komplexität fällt Beginnern der Einstieg schwieriger, jedoch kann S3 auch einfach in AWS-fremden Umgebungen eingesetzt werden, z. B. bei der Sicherung von On-Premises Anwendungen.

Wie speichern Sie Sicherungen im Unternehmen und setzen Sie dabei Cloud-Dienste ein?

Newsletter abonnieren

Bleiben Sie auf dem Laufenden!