Freigeben über


Migrieren von Azure Cache for Redis zu Azure Managed Redis (Vorschau)

In diesem Artikel erfahren Sie, wie Sie von einer Azure Cache for Redis-Instanz zu einer Azure Managed Redis-Instanz (Vorschau) migrieren.

Wichtig

Azure Managed Redis befindet sich derzeit in der VORSCHAUPHASE. Die zusätzlichen Nutzungsbestimmungen für Microsoft Azure-Vorschauen enthalten rechtliche Bedingungen. Sie gelten für diejenigen Azure-Features, die sich in der Beta- oder Vorschauversion befinden oder aber anderweitig noch nicht zur allgemeinen Verfügbarkeit freigegeben sind.

Voraussetzungen

Vergleich der Funktionen von Azure Cache for Redis und Azure Managed Redis (Vorschau)

Funktionsbeschreibung Basic Standard Premium Ausgewogen (Vorschau) Arbeitsspeicheroptimiert (Vorschau) Für Compute optimiert (Vorschau)
Verfügbarkeit N/V 99,9 % 99,9 %
Datenverschlüsselung während der Übertragung Ja Ja Ja Ja Ja Ja
Netzwerkisolation Ja Ja Ja Ja Ja Ja
Vertikales Hochskalieren/Horizontales Hochskalieren Ja Ja Ja Ja Ja Ja
Vertikales Herunterskalieren/Horizontales Herunterskalieren Ja Ja Ja Nr. Nr. No
OSS-Clustering No Nein Ja Ja Ja Ja
Datenpersistenz No Nein Ja Ja Ja Ja
Zonenredundanz No Ja (Vorschau) Ja Ja Ja Ja
Georeplikation No No Ja (Passiv) Ja (Aktiv) Ja (Aktiv) Ja (Aktiv)
Überwachungsprotokolle für Verbindungen No Nein Ja Ja (Ereignisbasiert) Ja (Ereignisbasiert) Ja (Ereignisbasiert)
Redis-Module No Nr. Nein Ja Ja Ja
Import/Export No Nein Ja Ja Ja Ja
Neustart Ja Ja Ja Nr. Nr. No
Geplante Updates Ja Ja Ja Nr. Nr. No
Microsoft Entra ID-Authentifizierung Ja Ja Ja Ja Ja Ja
Microsoft Entra ID RBAC Ja Ja Ja Nr. Nr. No
Keyspacebenachrichtigung Ja Ja Ja Nr. Nr. No
Keine Hochverfügbarkeit N/V Nein Nein Ja Ja Ja

Hier sind einige weitere Unterschiede, die durch die vorherige Zuordnung nicht abgedeckt sind. Berücksichtigen Sie folgende Änderungen bei Clientanwendungen:

Funktionsbeschreibung Azure Cache for Redis Azure Managed Redis (Vorschau)
DNS-Suffix (nur für PROD-Cloud) .redis.cache.windows.net <region>.redis.azure.net
TLS-Port 6380 10000
Nicht-TLS-Port 6379 Nicht unterstützt
TLS-Ports für einzelne Knoten 130XX 85xx
Nicht-TLS-Ports für einzelne Knoten 150XX Nicht unterstützt
Unterstützung für Clustering OSS-Clusteringmodus OSS- und Enterprise-Clustermodus
Nicht unterstützte Befehle Nicht unterstützte Befehle Befehle mit mehreren Schlüsseln
Regionale Verfügbarkeit Alle Azure-Regionen Nur Regionen mit drei Verfügbarkeitszonen
Weitere Informationen finden Sie unter Produktverfügbarkeit.
Redis-Version 6 7.4
Unterstützte TLS-Versionen 1.2 und 1.3 1.2 und 1.3

Migrieren Ihrer Azure Cache for Redis-Instanz zu Azure Managed Redis

Hinweis

Stellen Sie sicher, dass Sie die restlichen Anwendungen und zugehörigen Azure-Ressourcen bei Bedarf aktualisieren, um den Cache zu verwenden.

Auswählen des Caches, den Sie aus dem Azure-Portal verschieben möchten

Azure Cache for Redis Basic/Standard/Premium (nicht gruppiert)

Hinweis

Verwenden der Option „Keine Hochverfügbarkeit“ von Azure Managed Redis für die Migration von Basic-SKUs

