Wie man AWS EC2-Backups mit EBS-Snapshots verarbeitet

Amazon Web Services (AWS)-Instanzen EC2 sind eine bequeme Möglichkeit, Workloads auf virtuellen Maschinen (VM) auszuführen. Aber was passiert, wenn der Speicher, an den sie angeschlossen sind, ausfällt oder beschädigt wird? Es ist an der Zeit, über ein AWS EC2-Backup zu sprechen.

Wenn Sie eine EC2-Instanz sichern, werden Sie über Elastic Block Store (EBS)-Volumes sprechen, genauer gesagt über EBS-Snapshots. EC2 speichert alle Volumes mit EBS und das Erstellen eines EBS-Snapshots ist eine großartige Möglichkeit, Ihre Daten zu sichern.

In diesem Tutorial erfahren Sie, wie Sie EBS-Snapshots mit der AWS Management Console und der AWS-Befehlszeilenschnittstelle (AWS CLI) erstellen.

Wenn Sie EC2-Backups/EBS-Snapshots einfach verwalten möchten, sollten Sie unbedingt Veeam Backup für AWS ausprobieren. Veeam kümmert sich nicht nur um das Erstellen von EBS-Snapshots, sondern verwaltet auch die Replikation, überwacht intelligent geänderte Blöcke und stellt eine öffentliche API bereit.

Voraussetzungen

Dieser Artikel wird ein Tutorial sein. Wenn Sie Schritt für Schritt folgen möchten, benötigen Sie Folgendes:

Die Erstellung von IAM-Richtlinien und die Berechtigungen für die AWS Application Programming Interface (API) fallen nicht in den Rahmen dieses Artikels. Beachten Sie immer das Prinzip des geringsten Privilegs, wenn Sie Konten zur Ausführung von Aktionen autorisieren.

  • Die AWS CLI installiert und mit Ihrem IAM-Benutzer auf Ihrem lokalen Rechner authentifiziert.

Erstellen eines EBS-Snapshots aus der AWS Management Console

Es gibt verschiedene Möglichkeiten, EBS-Snapshots zu erstellen. Fangen wir an, Snapshots über die AWS-Managementkonsole zu erstellen.

EBS-Snapshots können Speicherkosten verursachen. Weitere Informationen zur Berechnung der EBS-Abrechnung finden Sie in der AWS-Dokumentation.

Zum Navigieren zur EC2-Konsole

Gehen Sie wie folgt vor:

  1. Öffnen Sie die AWS Management Console und melden Sie sich mit Ihren AWS (Root) oder IAM-Kontozugangsdaten an.

2. Klicken Sie in der oberen linken Ecke Ihres Bildschirms auf Dienste.

AWS Management Console showing services drop-down menu.

3. Wählen Sie aus dem Dropdown-Menü Dienste EC2 aus. Die Option EC2 befindet sich in der Kategorie Compute, wie unten gezeigt. Diese Option führt Sie zur EC2-Konsole.

AWS Management Console showing services drop-down menu and EC2 selection.

Sie sollten sich nun auf dem Resourcen-Dashboard befinden. Das Resourcen-Dashboard bietet einen schnellen Überblick über die EC2-bezogenen Ressourcen, die in Ihrer ausgewählten Region eingerichtet sind. Im folgenden Screenshot sehen Sie, dass das Resourcen-Dashboard dieses Tutorials für den angemeldeten Benutzer in der Region US East (N. Virginia) folgende Ressourcen angibt.

EC2 Console Resources Dashboard showing established resources.

Erstellen eines EBS-Snapshots in der EC2-Konsole

Sobald Sie zur EC2-Konsole navigiert haben und Ihre erwartete Region anzeigen, ist es Zeit, einen EBS-Snapshot (AWS EC2-Backup) zu erstellen. Gehen Sie dazu wie folgt vor:

  1. Wählen Sie Snapshots unter Elastic Block Store im Navigationsbereich auf der linken Seite des Bildschirms aus.
EC2 Console showing Snapshots selection.

2. Wählen Sie als nächstes Snap erstellen oben auf Ihrem Bildschirm aus. Die Auswahl von Snap erstellen bringt Sie zu einem Menü, das zusätzliche Eingaben erfordert.

