Einen neuen Cluster mit einem extern erstellten Snapshot erstellen - Amazon MemoryDB für Redis

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Einen neuen Cluster mit einem extern erstellten Snapshot erstellen

Wenn Sie einen neuen MemoryDB-Cluster erstellen, können Sie ihn mit Daten aus einer Redis-.rdb-Snapshot-Datei versorgen.

Informationen zum Seeding eines neuen MemoryDB-Clusters aus einem MemoryDB-Snapshot oder einem Redis-Snapshot finden Sie unter. ElastiCache Wiederherstellung aus einem Snapshot

Wenn Sie eine Redis-.rdb-Datei zum Seeding eines neuen MemoryDB-Clusters verwenden, können Sie Folgendes tun:

  • Geben Sie eine Anzahl von Shards im neuen Cluster an. Diese Zahl kann sich von der Anzahl der Shards im Cluster unterscheiden, der zur Erstellung der Snapshot-Datei verwendet wurde.

  • Geben Sie einen anderen Knotentyp für den neuen Cluster an — größer oder kleiner als der Knotentyp, der in dem Cluster verwendet wurde, der den Snapshot erstellt hat. Wenn Sie zu einem kleineren Knotentyps skalieren, stellen Sie sicher, dass der Speicher des neuen Knotentyps für Ihre Daten und den Redis-Overhead ausreicht.

Wichtig
  • Sie müssen sicherstellen, dass Ihre Snapshot-Daten die Ressourcen des Knotens nicht überschreiten.

    Wenn der Snapshot zu groß ist, hat der resultierende Cluster den Statusrestore-failed. In diesem Fall müssen Sie den Cluster löschen und von Neuem beginnen.

    Eine vollständige Liste der Knotentypen und Spezifikationen finden Sie unterMemoryDB-Knotentyp-spezifische Parameter.

  • Sie können eine .rdb-Redis-Datei nur mit serverseitiger Amazon-S3-Verschlüsselung (SSE-S3) verschlüsseln. Weitere Informationen finden Sie unter Schützen von Daten mithilfe serverseitiger Verschlüsselung.

Schritt 1: Erstellen Sie einen Redis-Snapshot auf einem externen Cluster

Um den Snapshot für das Seeding Ihres MemoryDB-Clusters zu erstellen
  1. Stellen Sie eine Verbindung zu Ihrer vorhandenen Redis-Instance her.

  2. Führen Sie entweder den Redis BGSAVE - oder den SAVE Vorgang aus, um einen Snapshot zu erstellen. Achten Sie auf den Speicherort der .rdb-Datei.

    BGSAVE ist asynchron und blockiert während der Verarbeitung keine anderen Clients. Weitere Informationen finden Sie unter BGSAVE auf der Redis-Website.

    SAVE ist synchron und blockiert andere Vorgänge, bis sie Verarbeitung abgeschlossen ist. Weitere Informationen finden Sie unter SAVE auf der Redis-Website.

Weitere Informationen zum Erstellen eines Snapshots finden Sie unter Redis-Persistenz auf der Redis-Website.

Schritt 2: Erstellen eines Amazon-S3-Buckets und -Ordners

Wenn Sie die Snapshot-Datei erstellt haben, müssen Sie sie in einen Ordner innerhalb eines Amazon S3 S3-Buckets hochladen. Hierzu müssen bereits ein Amazon-S3-Bucket und ein Ordner innerhalb dieses Buckets vorhanden sein. Wenn Sie bereits einen Amazon-S3-Bucket und Ordner mit den entsprechenden Berechtigungen besitzen, können Sie mit Schritt 3: Laden Sie Ihren Snapshot auf Amazon S3 hoch fortfahren.

