Dela via


Flytta från Azure Cache for Redis till Azure Managed Redis (förhandsversion)

I den här artikeln lär du dig att migrera från Azure Cache for Redis-instansen till en Azure Managed Redis-instans (förhandsversion).

Viktigt!

Azure Managed Redis är för närvarande i förhandsversion. Juridiska villkor för Azure-funktioner i betaversion, förhandsversion eller som av någon annan anledning inte har gjorts allmänt tillgängliga ännu finns i kompletterande användningsvillkor för Microsoft Azure-förhandsversioner.

Förutsättningar

Funktionsjämförelse mellan Azure Cache for Redis och Azure Managed Redis (förhandsversion)

Funktionsbeskrivning Basic Standard Premium Balanserad (förhandsversion) Minnesoptimerad (förhandsversion) Beräkningsoptimerad (förhandsversion)
Tillgänglighet Ej tillämpligt 99,9 % 99,9 % Saknas Saknas Saknas
Datakryptering under överföring Ja Ja Ja Ja Ja Ja
Nätverksisolering Ja Ja Ja Ja Ja Ja
Skala upp/ut Ja Ja Ja Ja Ja Ja
Skala ned/in Ja Ja Ja Nej Nej Nej
OSS-klustring Nej Nej Ja Ja Ja Ja
Databeständighet Nej Nej Ja Ja Ja Ja
Zonredundans Nej Ja (förhandsversion) Ja Ja Ja Ja
Geo-replikering Nej Nej Ja (passiv) Ja (aktiv) Ja (aktiv) Ja (aktiv)
Anslutningsgranskningsloggar Nej Nej Ja Ja(händelsebaserad) Ja(händelsebaserad) Ja(händelsebaserad)
Redis-moduler Nej Nej Nej Ja Ja Ja
Import/Export Nej Nej Ja Ja Ja Ja
Starta om Ja Ja Ja Nej Nej Nej
Schemalagda uppdateringar Ja Ja Ja Nej Nej Nej
Microsoft Entra ID-autentisering Ja Ja Ja Ja Ja Ja
Microsoft Entra ID RBAC Ja Ja Ja Nej Nej Nej
Meddelande om nyckelutrymme Ja Ja Ja Nej Nej Nej
Ej hög tillgänglighet Ej tillämpligt Nej Nej Ja Ja Ja

Här följer några andra skillnader som inte omfattas av den tidigare mappningen. Överväg dessa ändringar av klientprogrammet:

Funktionsbeskrivning Azure Cache for Redis Azure Managed Redis (förhandsversion)
DNS-suffix (endast för PROD-moln) .redis.cache.windows.net <region>.redis.azure.net
TLS-port 6380 10000
Icke-TLS-port 6379 Stöds inte
TLS-portar för enskilda noder 130XX 85xx
Enskild nod som inte är TLS-port 150XX Stöds inte
Klusterstöd OSS-klustringsläge OSS- och Enterprise-klusterlägen
Kommandon som inte stöds Kommandon som inte stöds Kommandon med flera nycklar
Regional tillgänglighet Alla Azure-regioner * Se listan över regioner efter det här avsnittet.
Redis-version 6 7,4
TLS-versioner som stöds 1.2 och 1.3 1.2 och 1.3

Regional tillgänglighet för Azure Managed Redis

Azure Managed Redis stöds för närvarande i följande regioner. Den här listan uppdateras regelbundet. Slutligen kommer Azure Managed Redis att stödjas i alla regioner i Azure. Arbeta med din försäljningskontakt för att skapa begäranden om regioner där du behöver support.

Nord- och Sydamerika Europa Mellanöstern Afrika Asien och stillahavsområdet
Brasilien, södra Tyskland, västra centrala Asien, östra
Västra centrala USA Södra Storbritannien Australien, östra
Norra centrala USA Europa, västra Japan, östra
USA, västra 3 Sverige, centrala Sydostasien
USA, östra 2 Indien, centrala
USA, södra centrala
Västra USA 2
USA, östra
Västra USA
Centrala USA
Kanada, centrala