Snapshots section of the EC2 Console showing Create Snapshot selection.

3. Auf der Seite Snap erstellen setzen Sie den Ressourcentyp unter dem Feld Ressourcentyp auswählen auf Volume. Durch das Festlegen des Ressourcentyps auf Volume teilen Sie AWS mit, dass ein Snapshot eines einzelnen EBS-Volumes erstellt werden soll, nicht aller Volumes, die an die EC2-Instanz angehängt sind.

Create Snapshot menu showing Volume and Instance selection.

4. Wählen Sie als Nächstes die Volume-ID des EBS-Volumes, das gesnappt werden soll, aus dem Dropdown-Menü aus. Die Volume-ID ist ein eindeutiger Bezeichner, der jedem EBS-Volume zugewiesen wird. Im folgenden Screenshot sehen Sie, dass die Volume-ID dieses Tutorials vol-0b4f056a0b709240a ausgewählt ist.

Create Snapshot menu showing completed Volume field.

5. Geben Sie jetzt eine Beschreibung für Ihren EBS-Snapshot im Feld Beschreibung ein. Das Feld Beschreibung ist optional und kann bis zu 255 Zeichen enthalten.

Diese Beschreibung wird später als Eigenschaft des EBS-Snapshots angezeigt. In diesem Tutorial wird Volume-Snapshot für ATA-Blog als Beschreibung verwendet.

Create Snapshot menu showing the completed Description field.

6. Als nächstes können Sie Ihren EBS-Snapshot mit optionalen Schlüssel/Wert-Paaren markieren. Tags sind eine leistungsstarke Möglichkeit, Ihre Ressourcen in AWS zu verwalten und zu organisieren. In diesem Tutorial werden Tags verwendet, die einen gängigen Anwendungsfall für einen Server veranschaulichen.

Weitere gängige Tags sind Name, Besitzer, Umgebung und Zweck.

Create Snapshot menu showing completed Tag field.

7. Klicken Sie nun auf die Schaltfläche Snap erstellen, um den EBS-Snapshot zu erstellen.

Create Snapshot menu showing Create Snapshot selection.

In diesem Tutorial wurde das Feld Verschlüsselt nicht behandelt. EBS-Snapshots, die aus unverschlüsselten EBS-Volumes erstellt wurden, können während der EBS-Snapshot-Erstellung nicht verschlüsselt werden. Um einen EBS-Snapshot aus einem unverschlüsselten EBS-Volume zu verschlüsseln, müssen Sie zuerst den unverschlüsselten EBS-Snapshot abschließen, den unverschlüsselten EBS-Snapshot kopieren und die gewünschte Verschlüsselung anwenden. Snapshots, die von verschlüsselten Volumes erstellt werden, sind automatisch verschlüsselt.

8. Wenn abgeschlossen, zeigt Ihnen die EC2-Konsole die folgende Erfolgsmeldung an. Schließen Sie die Meldung, indem Sie Schließen auswählen.

Message indicating success Snapshot Create Request.

Sie sollten nun den EBS-Snapshot in der Konsole sehen, mit einem ausstehenden Status. Dieser Status bleibt bestehen, bis alle modifizierten EBS-Volumenblöcke auf Amazon S3 übertragen wurden.

Snapshots section of the EC2 Console showing pending snapshot.

Anfangs dauert es länger, EBS-Snapshots zu erstellen, da es sich um vollständige Backups handelt, im Gegensatz zu nachfolgenden inkrementellen Backups. Wenn es so aussieht, als würde der Snapshot länger dauern als er sollte, lösen Sie eine Aktualisierung des Status aus, indem Sie das Aktualisierungssymbol oben rechts auf Ihrem Bildschirm verwenden.

Nachdem der Snapshot abgeschlossen ist, sehen Sie untenstehend einen Status von abgeschlossen.

Snapshots section of the EC2 Console showing completed snapshot.

Sie haben jetzt ein AWS EC2-Backup erstellt!

Erstellen eines EBS-Snapshots mit der AWS CLI