Azure Cache for Redis Azure Managed Redis Zusätzlicher Arbeitsspeicher (%)
Basic/Standard – C0 Ausgewogen – B0 50
Basic/Standard – C1 Ausgewogen – B1 0
Basic/Standard – C2 Ausgewogen – B3 17
Basic/Standard – C3 Ausgewogen – B5 0
Basic/Standard – C4 Arbeitsspeicheroptimiert – M10 -8
Basic/Standard – C4 Arbeitsspeicheroptimiert – M20** 46
Basic/Standard – C5 Arbeitsspeicheroptimiert – M20* -8
Basic/Standard – C5 Arbeitsspeicheroptimiert – M50** 57
Basic/Standard – C6 Arbeitsspeicheroptimiert – M50 12
Premium –P1 Ausgewogen – B5 0
Premium –P2 Ausgewogen – B10* -8
Premium –P2 Ausgewogen – B20** 46
Premium –P3 Ausgewogen – B20* -8
Premium –P3 Ausgewogen – B50* 57
Premium –P4 Ausgewogen – B50 12
Premium –P5 Ausgewogen – B100 0
  • *Diese Option zeichnet sich durch Kosteneffizienz aus. Stellen Sie für das Auswählen dieser Option sicher, dass der Höchstwert des verwendeten Arbeitsspeichers im letzten Monat kleiner als der vorgeschlagene AMR-Speicher ist.
  • ** Diese Option eignet sich für hohen Arbeitsspeicherverbrauch.

Azure Cache for Redis Premium (gruppiert)

  • Wählen Sie für Shardcluster einen arbeitsspeicheroptimierten Tarif mit gleichwertigem Gesamtspeicher aus.
  • Wählen Sie für Cluster mit mehr als einem Lesereplikat einen für Compute optimierten Tarif mit gleichwertigem Gesamtspeicher als primäres Replikat aus.

Migrationsoptionen

Clientanwendungen sollten in der Lage sein, eine Azure Managed Redis-Instanz mit unterschiedlichen Clusteringmodi und Endpunkten zu verwenden. Azure Cache for Redis und Azure Managed Redis (Vorschau) sind kompatibel, sodass für die meisten Szenarien außer Verbindungskonfigurationen keine Änderungen am Anwendungscode erforderlich sind.

Weitere Informationen finden Sie unter:

Optionen für das Migrieren von Azure Cache for Redis zu Azure Managed Redis

Option Vorteile Nachteile
Erstellen eines neuen Caches Die am einfachsten zu implementierende Methode. Daten müssen im neuen Cache wieder aufgefüllt werden, was bei vielen Anwendungen möglicherweise nicht funktioniert.
Exportieren und Importieren von Daten über eine RDB-Datei Im Allgemeinen mit jedem Redis-Cache kompatibel. Einige Daten könnten verloren gehen, wenn sie nach dem Generieren der RDB-Datei in den vorhandenen Cache geschrieben werden.
Duale Schreibvorgänge in zwei Caches Kein Datenverlust und keine Ausfallzeiten Unterbrechungsfreie Vorgänge im vorhandenen Cache. Einfacheres Testen des neuen Caches. Für einen längeren Zeitraum sind zwei Caches erforderlich.
Programmgesteuertes Migrieren von Daten Vollständige Kontrolle über die Verlagerung der Daten. Erfordert benutzerdefinierten Code.

Erstellen einer neuen Azure Cache for Redis-Instanz

Dieser Ansatz ist technisch gesehen keine Migration. Wenn Datenverluste kein Problem sind, können Sie am einfachsten zum Azure Managed Redis-Tarif wechseln, indem Sie eine neue Cache-Instanz erstellen und Ihre Anwendung damit verbinden. Wenn Sie Redis beispielsweise als Suchcache für Datenbank-Datensätze verwenden, können Sie den Cache problemlos von Grund auf neu erstellen. Hier finden Sie die allgemeinen Schritte zum Implementieren dieser Option:

  1. Erstellen Sie eine neue Azure Managed Redis-Instanz.
  2. Aktualisieren Sie Ihre Anwendung, sodass die neue Instanz verwendet wird.
  3. Löschen Sie die alte Azure Cache for Redis-Instanz.

Exportieren von Daten in eine RDB-Datei und Importieren in Azure Managed Redis

Diese Option gilt nur für Premium-Tarif-Caches. Open-Source-Redis definiert einen Standardmechanismus, um eine Momentaufnahme des In-Memory-Datasets eines Caches zu erstellen und in einer Datei zu speichern. Diese als RDB bezeichnete Datei kann von einem anderen Redis-Cache gelesen werden. Der Azure Cache for Redis-Premium-Tarif unterstützt das Exportieren aus einer Cache-Instanz mithilfe von RDB-Dateien. Sie können eine RDB-Datei verwenden, um Daten aus einer vorhandenen Azure Cache for Redis-Instanz in Azure Managed Redis zu übertragen.

Hier finden Sie die allgemeinen Schritte zum Implementieren dieser Option:

  1. Erstellen Sie eine neue Azure Managed Redis-Instanz, die genauso groß (oder größer) wie die vorhandene Azure Cache for Redis-Instanz ist.
  2. Exportieren der RDB-Datei aus einer vorhandenen Azure Cache for Redis-Instanz mithilfe dieser Exportanweisungen oder des PowerShell-Export-Cmdlets
  3. Importieren der RDB-Datei mithilfe dieser Importanweisungen oder dem PowerShell-Cmdlet für den Import in die Azure Managed Redis-Instanz
  4. Aktualisieren Sie Ihre Anwendung so, dass sie die neue Azure Managed Redis-Instanz-Verbindungszeichenfolge verwendet.

