In diesem Dokument wird eine Architektur für die Migration von Redis-kompatiblen Quellen wie Redis Open Source (Redis OSS), AWS ElastiCache und Azure Cache für Redis zur vollständig verwalteten Redis Enterprise Cloud in Google Cloud mithilfe der Redis Input and Output Tool (RIOT) Live-Migrationsdienst beschrieben. Dieses Dokument richtet sich an Datenbankarchitekten, Datenbankadministratoren und Datenbankentwickler, die von Redis-kompatiblen Quellen zu einer vollständig verwalteten Redis Enterprise Cloud migrieren möchten.
Redis Enterprise Cloud ist eine vollständig verwaltete Redis-Lösung für Unternehmen zur Unterstützung Ihrer geschäftskritischen Anwendungen. Im Vergleich zu Redis-kompatiblen Quellen bietet es eine verbesserte Skalierbarkeit, Verfügbarkeit, Sicherheit und betriebliche Effizienz. Mit dem kostenlosen Befehlszeilendienstprogramm RIOT können Sie Ihre Daten ohne Dienstunterbrechung oder Ausfallzeit von Redis zu Redis Enterprise Cloud migrieren.
Architektur
Das folgende Diagramm zeigt die Migrationsarchitektur:
Im Diagramm wird der RIOT Live Migration Service verwendet, um Redis-kompatible Quellen zu Redis Enterprise Cloud zu migrieren.
Die Architektur enthält die folgenden Komponenten:
- Quelle: Redis-kompatible Quellen wie Redis OSS, AWS ElastiCache und Azure Redis.
- Ziel: Redis Enterprise Cloud, die in einer von Redis verwalteten VPC ausgeführt wird.
- Migration Service: RIOT wird auf virtuellen Compute Engine-Maschinen (VMs) ausgeführt.
Verwendete Produkte
In dieser Referenzarchitektur werden die folgenden Google Cloud- und Drittanbieterprodukte verwendet:
- Compute Engine: Ein sicherer und anpassbarer Computing-Dienst, mit dem Sie virtuelle Maschinen in der Infrastruktur von Google erstellen und ausführen können.
- RIOT Live-Migration: Ein kostenloses Befehlszeilendienstprogramm zum Abrufen von Daten in und aus Redis.
- Redis Enterprise Cloud in Google Cloud: Eine vollständig verwaltete Redis-Lösung für Unternehmen zur Unterstützung Ihrer geschäftskritischen Anwendungen.
Anwendungsfall
Redis bietet Latenzen von weniger als einer Millisekunde, erweiterte Unterstützung für Datenstrukturen, Ausfallsicherheit und Open-Source-Portabilität. Es kann jedoch schwierig sein, selbstverwaltete Redis-kompatible Quellen zu skalieren, um den anspruchsvollen Arbeitslasten von Unternehmen gerecht zu werden und gleichzeitig extrem niedrige Latenzen beizubehalten. Wenn Sie das Potenzial Ihres selbstverwalteten Redis-Clusters erschöpfen, kann die Skalierung schwierig sein. Es ist zeitaufwendig und fehleranfällig, eine hochverfügbare Lösung zu entwerfen und die Replikation zu verwalten. Die Skalierung bringt auch logistische Herausforderungen und Kosten im Zusammenhang mit der Hardwareverwaltung, dem Patching und den Upgrades mit sich.
Redis Enterprise Cloud lässt sich vollständig in Google Cloud einbinden, um Ihnen einen Echtzeit-Datenbankdienst zum Ausführen, Skalieren und Verwalten von Redis bereitzustellen. Redis Enterprise Cloud bietet einen Open-Source-Kern, vollständige Funktionalität und Sicherheit für Unternehmen, marktführende Leistung, Skalierbarkeit und Verfügbarkeit die geschäftskritische Anwendungen erfordern. Redis Enterprise Cloud bietet eine Latenz von weniger als einer Millisekunde, ein Failover im einstelligen Sekundenbereich und eine Betriebszeit von 5 Neunen.
Designalternativen
RIOT bietet eine flexible Migrationslösung in und aus Redis. In den folgenden Abschnitten werden mögliche Designalternativen für diese Architektur vorgestellt. Die Alternativen verursachen entweder Ausfallzeiten oder erfordern, dass sich die Zieldatenbank in einem flexiblen (oder Jahrestarif)-Abo von Redis befindet.
RDB-Snapshots
Mit einem RDB-Snapshot (Redis Database) können Sie Ihre Daten in Redis in einem langlebigen Speicher dauerhaft speichern. Es erstellt Snapshots des Datasets zu einem bestimmten Zeitpunkt und wird häufig zum Sichern von Daten in Redis verwendet. Als Alternative zur Verwendung von RIOT für die Migration können Sie einen RDB-Snapshot für die Migration von einer Redis OSS-Instanz zu Redis Enterprise verwenden. Im Gegensatz zu RIOT unterstützt ein RDB-Snapshot jedoch keine Live-Migration und verursacht Ausfallzeiten.
Mit Aktiv-Passiv synchronisieren
Mit dem Redis OSS-Befehl ReplicaOf
können Sie eine Redis-Instanz als Replikat eines anderen Redis-Servers konfigurieren. Der Befehl wird im Kontext der Redis-Replikation verwendet, mit der Sie Kopien Ihrer Daten in verschiedenen Redis-Instanzen erstellen können. Wie bei RIOT unterstützt der Befehl ReplicaOf
die Live-Migration und verursacht keine Ausfallzeiten. Der Befehl ist jedoch in Redis OSS eingebunden, sodass Sie keine Tools installieren müssen.
Die Aktiv-Passiv- Geoverteilung von Redis Enterprise verwendet den Befehl ReplicaOf
, um eine Redis-Bereitstellung an mehreren geografischen Standorten zu skalieren. Wenn sich die Zieldatenbank in einem flexiblen (oder jährlichen) Abo befindet, können mit dem Befehl auch Daten von einer Redis-Datenbank zu Redis Enterprise Cloud-Abos migriert werden. Der Befehl funktioniert jedoch nicht, wenn das Ziel ein festes Abo ist, und funktioniert nicht zwischen flexiblen Abos aus verschiedenen Redis-Cloud-Konten.
Designaspekte
Die folgenden Richtlinien können Ihnen bei der Entwicklung einer Architektur helfen, die den Anforderungen Ihrer Organisation hinsichtlich Zuverlässigkeit, Kosten und Leistung entspricht.
Zuverlässigkeit
Die Migration in dieser Architektur ist eine einseitige Migration von einer Redis-OSS-Quellinstanz zu einer Redis Enterprise-Zielinstanz. Nach einer Umstellung vom Redis OSS-Quellcluster auf den Redis Enterprise-Zielcluster wird die Quelle bei Änderungen am Zielcluster nicht mehr aktualisiert. Wenn Sie diese Architektur in einer Produktionsumgebung implementieren, können Sie Ihre Anwendungen daher nicht auf aktuelle Quellinstanzen in einem Fallback umstellen.
Kostenoptimierung
Wenn Sie Redis OSS-Instanzen zu Redis Enterprise migrieren, empfehlen wir Ihnen, Ihre Redis Enterprise-Zieldatenbanken in Abos zu gruppieren, damit Sie die Gesamtbetriebskosten über Mandantenfähigkeit senken können. Wenn Sie beispielsweise eine Gruppe von Datenbanken haben, die für die Entwicklung und Tests vorgesehen sind, können Sie diese in einem einzigen Abo zusammenfassen, da sie gemeinsame Merkmale und Netzwerkanforderungen haben. Ebenso kann eine Gruppe von Datenbanken für die Produktion bei einem anderen Abo gehostet werden.
Leistung
Die RIOT-Live-Migration unterstützt Ausfallzeiten praktisch ohne Ausfallzeiten. Während der Migration von der Redis-OSS-Quellinstanz können Ihre Anwendungen weiterhin ohne Auswirkungen auf die Redis-OSS-Instanz zugreifen. Während des Migrationsprozesses migriert RIOT Live-Migration nach dem anfänglichen Laden von Daten aus Redis OSS weiterhin Änderungen von Rediss OSS, sobald sie auftreten.
Nachdem die ersten Schlüssel/Wert-Paar-Daten migriert wurden, führen Sie die Umstellung von der Redis OSS-Quellinstanz zur Redis Enterprise-Zielinstanz durch. Im Rahmen der Umstellung sperren Sie Clientschreibvorgänge in die Redis-OSS-Quellinstanz. Warten Sie dann, bis RIOT alle verbleibenden Änderungen von der Redis OSS-Quellinstanz zur Redis Enterprise-Zielinstanz verarbeitet.
Bereitstellung
Informationen zum Bereitstellen dieser Architektur finden Sie unter RIOT-Live-Migration für die Migration von Redis Open Source zu Redis Enterprise Cloud bereitstellen.
Nächste Schritte
- Inhalte zur Datenmigration in Google Cloud lesen
- Eine ausführlichere Dokumentation und Best Practices finden Sie in der RIOT-Dokumentation.
- Weitere Referenzarchitekturen, Diagramme und Best Practices finden Sie im Cloud-Architekturcenter.
Beitragende
Autoren:
- Saurabh Kumar | ISV Partner Engineer
- Gilbert Lau | Principal Cloud Architect, Redis
Weitere Beitragende:
- Chris Mague | Customer Engineer, Datenverwaltung
- Gabe Weiss Developer Advocacy Manager
- Marco Ferrari | Cloud Solutions Architect