In dem letzten Abschnitt haben Sie einen EBS-Snapshot mithilfe der webbasierten Konsole von AWS erstellt, aber das ist nicht der einzige Weg, um dies zu tun! Sie können auch eine EC2-Instanz sichern, indem Sie einen Snapshot über die AWS CLI erstellen.

Um Ihren Snapshot mit der AWS CLI zu erstellen, vorausgesetzt, dass die AWS CLI installiert und mit Ihrem Konto authentifiziert ist:

  1. Öffnen Sie eine Eingabeaufforderung oder eine PowerShell-Konsole auf Ihrem Windows-Computer

2. Führen Sie den Befehl aws ec2 describe-volumes mit dem Parameter --query aus, um eine Liste der Instanzen und Volumen-IDs auszugeben. Notieren Sie sich die Volumen-ID, die Sie sichern möchten.

aws ec2 describe-volumes --query 'Volumes[*].Attachments[].{VolumeID:VolumeId,InstanceID:InstanceId}' --output text

3. Führen Sie den Befehl aws ec2 create-snapshot mit den folgenden Parametern aus:

  • volume-id – die eindeutige Volumen-ID des EBS-Volumes, das Sie sichern möchten
  • description – die Beschreibung, die Sie auf das Backup anwenden möchten
  • tag-specifications – die Tags, die Sie dem Backup hinzufügen möchten

Die folgende Befehl erstellt eine Momentaufnahme des angegebenen Volumens auf der rechten Seite mit dem --volume-id-Parameter und der Beschreibung „Volume Snapshot for ATA Blog via the AWS CLI“ sowie zwei Tags: Name: FileServer01 und Zweck: Unternehmensdateispeicher.

# Stellen Sie sicher, dass Sie Ihre Volumen-ID einfügen
aws ec2 create-snapshot --volume-id <your volume ID> --description 'Volume Snapshot for ATA Blog via the AWS CLI' --tag-specifications 'ResourceType=snapshot,Tags=[{Key=Name,Value=FileServer01},{Key=Purpose,Value=Enterprise File Storage}]' 
AWS CLI output showing successful command output.

AWS ermöglicht es Ihnen, das Standardausgabeformat der AWS CLI-Befehle basierend auf Benutzervorlieben zu konfigurieren. Die Ausgabeformatauswahl umfasst JSON, YAML, YAML-Stream, Text und Tabelle. Die Ausgabe Ihres Befehls hängt von der Konfiguration Ihrer AWS CLI ab und kann sich von der oben angezeigten Ausgabe unterscheiden.

4. Überprüfen Sie nun den Status der Momentaufnahme mit dem Befehl aws ec2 describe-snapshots, indem Sie die ID der Momentaufnahme dem Parameter --snapshot-id übergeben. Finden Sie die Momentaufnahme-ID aus dem im Schritt 2 zurückgegebenen SnapshotID-Eigenschaft.

Wenn Sie die Momentaufnahme-ID nicht kennen, durchsuchen Sie alle Momentaufnahmen mit aws ec2 describe-snapshots --owner self.

# Stellen Sie sicher, dass Sie Ihre Momentaufnahme-ID einfügen
aws ec2 describe-snapshots --snapshot-id <your snapshot ID>

Letztendlich sollte der Befehl describe-snapshots eine Fortschritt-Anzeige von 100% und einen Status von abgeschlossen wie unten gezeigt zurückgeben.

AWS CLI output showing completed EBS Snapshot.

Gut gemacht! Sie haben gerade programmgesteuert eine EBS-Momentaufnahme mit der AWS CLI erstellt!

Nächste Schritte

In diesem Tutorial haben Sie gelernt, wie Sie mit Hilfe der webbasierten AWS-Konsole und des programmatischen AWS CLI Backups von Amazon EC2-Instanzen mit EBS-Snapshots erstellen können.

Wenn Sie mit dem in diesem Tutorial erstellten Snapshot fertig sind, löschen Sie ihn bitte, um keine Gebühren zu verursachen!

Um noch weiter zu gehen, wie wäre es mit dem Versuch, eine EC2-Instanz wiederherzustellen? ?

Source:
https://adamtheautomator.com/aws-ec2-backup/