Migrera din Azure Cache for Redis-instans till Azure Managed Redis

Kommentar

Se till att uppdatera resten av programmet och relaterade Azure-resurser efter behov för att använda cacheminnet.

Välj den cache som du vill flytta från Azure Portal

Azure Cache for Redis Basic/Standard/Premium nonclustered

Kommentar

Använd alternativet för icke-hög tillgänglighet för Azure Managed Redis för migrering av grundläggande SKU:er

Azure Cache for Redis Azure Managed Redis Ytterligare minne (%)
Basic/Standard – C0 Balanserad – B0 50
Basic/Standard – C1 Balanserad – B1 0
Basic/Standard – C2 Balanserad – B3 17
Basic/Standard – C3 Balanserad – B5 0
Basic/Standard – C4 Minnesoptimerad – M10* -8
Basic/Standard – C4 Minnesoptimerad – M20** 46
Basic/Standard – C5 Minnesoptimerad – M20* -8
Basic/Standard – C5 Minnesoptimerad – M50** 57
Basic/Standard – C6 Minnesoptimerad – M50 12
Premium – P1 Balanserad – B5 0
Premium – P2 Balanserad – B10* -8
Premium – P2 Balanserad – B20** 46
Premium – P3 Balanserad – B20* -8
Premium – P3 Balanserad – B50** 57
Premium – P4 Balanserad – B50 12
Premium – P5 Balanserad – B100 0
  • *Det här alternativet är för kostnadseffektivitet. Se till att den totala mängden använt minne under den senaste månaden är mindre än det föreslagna Azure Managed Redis-minnet för att välja det här alternativet.
  • ** Det här alternativet är för riklig minnesförbrukning.

Azure Cache for Redis Premium klustrad

  • För fragmenterade kluster väljer du en minnesoptimerad nivå som har motsvarande totalt minne.
  • För kluster med mer än en läsreplik väljer du en beräkningsoptimerad nivå med motsvarande totalt minne som primär replik.

Migreringsalternativ

Klientprogram bör kunna använda en Azure Managed Redis-instans som har olika klusterlägen och slutpunkter. Azure Cache for Redis och Azure Managed Redis (förhandsversion) är kompatibla så inga andra programkodändringar än anslutningskonfigurationer krävs för de flesta scenarier.

Läs mer på:

Alternativ för att migrera Azure Cache for Redis till Azure Managed Redis

Alternativ Fördelar Nackdelar
Skapa en ny cache Enklast att implementera. Behöver fylla i data till den nya cachen, vilket kanske inte fungerar med många program.
Exportera och importera data via RDB-fil Kompatibel med alla Redis-cacheminnen i allmänhet. Vissa data kan gå förlorade om de skrivs till den befintliga cachen när RDB-filen har genererats.
Dubbelskrivningsdata till två cacheminnen Ingen dataförlust eller stilleståndstid. Oavbrutna åtgärder i den befintliga cachen. Enklare testning av den nya cachen. Behöver två cacheminnen under en längre tidsperiod.
Migrera data programmatiskt Fullständig kontroll över hur data flyttas. Kräver anpassad kod.

Skapa en ny Azure Cache for Redis

Den här metoden är tekniskt sett inte en migrering. Om dataförlust inte är ett problem är det enklaste sättet att flytta till Azure Managed Redis-nivån att skapa en ny cacheinstans och ansluta ditt program till den. Om du till exempel använder Redis som en cache med databasposter kan du enkelt återskapa cacheminnet från grunden. Allmänna steg för att implementera det här alternativet är:

  1. Skapa en ny Azure Managed Redis-instans.
  2. Uppdatera programmet så att det använder den nya instansen.
  3. Ta bort den gamla Azure Cache for Redis-instansen.

Exportera data till en RDB-fil och importera dem till Azure Managed Redis