So erstellen Sie einen Amazon-S3-Bucket
  1. Melden Sie sich bei der Amazon S3 S3-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/s3/.

  2. Führen Sie die Anweisungen zum Erstellen eines Amazon S3 Buckets unterErstellen eines Buckets im Benutzerhandbuch zu Amazon Simple Storage Service aus.

    Der Name Ihres Amazon-S3-Buckets muss DNS-konform sein. Andernfalls kann MemoryDB nicht auf Ihre Backup-Datei zugreifen. Die Regeln für die DNS-Konformität lauten:

    • Bucket-Namen müssen mindestens 3 und dürfen höchstens 63 Zeichen umfassen.

    • Die Namen müssen eine Folge aus einer oder mehreren Beschriftungen darstellen, die durch einen Punkt (.) getrennt sind, wobei jede Beschriftung:

      • mit einem Kleinbuchstaben oder einer Zahl beginnen.

      • mit einem Kleinbuchstaben oder einer Zahl beginnen.

      • Enthält nur Kleinbuchstaben, Zahlen und Bindestriche.

    • Er darf nicht als IP-Adresse (z. B. 192.0.2.0) formatiert sein.

    Wir empfehlen dringend, dass Sie Ihren Amazon S3 S3-Bucket in derselben AWS Region wie Ihr neuer MemoryDB-Cluster erstellen. Dieser Ansatz stellt sicher, dass die höchste Datenübertragungsgeschwindigkeit erreicht wird, wenn MemoryDB Ihre RDB-Datei aus Amazon S3 liest.

    Anmerkung

    Um Ihre Daten so sicher wie möglich zu halten, sollten Sie die Berechtigungen für Ihr Amazon-S3-Bucket so restriktiv wie möglich gestalten. Gleichzeitig müssen die Berechtigungen weiterhin zulassen, dass der Bucket und sein Inhalt für das Seeding Ihres neuen MemoryDB-Clusters verwendet werden können.

So fügen Sie einem Amazon S3 Bucket einen Ordner hinzu
  1. Melden Sie sich bei der Amazon S3 S3-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie den Namen des Buckets aus, in den die .rdb-Datei hochgeladen werden soll.

  3. Wählen Sie Create folder.

  4. Geben Sie einen Namen für den neuen Ordner ein.

  5. Wählen Sie Speichern.

    Notieren Sie sich sowohl den Bucketnamen als auch den Ordnernamen.

Schritt 3: Laden Sie Ihren Snapshot auf Amazon S3 hoch

Laden Sie jetzt die .rdb-Datei hoch, die Sie in Schritt 1: Erstellen Sie einen Redis-Snapshot auf einem externen Cluster erstellt haben. Sie laden sie in den Amazon-S3-Bucket und -Ordner hoch, die sie in Schritt 2: Erstellen eines Amazon-S3-Buckets und -Ordners erstellt haben. Weitere Informationen zu dieser Aufgabe finden Sie unter Objekte hochladen. Wählen Sie zwischen den Schritten 2 und 3 den Namen des von Ihnen erstellten Ordners aus.

So laden Sie Ihre .rdb-Datei in einen Amazon-S3-Ordner hoch
  1. Melden Sie sich bei der Amazon S3 S3-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie den Namen des Amazon-S3-Bucket aus, den Sie in Schritt 2 erstellt haben.

  3. Wählen Sie den Namen des Ordners aus, den Sie in Schritt 2 erstellt haben.

  4. Klicken Sie auf Hochladen.

  5. Klicken Sie auf Add files.

  6. Navigieren Sie zu der Datei oder den Dateien, die Sie hochladen möchten, und wählen Sie dann die Datei oder die Dateien aus. Halten Sie zur Auswahl mehrerer Dateien die Strg-Taste während der Auswahl der Dateinamen gedrückt.

  7. Klicken Sie auf Open.

  8. Vergewissern Sie sich, dass die richtige (n) Datei (en) auf der Upload-Seite aufgeführt sind, und wählen Sie dann Upload.

Notieren Sie den Pfad zu Ihrer .rdb-Datei. Wenn der Bucket-Name z. B. myBucket und der Pfad myFolder/redis.rdb lautet, geben Sie myBucket/myFolder/redis.rdb ein. Sie benötigen diesen Pfad, um den neuen Cluster mit den Daten in diesem Snapshot zu versorgen.

Weitere Informationen finden Sie unter Regeln zur Benennung von Buckets im Amazon Simple Storage Service-Benutzerhandbuch.

Schritt 4: Gewähren Sie MemoryDB Lesezugriff auf die .rdb-Datei

AWS Regionen, die vor dem 20. März 2019 eingeführt wurden, sind standardmäßig aktiviert. Sie können sofort mit der Arbeit in diesen AWS Regionen beginnen. Regionen, die nach dem 20. März 2019 eingeführt wurden, sind standardmäßig deaktiviert. Sie müssen diese Regionen aktivieren oder sich für sie anmelden, bevor Sie sie verwenden können, wie unter AWS Regionen verwalten beschrieben.

Gewähren Sie MemoryDB Lesezugriff auf die RDB-Datei

