Verwendung von Amazon S3 und AWS EC2 als Cloud-Backup-Speicher
>
Amazon bietet Rechen- und Speicherdienste in der Cloud an. Verschiedene AWS-Dienste können verwendet werden, um Backups in der Cloud zu speichern und die Datensicherheit zu gewährleisten, darunter Amazon EC2 und Amazon S3. Diese Dienste unterscheiden sich jedoch in ihrer Funktionsweise und darin, welche Backup-Daten sie speichern können und wie.
In diesem Blogbeitrag wird erläutert, wie EBS-Volumes, die an Amazon EC2-Instanzen und Amazon S3 angehängt sind, zum Speichern von Backup-Daten verwendet werden können.
Hinweis: Dieser Beitrag ist kein vollständiger Vergleich zwischen EC2 und S3, da EC2 eine Cloud-Computing-Plattform ist, die zum Ausführen von Workloads in der Cloud verwendet wird. Stattdessen konzentriert er sich auf Elastic Block Storage (EBS), das zur Speicherung von EC2-Daten verwendet wird, und vergleicht es mit S3.
Warum AWS für das Backup verwenden?
Gemäß der 3-2-1-Regelsollten Sie mindestens drei Kopien wichtiger Daten aufbewahren, von denen eine außerhalb des Standorts gespeichert werden sollte. Cloud-Speicher, einschließlich Amazon S3 und EBS-Volumes in Amazon EC2-Instanzen, können als Speicher außerhalb des Standorts für Sicherungsdaten verwendet werden. Aber wie und wann sollten sie eingesetzt werden? Beginnen wir damit, uns anzusehen, was die beiden AWS-Dienste bieten.
- Amazon EC2 (Elastic Cloud Computing) EC2-Instanzen sind Virtuelle Maschinen, die in der AWS-Cloud auf AWS-Servern und in AWS-Rechenzentren ausgeführt werden. Der Container, in dem die Instanzdaten gespeichert werden, wird als EBS-Volume (Elastic Block Storage) bezeichnet und entspricht einer virtuellen Festplatte.
EBS-Volumes werden als Blockspeicher klassifiziert, da die Grundeinheit des Speichers ein Block ist. EBS-Volumes sind mit Instanzen verbunden und speichern die Primärdaten dieser Instanzen. Für EBS-Volumes können Sie zwischen Festplatten (HDD) und Solid-State-Laufwerken (SSD) wählen.
- Amazon S3 (Simple Storage Service) ist der Objektspeicherdienst von AWS. Der zur Speicherung von Daten verwendete Container wird als Bucket bezeichnet. Daten werden in Buckets als Objekte und nicht als Blöcke gespeichert. Die objektbasierte Speicherung ermöglicht die Verwendung von Versionierung, eine nützliche Funktion für die Datenwiederherstellung.
Verwendung von Amazon EC2 für die Wiederherstellung von Workloads
Amazon EC2-Instanzen können für die Cloud-Wiederherstellung lokaler Virtueller Maschinen verwendet werden, wenn ein lokales Rechenzentrum nicht mehr verfügbar ist. Um auf ein solches Szenario vorbereitet zu sein, sollten Sie lokale Workloads mithilfe von Backups oder Replikaten als Teil eines Disaster-Recovery-Plans
in die Cloud migrieren. In einem Katastrophenszenario ist die Replikation auf EC2 Backups vorzuziehen. Die Wiederaufnahme des Betriebs von Anwendungen und Servern mithilfe von Replikaten erfordert weniger Zeit als die Verwendung von Backups (d. h. geringere RTO). Beispielsweise können Sie Datenbanken von Servern oder VMs vor Ort auf EC2-Instanzen replizieren und fast sofort einen Failover durchführen , wenn Sie das Wiederherstellen nach einem Ausfall benötigen.
EBS-Volumes, die von EC2-Instanzen verwendet werden, bieten einen schnellen Blockspeicher. Im Folgenden finden Sie einige Vor- und Nachteile der Verwendung von EBS-Volumes zum Backup und zur Wiederherstellung.
- Vorteile: EBS kann für Workloads mit hoher Leistung verwendet werden. Daten können mit hoher Geschwindigkeit von einem EBS-Volume auf ein anderes kopiert werden. Mit EBS-Volumes von EC2-Instanzen können Sie außerdem eine bessere Leistung der Datenbank erzielen als mit Amazon S3-Speicher.
Wenn Sie Daten von Ihren lokalen (vor Ort-)Servern übertragen müssen, ist die Internetverbindungsgeschwindigkeit ein Engpass, und in diesem Fall kann die Verwendung von Amazon S3 sinnvoller sein.
- Nachteile: Mit Ausnahme der Verwendung von EBS-Volumes zum Sichern anderer EBS-Volumes ist EBS als bevorzugtes Ziel für Backups zu teuer, insbesondere für andere Workloads als EC2-Instanzen.
EC2-Instanz-Datensicherheit in AWS
Amazon EC2-Instanzen und die mit ihnen verbundenen EBS-Volumes werden in AWS nicht automatisch gesichert. Die Daten werden nur auf Servern innerhalb derselben Verfügbarkeitszone in Amazon-Rechenzentren repliziert, um im Falle eines Ausfalls der Festplatte oder des Servers (Hardwareausfall) die Redundanz des Rechenzentrums zu gewährleisten.
Obwohl keine Backup-Funktionalität verfügbar ist, bietet AWS drei native Methoden zum Schutz von Daten in EC2-Instanzen:
- Erstellen von EBS-Schnappschüssen. Dies ist eine einfache Möglichkeit, Wiederherstellungspunkte für EBS-Volumes (einschließlich verschlüsselter EBS-Volumes) zu erstellen. Schnappschüsse können verwendet werden, um Daten auf neuen EBS-Volumes wiederherzustellen. Bei Verwendung von logischen Volume-Managern wie LVM oder mdadm, sollten Sie ein Backup auf der Volume-Manager-Ebene durchführen, anstatt EBS-Schnappschüsse zu verwenden, um die Datenkonsistenz und Kohärenz der Unterkomponenten-Volumes zu gewährleisten. Beachten Sie, dass beim Wiederherstellen von EBS-Volumes mithilfe von Schnappschüssen diese EBS-Volumes auf einer vorbereiteten EC2-Instanz gemountet werden müssen.
- Erstellen eines Amazon Machine Image (AMI). Ein AMI ist ein Image, das das Betriebssystem, alle Konfigurationseinstellungen und die für den Betrieb der Amazon EC2-Instanz erforderlichen Daten enthält. Mit einem AMI können Sie eine neue Amazon EC2-Instanz auf Basis dieses AMI erstellen. Dieser Ansatz wird verwendet, um Amazon EC2-Instanzen wiederherzustellen und zu klonen. Beachten Sie, dass Sie zunächst eine laufende EC2-Instanz stoppen und dann ein neues AMI erstellen sollten.
Der Vorteil dieser Methode gegenüber der Verwendung von EBS-Schnappschüssen besteht darin, dass die gesamte EC2-Instanz wiederhergestellt wird und nicht nur EBS-Volumes (die nach dem Wiederherstellungsprozess manuell auf einer erstellten EC2-Instanz gemountet werden müssen). Die Konfiguration von AMI-Images für die Wiederherstellung nimmt mehr Zeit in Anspruch, funktioniert aber gut in Bezug auf Wiederherstellung und Skalierbarkeit.
- Kopieren einer EC2-Instanz nach S3. Das Kopieren von auf EBS-Volumes gespeicherten Daten in Amazon S3-Buckets ist eine alternative Methode zur Datensicherheit in EC2-Instanzen. Da Amazon S3 ein objektbasierter Speicher und Amazon EBS ein Blockspeicher ist, ist FUSE (Filesystem in Userspace) erforderlich, um Dateien in S3-Buckets zu lesen/schreiben. FUSE kann auf dem Betriebssystem installiert werden, das auf einer Amazon EC2-Instanz, einer Virtuellen Maschine und einem physischen Computer ausgeführt wird, um auf Amazon S3-Buckets zuzugreifen.
Was jedoch die Datenkonsistenz angeht, kann das Kopieren von Dateien, die von Anwendungen (z. B. Datenbanken) verwendet werden, nach S3 zu Datenbeschädigungen führen.
Verwendung von Amazon S3 für die Datenwiederherstellung
Amazon S3 bietet eine Versionierungsfunktion für Objekte, die in Buckets gespeichert sind. Standardmäßig ist die Versionierung in Amazon S3 deaktiviert, Sie können diese Funktion jedoch ganz einfach aktivieren. Wenn die Versionierung aktiviert ist, bleiben frühere Objektversionen nach dem Schreiben von Änderungen erhalten. Änderungen werden als neue Version des Objekts gespeichert, und gelöschte Objekte werden nicht dauerhaft entfernt.
Die Verwendung von Amazon S3 zum Speichern von Versionen hat Vor- und Nachteile.
- Vorteile: Amazon S3 bietet verschiedene Speichersysteme zu unterschiedlichen Preisen, je nachdem, wie häufig auf die Daten zugegriffen werden muss und wie lange die Abrufzeiten sind. Amazon bietet außerdem eine flexible Richtlinie für die Nutzung des Amazon S3-Speichers, wodurch S3 für viele Nutzer erschwinglich ist. Lesen Sie mehr über Amazon S3, um zu erfahren, wie AWS S3 funktioniert.
Amazon S3 unterstützt auch die Objektsperre, um die Unveränderlichkeit des Speichers zu gewährleisten und Objekte vor unerwünschten Änderungen oder Löschungen zu schützen. Dieser Speicher wird auch als „ <” (einmal schreiben, viele lesen) Wenn Sie Dateien nicht manuell von der Weboberfläche von AWS kopieren möchten, benötigen Sie spezielle Tools. Darüber hinaus erhebt AWS Gebühren für Datenübertragungen von Amazon S3 (diese Gebühren hängen von der von AWS übertragenen Datenmenge und der verwendeten Speicherebene ab).
Verwendungsfälle für die Datensicherheit mit Amazon S3
Es gibt viele Verwendungsfälle für die Verwendung von Amazon S3 als Ziel für Backups. Ziehen Sie diesen Speicher in Betracht für:
- Kopien von Daten, die auf EBS-Volumes gespeichert sind. Wie oben erwähnt, können Sie EBS-Volumes, die von EC2-Instanzen verwendet werden, in den Amazon S3-Speicher kopieren.
- Kopieren von Daten zwischen S3-Buckets.
- Backups von Daten, die auf physischen Computern und Virtuellen Maschinen gespeichert sind, die vor Ort ausgeführt werden.
So gewährleisten Sie die Datensicherheit in Amazon S3
Verschiedene AWS-Tools können verwendet werden, um die Datensicherheit in Amazon S3 zu gewährleisten. Aktivieren und konfigurieren Sie die Objektversionierung, um verschiedene Versionen von Objekten in S3-Buckets für die Wiederherstellung zu speichern, und sehen Sie sich die folgenden verfügbaren Tools an:
-
Befehlszeilentools. Kopieren Sie Objekte von einem S3-Bucket in einen anderen mit AWS SDK oder anderen Tools. Andere beliebte Befehlszeilentools für Linux und Windows wie s3cmd, s4cmd und AWS CLI können ebenfalls verwendet werden. Installieren Sie eines dieser Tools, um Daten zu und von S3-Buckets zu übertragen. Sie können diese Befehlszeilentools auch verwenden, um Daten zwischen Buckets zu kopieren und so für Wiederherstellungszwecke zu sichern.
Die Verwendung von Skripten für Backups in S3 ist ein gängiger Ansatz, erfordert jedoch einen hohen Aufwand. Dieser Ansatz eignet sich für Datensicherungen aus S3-Buckets, EC2-Instanzen sowie physischen und virtuellen Maschinen.
- Vorteile CLI-Tools und Skripte sind kostenlos verfügbar.
- Nachteile Die Konfiguration des Datenkopierens mithilfe von Skripten ist kompliziert. Darüber hinaus sollten Sie vor jedem Kopiervorgang die Ausführung von Anwendungen und die Verwendung von Funktionen wie Volume-Schnappschüssen innerhalb von Betriebssystemen beenden, um die Datenkonsistenz zu gewährleisten.
- AWS Storage GatewayMit AWS Storage Gateway können Sie Daten von vor Ort befindlichen physischen und virtuellen Maschinen in Amazon S3-Buckets übertragen.
AWS Storage Gateway ist ein hybrider Speicherdienst, der als VM bereitgestellt wird und Caching-Optionen für einen schnelleren Zugriff auf Dateien bietet. Es gibt drei Arten von AWS Storage Gateway: ein Datei-Gateway, ein Volume-Gateway und ein Band-Gateway.
Nach dem Bereitstellen des Storage Gateway können Standard-Freigabeprotokolle wie SMB, NFS und iSCSI für den Zugriff auf Amazon S3-Speicher verwendet werden. AWS Storage Gateway wird als virtuelle Appliance für VMware vSphere und Hyper-V-Plattformen bereitgestellt und kann kostenlos heruntergeladen werden, wenn Sie über ein Abonnement für die Nutzung von Amazon S3 verfügen.
Lösungen für den direkten Backup-Prozess in AWS
Eine effizientere und zuverlässigere Methode zur Datensicherheit in AWS ist das Bereitstellen einer Lösung für die Datensicherheit von Drittanbietern, die eine Integration mit AWS bietet, wie beispielsweise NAKIVO Backup & Replication. Die NAKIVO-Lösung ist eine universelle Lösung für die Datensicherheit, die Folgendes unterstützt:
- Amazon EC2-Backup. Konsistente Backups und Wiederherstellungen von EC2-Instanzen (auf EBS und S3). Sie müssen keine neuen EC2-Instanzen erstellen und konfigurieren und wiederhergestellte EBS-Volumes nicht manuell mounten. Sie können mit der Wiederherstellung von Dateien und Anwendungsobjekten beginnen, sobald Sie diese benötigen.
- Amazon EC2-Replikation. Replizieren Sie wichtige EC2-Instanzen in AWS und verwenden Sie EC2-Replikate entsprechend Ihren Szenarien der Datenwiederherstellung und Ihrer Disaster Recovery-Pläne, um eine hohe RTO zu erzielen.
- Backup in Amazon S3. Backup für Microsoft Hyper-V- und VMware vSphere-VMs, physische Windows- und Linux-Maschinen sowie EC2-Instanzen in Amazon S3-Buckets. Die direkte Sicherung in Amazon S3-Buckets wird unterstützt, ohne dass AWS Storage Gateway bereitgestellt werden muss. Ein spezielles Amazon S3-Backup-Repository wird in einem S3-Bucket erstellt.
- Backup in Amazon S3. Sie können ein Backup-Repository auf einer EC2-Instanz erstellen, eine Netzwerkverbindung zwischen Ihrem Rechenzentrum und dem von Ihren EC2-Instanzen verwendeten Netzwerk konfigurieren und Daten auf der EC2-Instanz sichern.
NAKIVO Backup & Replication bietet eine Reihe nützlicher Funktionen, mit denen sich Backups auf AWS schneller, bequemer und zuverlässiger konfigurieren lassen. Zu diesen Funktionen gehören:
- Amazon S3-Speicher mit Support für Unveränderlichkeit kann als Ziel für das Backup verwendet werden, um vor unerwünschten Datenänderungen zu schützen, unabhängig davon, ob diese versehentlich oder durch Ransomware verursacht wurden.
- Site Recovery ermöglicht Ihnen die Automatisierung und Orchestrierung von Disaster-Recovery-Workflows für EC2-Instanzen und andere virtuelle Umgebungen in Abhängigkeit von definierten Bedingungen und Aktionen. Komplexe Disaster-Recovery-Szenarien lassen sich mit der Standortwiederherstellung einfach umsetzen.
- Job-Planung. Backupaufträge können so geplant werden, dass sie automatisch ausgeführt werden. Flexible Aufbewahrungseinstellungen ermöglichen es Ihnen, mehrere Wiederherstellungspunkte für verschiedene Wiederherstellungsszenarien zu speichern.
- Application-Aware Backups sind wichtig für die Datenkonsistenz. NAKIVO Backup & Replication nutzt Funktionen wie VSS (Volume Shadow Copy) auf Windows-basierten Rechnern, um die Datenkonsistenz zu gewährleisten, wenn Anwendungen (z. B. ein Datenbankserver, Active Directory Server usw.) Schreibvorgänge in Dateien durchführen.