Det här alternativet gäller endast för premiumnivåcacheminnen. Redis med öppen källkod definierar en standardmekanism för att ta en ögonblicksbild av en cacheminnesdatauppsättning och spara den i en fil. En annan Redis-cache kan läsa RDB-filen som exporterades. Azure Cache for Redis premiumnivå stöder export av data från en cacheinstans via RDB-filer. Du kan använda en RDB-fil för att överföra data från en befintlig Azure Cache for Redis-instans till Azure Managed Redis-instansen.

Allmänna steg för att implementera det här alternativet är:

  1. Skapa en ny Azure Managed Redis-instans som har samma storlek (eller större än) den befintliga Azure Cache for Redis-instansen.
  2. Exportera RDB-filen från en befintlig Azure Cache for Redis-instans med hjälp av dessa exportinstruktioner eller PowerShell Export-cmdleten
  3. Importera RDB-filen till den nya Azure Managed Redis-instansen med hjälp av dessa importinstruktioner eller PowerShell-import-cmdleten
  4. Uppdatera programmet så att det använder den nya Azure Managed Redis-instansen anslutningssträng.

Exportera data:

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

Importera data:

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

Ersätt ResourceGroupName, CacheName, BlobPrefix, ContainerName och FileFormat med dina specifika värden. --file-format_ kan vara antingen RDB eller AOF.

Skriv till två Redis-cacheminnen samtidigt under migreringsperioden

I stället för att flytta data direkt mellan cacheminnen kan du använda ditt program för att skriva data till både en befintlig cache och en ny som du konfigurerar. Programmet läser fortfarande data från den befintliga cachen från början. När den nya cachen har nödvändiga data växlar du programmet till cacheminnet och drar tillbaka den gamla. Anta till exempel att du använder Redis som ett sessionsarkiv och att programsessionerna är giltiga i sju dagar. När du har skrivit till de två cacheminnena i en vecka är du säker på att den nya cachen innehåller all icke-förbrukad sessionsinformation. Du kan lita på det från och med då utan att behöva bry dig om dataförlust.

Allmänna steg för att implementera det här alternativet är:

  1. Skapa en ny Azure Managed Redis-instans som är lika stor som (eller större än) den befintliga Azure Cache for Redis-instansen.
  2. Ändra programkoden så att den skrivs till både den nya och den ursprungliga instansen.
  3. Fortsätt att läsa data från den ursprungliga instansen tills den nya instansen är tillräckligt fylld med data.
  4. Uppdatera programkoden till att endast läsa och skriva från den nya instansen.
  5. Ta bort den ursprungliga instansen.

Migrera programmatiskt

Skapa en anpassad migreringsprocess genom att programmatiskt läsa data från en befintlig Azure Cache for Redis-instans och skriva dem till Azure Managed Redis-instansen. Det finns två öppen källkod verktyg som du kan prova:

  • Redis-copy
    • Det här verktyget med öppen källkod kan användas för att kopiera data från en Azure Cache for Redis-instans till en annan. Det här verktyget är användbart för att flytta data mellan cacheinstanser i olika Azure Cache-regioner. En kompilerad version är också tillgänglig. Du kan också se källkoden som en användbar guide för att skriva ett eget migreringsverktyg.
  • UPPLOPP
    • RIOT är ett annat populärt migreringsverktyg som testats av Redis community. Det är ett kommandoradsverktyg som hjälper dig att hämta data till och från Redis.

Kommentar

Det här verktyget stöds inte officiellt av Microsoft.

Allmänna steg för att implementera det här alternativet är:

  1. Skapa en virtuell dator i den region där den befintliga cachen finns. Om datamängden är stor väljer du en relativt kraftfull virtuell dator för att minska kopieringstiden.
  2. Skapa en ny Azure Managed Redis-instans.
  3. Rensa data från den nya cachen för att säkerställa att den är tom. Det här steget krävs eftersom själva kopieringsverktyget inte skriver över någon befintlig nyckel i målcachen. Viktigt: Se till att INTE rensa från källcachen.
  4. Använd ett program som verktyget med öppen källkod som nämndes tidigare för att automatisera kopieringen av data från källcachen till målet. Kom ihåg att kopieringsprocessen kan ta ett tag att slutföra beroende på storleken på din datauppsättning.