Um MemoryDB Lesezugriff auf die Snapshot-Datei zu gewähren
  1. Melden Sie sich bei der Amazon S3 S3-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie den Namen des S3-Buckets aus, in dem sich Ihre .rdb-Datei befindet.

  3. Wählen Sie den Namen des Ordners aus, in dem sich Ihre .rdb-Datei befindet.

  4. Wählen Sie den Namen Ihrer .rdb-Snapshot-Datei. Der Name der ausgewählten Datei erscheint oberhalb der Registerkarten oben auf der Seite.

  5. Wählen Sie die Registerkarte Berechtigungen.

  6. Wählen Sie unter Permissions (Berechtigungen) Bucket policy (Bucket-Richtlinie) aus und klicken Sie dann auf Edit (Bearbeiten).

  7. Aktualisieren Sie die Richtlinie, um MemoryDB die erforderlichen Berechtigungen zur Ausführung von Vorgängen zu gewähren:

    • Fügen Sie [ "Service" : "region-full-name.memorydb-snapshot.amazonaws.com" ] zu Principal hinzu.

    • Fügen Sie die folgenden Berechtigungen hinzu, die für das Exportieren eines Snapshots in den Amazon-S3-Bucket erforderlich sind:

      • "s3:GetObject"

      • "s3:ListBucket"

      • "s3:GetBucketAcl"

    Nachfolgend finden Sie ein Beispiel dafür, wie die aktualisierte Richtlinie aussehen könnte.

    { "Version": "2012-10-17", "Id": "Policy15397346", "Statement": [ { "Sid": "Stmt15399483", "Effect": "Allow", "Principal": { "Service": "us-east-1.memorydb-snapshot.amazonaws.com" }, "Action": [ "s3:GetObject", "s3:ListBucket", "s3:GetBucketAcl" ], "Resource": [ "arn:aws:s3:::example-bucket", "arn:aws:s3:::example-bucket/snapshot1.rdb", "arn:aws:s3:::example-bucket/snapshot2.rdb" ] } ] }
  8. Wählen Sie Speichern.

Schritt 5: Den MemoryDB-Cluster mit den.rdb-Dateidaten versorgen

Jetzt sind Sie bereit, einen MemoryDB-Cluster zu erstellen und ihn mit den Daten aus der RDB-Datei zu versorgen. Folgen Sie den Anweisungen unter, um den Cluster zu erstellen. Einen MemoryDB-Cluster erstellen

Die Methode, mit der Sie MemoryDB mitteilen, wo sich der Redis-Snapshot befindet, den Sie auf Amazon S3 hochgeladen haben, hängt von der Methode ab, mit der Sie den Cluster erstellen:

Füllen Sie den MemoryDB-Cluster mit den Daten der .rdb-Datei
  • Verwenden der MemoryDB-Konsole

    Erweitern Sie nach Auswahl der Redis-Engine den Bereich Advanced Redis settings und suchen Sie Import data to cluster. Geben Sie im Feld Seed-RDB-Datei-S3-Speicherort den Amazon-S3-Pfad für die Datei(en) ein. Wenn Sie mehrere .rdb-Dateien besitzen, geben Sie den Pfad für jede Datei in eine durch Kommas getrennten Liste ein. Der Amazon-S3-Pfad sieht etwa aus wie myBucket/myFolder/myBackupFilename.rdb.

  • Mit dem AWS CLI

    Verwenden Sie bei Einsatz der Operation create-cluster oder create-cluster den Parameter --snapshot-arns, um einen vollqualifizierten ARN für jede .rdb-Datei anzugeben. z. B. arn:aws:s3:::myBucket/myFolder/myBackupFilename.rdb. Der ARN muss in die Snapshot-Dateien aufgelöst werden, die Sie in Amazon S3 gespeichert haben.

  • Verwenden der MemoryDB-API

    Wenn Sie den CreateCluster oder den CreateCluster MemoryDB-API-Vorgang verwenden, verwenden Sie den Parameter, SnapshotArns um einen vollqualifizierten ARN für jede .rdb-Datei anzugeben. z. B. arn:aws:s3:::myBucket/myFolder/myBackupFilename.rdb. Der ARN muss in die Snapshot-Dateien aufgelöst werden, die Sie in Amazon S3 gespeichert haben.

Während der Erstellung Ihres Clusters werden die Daten in Ihrem Snapshot in den Cluster geschrieben. Sie können den Fortschritt überwachen, indem Sie sich die MemoryDB-Ereignismeldungen ansehen. Rufen Sie dazu die MemoryDB-Konsole auf und wählen Sie Ereignisse. Sie können auch die AWS MemoryDB-Befehlszeilenschnittstelle oder die MemoryDB-API verwenden, um Ereignismeldungen abzurufen.