Exportieren der Daten:

az redis export --resource-group <ResourceGroupName> --name <Azure Cache for Redis instance name> --prefix <BlobPrefix> --container <ContainerName> --file-format <FileFormat>

Importieren der Daten:

az redis import --resource-group <ResourceGroupName> --name <Azure Managed Redis instance name> --files <BlobUris>

Ersetzen Sie ResourceGroupName, CacheName, BlobPrefix, ContainerNameund FileFormat- durch Ihre spezifischen Werte. Das Dateiformat (--file-format_) kann entweder RDB oder AOF sein.

Gleichzeitiges Schreiben in zwei Redis Cache-Instanzen während der Migrationsphase

Anstatt Daten direkt zwischen Caches zu verschieben, können Sie Ihre Anwendung verwenden, um Daten sowohl in einen vorhandenen als auch in einen neuen, von Ihnen eingerichteten Cache zu schreiben. Die Anwendung liest Daten anfangs weiterhin aus dem vorhandenen Cache. Wenn der neue Cache über alle notwendigen Daten verfügt, konfigurieren Sie Ihre Anwendung für den neuen Cache und nehmen den alten außer Betrieb. Ein Beispiel: Sie verwenden Redis als Sitzungsspeicher, und die Anwendungssitzungen sind sieben Tage lang gültig. Nachdem eine Wochen lang in beide Caches geschrieben wurde, können Sie sicher sein, dass der neue Cache alle nicht abgelaufenen Sitzungsinformationen enthält. Ab diesem Zeitpunkt können Sie sich auf diesen Cache verlassen, ohne sich Gedanken um Datenverluste machen zu müssen.

Hier finden Sie die allgemeinen Schritte zum Implementieren dieser Option:

  1. Erstellen Sie eine neue Azure Managed Redis-Instanz, die genauso groß (oder größer) wie die vorhandene Azure Cache for Redis-Instanz ist.
  2. Ändern Sie den Anwendungscode, sodass die Anwendung sowohl in die neue als auch in die ursprüngliche Cache-Instanz schreibt.
  3. Verwenden Sie zum Lesen der Daten weiterhin die ursprüngliche Instanz, bis die neue Instanz ausreichend mit Daten aufgefüllt ist.
  4. Aktualisieren Sie den Anwendungscode, sodass die Anwendung zum Lesen und Schreiben von Daten ausschließlich die neue Instanz verwendet.
  5. Löschen Sie die ursprüngliche Instanz.

Programmgesteuertes Migrieren

Erstellen Sie einen benutzerdefinierten Migrationsprozess, indem Sie Daten programmgesteuert aus einer vorhandenen Azure Cache for Redis-Instanz lesen und in eine Azure Managed Redis-Instanz schreiben lassen. Es gibt zwei Open Source-Tools, die Sie dafür ausprobieren können:

  • Redis-copy
    • Dieses Open-Source-Tool kann zum Kopieren von Daten aus einer Azure Cache for Redis-Instanz in eine andere verwendet werden. Dieses Tool ist sehr nützlich, wenn Sie Daten zwischen Cache-Instanzen in verschiedenen Azure Cache-Regionen verschieben müssen. Eine kompilierte Version ist ebenfalls verfügbar. Wenn Sie selbst ein Migrationstool schreiben, ist auch der Quellcode möglicherweise ein nützlicher Leitfaden.
  • RIOT
    • RIOT ist ein weiteres beliebtes Migrationstool, das von der Redis-Community getestet wurde. Es ist ein Befehlszeilenprogramm, das Sie beim Abrufen von Daten aus Redis sowie beim Schreiben von Daten in Redis unterstützt.

Hinweis

Dieses Tool wird von Microsoft nicht offiziell unterstützt.

Hier finden Sie die allgemeinen Schritte zum Implementieren dieser Option:

  1. Erstellen Sie eine VM in der Region, in der sich der vorhandene Cache befindet. Wenn Ihr Dataset groß ist, wählen Sie eine relativ leistungsstarke VM aus, um die Kopierdauer zu verkürzen.
  2. Erstellen Sie eine neue Azure Managed Redis-Instanz.
  3. Leeren Sie den neuen Cache, um sicherzustellen, dass sich keine Daten darin befinden. Dieser Schritt ist erforderlich, weil das Kopiertool selbst keine vorhandenen Schlüssel im Zielcache überschreibt. Wichtig: Stellen Sie sicher, dass Sie NICHT den Quellcache leeren.
  4. Verwenden Sie eine Anwendung wie z. B. das vorhin erwähnte Open-Source-Tool, um das Kopieren der Daten vom Quell- zum Zielcache zu automatisieren. Denken Sie daran, dass der Kopiervorgang je nach Größe Ihres Datasets eine Weile dauern kann.