Konfigurera passiv geo-replikering för Premium Azure Cache for Redis-instanser
I den här artikeln får du lära dig hur du konfigurerar passiv geo-replikering på ett par Azure Cache for Redis-instanser med hjälp av Azure-portalen.
Passiv geo-replikering länkar samman två Azure Cache for Redis-instanser på Premium-nivå och skapar en aktiv-passiv datareplikeringsrelation. Aktiv-passiv innebär att det finns ett par cacheminnen, primära och sekundära, som har sina data synkroniserade. Men du kan bara skriva till ena sidan av paret, den primära. Den andra sidan av paret, den sekundära cachen, är skrivskyddad.
Jämför aktiv-passiv med aktiv-aktiv, där du kan skriva till båda sidor av paret och synkroniseras med den andra sidan.
Med passiv geo-replikering finns cacheinstanserna vanligtvis i olika Azure-regioner, men det krävs inte. Den ena instansen fungerar som primär och den andra som sekundär. Den primära hanterar läs- och skrivbegäranden och den primära sprider ändringar till den sekundära.
Den sker inte automatiskt. Mer information om hur du använder redundans finns i Initiera en redundansväxling från geo-primär till geo-sekundär.
Kommentar
Passiv geo-replikering är utformad som en haveriberedskapslösning.
Tillgänglighetsomfång
Nivå | Basic, Standard | Premium | Enterprise, Enterprise Flash |
---|---|---|---|
Tillgängligt | Nej | Ja | Ja |
Passiv geo-replikering är endast tillgängligt på Premium-nivån i Azure Cache for Redis. Enterprise- och Enterprise Flash-nivåerna erbjuder också geo-replikering, men dessa nivåer använder en mer avancerad version som kallas aktiv geo-replikering.
Förutsättningar för geo-replikering
För att konfigurera geo-replikering mellan två cacheminnen måste följande krav uppfyllas:
- Båda cacheminnena är Premium-nivåcacheminnen .
- Båda cacheminnena finns i samma Azure-prenumeration.
- Den sekundära länkade cachen har antingen samma cachestorlek eller en större cachestorlek än den primära länkade cachen. Om du vill använda geo-redundans måste båda cacheminnena ha samma storlek.
- Båda cacheminnena skapas och körs.
- Båda cacheminnena kör samma version av Redis-servern.
Kommentar
Dataöverföring mellan Azure-regioner debiteras med standardbandbredd.
Vissa funktioner stöds inte med geo-replikering:
- Zonredundans stöds inte med geo-replikering.
- Beständighet stöds inte med geo-replikering.
- Cacheminnen med mer än en replik kan inte geo-replikeras.
- Klustring stöds om båda cacheminnena har klustring aktiverat och har samma antal shards.
- Cacheminnen i samma virtuella nätverk (VNet) stöds.
- Cacheminnen i olika virtuella nätverk stöds med varningar. Mer information finns i Kan jag använda geo-replikering med mina cacheminnen i ett virtuellt nätverk?
När geo-replikering har konfigurerats gäller följande begränsningar för ditt länkade cachepar:
Den sekundära länkade cachen är skrivskyddad. Du kan läsa från den, men du kan inte skriva några data till den. Om du väljer att läsa från den geo-sekundära instansen när en fullständig datasynkronisering sker mellan geo-primär och geo-sekundär, genererar den geo-sekundära instansen fel på alla Redis-åtgärder mot den tills den fullständiga datasynkroniseringen är klar. Felen anger att en fullständig datasynkronisering pågår. Dessutom utlöses felen när geo-primär eller geo-sekundär uppdateras och i vissa omstartsscenarier. Program som läser från geo-sekundär bör byggas för att återgå till geo-primär när geo-sekundärt utlöser sådana fel.
Alla data som fanns i den sekundära länkade cachen innan länken lades till tas bort. Om geo-replikering tas bort senare finns dock replikerade data kvar i den sekundära länkade cachen.
Du kan inte skala cacheminnet när cacheminnena är länkade.
Du kan inte ändra antalet shards om cachen har klustring aktiverat.
Du kan inte aktivera beständighet i någon av cacheminnena.
Du kan exportera från båda cacheminnena.
Du kan inte importera till den sekundära länkade cachen.
Du kan inte ta bort länkad cache eller resursgruppen som innehåller dem förrän du tar bort länken till cacheminnena. Mer information finns i Varför misslyckades åtgärden när jag försökte ta bort min länkade cache?
Om cacheminnena finns i olika regioner gäller kostnaderna för utgående nätverk för data som flyttas mellan regioner. Mer information finns i Hur mycket kostar det att replikera mina data i Azure-regioner?
Den sker inte automatiskt. Du måste starta redundansväxlingen från den primära till den sekundära länkade cachen. Mer information om hur du använder redundans finns i Initiera en redundansväxling från geo-primär till geo-sekundär.
Privata länkar kan inte läggas till i cacheminnen som redan är geo-replikerade. Så här lägger du till en privat länk till en geo-replikerad cache: 1. Ta bort länken till geo-replikering. 2. Lägg till en privat länk. 3. Länka slutligen om geo-replikeringen.
Lägga till en geo-replikeringslänk
Om du vill länka ihop två cacheminnen för geo-replikering väljer du först Geo-replikering på resursmenyn i cacheminnet som du tänker vara den primära länkade cachen. Välj sedan länken Lägg till cachereplikering i arbetsfönstret.
Välj namnet på din avsedda sekundära cache från listan Kompatibla cacheminnen . Om den sekundära cachen inte visas i listan kontrollerar du att kraven för geo-replikering för den sekundära cachen uppfylls . Om du vill filtrera cacheminnena efter region väljer du regionen på kartan för att endast visa dessa cacheminnen i listan Kompatibla cacheminnen .
Du kan också starta länkningsprocessen eller visa information om den sekundära cachen med hjälp av snabbmenyn.
Välj Länka för att länka ihop de två cacheminnena och påbörja replikeringsprocessen.
Du kan visa förloppet för replikeringsprocessen med geo-replikering på resursmenyn.
Du kan också visa länkstatusen med hjälp av Översikt från resursmenyn för både primära och sekundära cacheminnen.
När replikeringen är klar ändras länketableringsstatusen till Lyckades.
Den primära länkade cachen är fortfarande tillgänglig för användning under länkningsprocessen. Den sekundära länkade cachen är inte tillgänglig förrän länkningsprocessen har slutförts.
Geo-primär URL
När cacheminnena är länkade genereras en URL för varje cache som alltid pekar på den geo-primära cachen. Om en redundansväxling initieras från den geo-primära till den geo-sekundära förblir URL:en densamma och den underliggande DNS-posten uppdateras automatiskt så att den pekar på den nya geo-primära posten.
Tre URL:er visas:
- Geo-Primär URL är en proxy-URL med formatet
<cachename>.geo.redis.cache.windows.net
. URL:en pekar alltid på den cache i geo-replikeringsparet som är den aktuella geo-primära. - Aktuell geo-primär cache är den direkta adressen till cachen som för närvarande är den geo-primära. Adressen är
redis.cache.windows.net
integeo.redis.cache.windows.net
. Adressen som anges i fältet ändras om en redundansväxling initieras. - Aktuell geo-sekundär cache är den direkta adressen för cacheminnet som för närvarande är geo-sekundär. Adressen är
redis.cache.windows.net
integeo.redis.cache.windows.net
. Adressen som anges i fältet ändras om en redundansväxling initieras.
Initiera en redundansväxling från geo-primär till geo-sekundär
Med ett val kan du utlösa en redundansväxling från den geo-primära till den geo-sekundära.
Detta gör att följande steg kan vidtas:
- Den geo-sekundära cachen höjs upp till geo-primär.
- DNS-poster uppdateras för att omdirigera de geo-primära URL:erna till den nya geo-primära.
- Den gamla geo-primära cachen degraderad till sekundär och försöker skapa en länk till den nya geo-primära cachen.
Det tar några minuter att slutföra geo-redundansväxlingen.
Inställningar för att kontrollera innan geo-redundans initieras
När redundansväxlingen initieras växlar de geo-primära och geo-sekundära cacheminnena. Om den nya geo-primära har konfigurerats på ett annat sätt än den geo-sekundära, kan det skapa problem för ditt program.
Kontrollera följande:
- Om du använder en brandvägg i någon av cacheminnena kontrollerar du att brandväggsinställningarna är liknande så att du inte har några anslutningsproblem.
- Kontrollera att båda cacheminnena använder samma port- och TLS/SSL-inställningar
- De geo-primära och geo-sekundära cacheminnena har olika åtkomstnycklar. Om en redundansväxling utlöses kontrollerar du att programmet kan uppdatera åtkomstnyckeln som används för att matcha den nya geo-primära. Du kan också använda Microsoft Entra-token för cacheautentisering, vilket gör att du kan använda samma autentiseringsautentiseringsuppgifter för både den geo-primära och den geo-sekundära cachen.
Redundans med minimal dataförlust
Geo-redundanshändelser kan introducera datainkonsekvenser under övergången, särskilt om klienten upprätthåller en anslutning till den gamla geo-primära under redundansväxlingen. Du kan minimera dataförlust i en planerad geo-redundanshändelse med hjälp av följande tips:
- Kontrollera förskjutningsmåttet för geo-replikeringsdatasynkronisering. Måttet genereras av den aktuella geo-primära cachen. Det här måttet anger hur mycket data som ännu inte har replikerats till den geo-primära. Om möjligt initierar du bara redundans om måttet anger att färre än 14 byte återstår att skriva.
CLIENT PAUSE
Kör kommandot i den aktuella geo-primära innan du påbörjar redundansväxlingen. KörningCLIENT PAUSE
blockerar alla nya skrivbegäranden och returnerar i stället tidsgränsfel till Azure Cache for Redis-klienten. KommandotCLIENT PAUSE
kräver en tidsgräns i millisekunder. Kontrollera att det finns en tillräckligt lång tidsgräns för att redundansväxlingen ska kunna ske. Att ange pausvärdet till cirka 30 minuter (1 800 000 millisekunder) är ett bra ställe att börja på. Du kan alltid sänka det här talet efter behov.
Du behöver inte köra KOMMANDOT CLIENT UNPAUSE eftersom den nya geo-primära behåller klientens paus.
Kommentar
Användning av Microsoft Entra ID-baserad autentisering för din cache rekommenderas i scenarier med geo-redundans eftersom det tar bort svårigheten att hantera olika åtkomstnycklar för den geo-primära och den geo-sekundära cachen.
Ta bort en geo-replikeringslänk
Om du vill ta bort länken mellan två cacheminnen och stoppa geo-replikering väljer du Koppla från cacheminnen från Geo-replikering till vänster.
När avlänkningsprocessen är klar är den sekundära cachen tillgänglig för både läsningar och skrivningar.
Kommentar
När geo-replikeringslänken tas bort förblir replikerade data från den primära länkade cachen kvar i den sekundära cachen.
Vanliga frågor och svar om geo-replikering
- Kan jag använda geo-replikering med en Standard- eller Basic-nivåcache?
- Är min cache tillgänglig för användning under länknings- eller avlänkningsprocessen?
- När kan jag skriva till den nya geo-primära när jag har initierat redundans?
- Kan jag spåra hälsotillståndet för geo-replikeringslänken?
- Kan jag länka fler än två cacheminnen tillsammans?
- Kan jag länka två cacheminnen från olika Azure-prenumerationer?
- Kan jag länka två cacheminnen med olika storlekar?
- Kan jag använda geo-replikering med klustring aktiverat?
- Kan jag använda geo-replikering med mina cacheminnen i ett virtuellt nätverk?
- Vad är replikeringsschemat för Redis geo-replikering?
- Hur lång tid tar det för replikering av geo-replikering?
- Är replikeringsåterställningspunkten garanterad?
- Kan jag använda PowerShell eller Azure CLI för att hantera geo-replikering?
- Hur mycket kostar det att replikera mina data i Azure-regioner?
- Varför misslyckades åtgärden när jag försökte ta bort min länkade cache?
- Vilken region ska jag använda för min sekundära länkade cache?
- Kan jag konfigurera brandväggen med geo-replikering?
Kan jag använda geo-replikering med en Standard- eller Basic-nivåcache?
Nej, passiv geo-replikering är bara tillgängligt på Premium-nivån. En mer avancerad version av geo-replikering med namnet aktiv geo-replikering finns på Enterprise- och Enterprise Flash-nivån.
Är min cache tillgänglig för användning under länknings- eller avlänkningsprocessen?
- Den primära länkade cachen förblir tillgänglig tills länkningsprocessen är klar.
- Den sekundära länkade cachen är inte tillgänglig förrän länkningsprocessen har slutförts.
- Båda cacheminnena är tillgängliga tills avlänkningsprocessen har slutförts.
När kan jag skriva till den nya geo-primära när jag har initierat redundans?
När redundansväxlingen initieras ser du länkens etableringsstatusuppdatering till Borttagning, vilket indikerar att den tidigare länken rensas. När detta är klart uppdateras länkens etableringsstatus till Skapa. Detta indikerar att den nya geo-primära är igång och försöker återupprätta en geo-replikeringslänk till den gamla geo-primära cachen. Nu kan du omedelbart ansluta till den nya geo-primära cacheinstansen för både läsningar och skrivningar.
Kan jag spåra hälsotillståndet för geo-replikeringslänken?
Ja, det finns flera mått som hjälper dig att spåra status för geo-replikering. Dessa mått är tillgängliga i Azure-portalen.
- Geo-replikering felfri visar status för geo-replikeringslänken. Länken visas som felaktig om antingen geo-primära eller geo-sekundära cacheminnen är nere. Detta beror vanligtvis på standardkorrigeringsåtgärder, men det kan också tyda på en felsituation.
- Anslutningsfördröjning för geo-replikering visar tiden sedan den senaste lyckade datasynkroniseringen mellan geo-primär och geo-sekundär.
- Förskjutning av geo-replikeringsdatasynkronisering visar mängden data som ännu inte har synkroniserats till den geo-sekundära cachen.
- Geo Replication Fully Sync Event Started anger att en fullständig synkroniseringsåtgärd har initierats mellan de geo-primära och geo-sekundära cacheminnena. Detta inträffar om standardreplikeringen inte kan hänga med i antalet nya skrivningar.
- Geo Replication Full Sync Event Finished anger att en fullständig synkroniseringsåtgärd har slutförts.
Det finns också en fördefinierad arbetsbok som kallas geo-replikeringsinstrumentpanelen som innehåller alla hälsomått för geo-replikering i en vy. Vi rekommenderar att du använder den här vyn eftersom den aggregerar information som endast genereras från de geo-primära eller geo-sekundära cacheinstanserna.
Kan jag länka fler än två cacheminnen tillsammans?
Nej, du kan bara länka ihop två cacheminnen när du använder passiv geo-replikering. Aktiv geo-replikering stöder upp till fem länkade cacheminnen.
Kan jag länka två cacheminnen från olika Azure-prenumerationer?
Nej, båda cacheminnena måste finnas i samma Azure-prenumeration.
Kan jag länka två cacheminnen med olika storlekar?
Ja, så länge den sekundära länkade cachen är större än den primära länkade cachen. Du kan dock inte använda redundansfunktionen om cacheminnena är olika storlekar.
Kan jag använda geo-replikering med klustring aktiverat?
Ja, så länge båda cacheminnena har samma antal shards.
Kan jag använda geo-replikering med mina cacheminnen i ett virtuellt nätverk?
Vi rekommenderar att du använder Azure Private Link via VNet-inmatning i de flesta fall. Mer information finns i Migrera från VNet-inmatningscacheminnen till Private Link-cacheminnen.
Även om det fortfarande är tekniskt möjligt att använda VNet-inmatning när du georeplikerar dina cacheminnen rekommenderar vi Azure Private Link.
Viktigt!
Azure Cache for Redis rekommenderar att du använder Azure Private Link, vilket förenklar nätverksarkitekturen och skyddar anslutningen mellan slutpunkter i Azure. Med Private Link kan du ansluta till en Azure Cache for Redis-instans från ditt virtuella nätverk via en privat slutpunkt, som tilldelas en privat IP-adress i ett undernät till det virtuella nätverket. Privata Azure-länkar erbjuds på alla nivåer, de har stöd för Azure Policy och förenklad hantering av NSG-regler. Läs mer i Private Link-dokumentationen. Om du vill migrera dina VNet-inmatade cacheminnen till Private Link läser du Migrera från VNet-inmatade cacheminnen till Private Link.
Mer information om stöd för geo-replikering med virtuella nätverk finns i Geo-replikering med VNet-inmatning med Premium-cacheminnen.
Vad är replikeringsschemat för Redis geo-replikering?
Replikeringen är kontinuerlig och asynkron. Det sker inte enligt ett specifikt schema. Alla skrivningar som görs till den primära replikeras omedelbart och asynkront på den sekundära.
Hur lång tid tar det för replikering av geo-replikering?
Replikeringen är inkrementell, asynkron och kontinuerlig och den tid det tar skiljer sig inte mycket från svarstiden mellan regioner. Under vissa omständigheter kan den sekundära cachen krävas för att utföra en fullständig synkronisering av data från den primära. Replikeringstiden i det här fallet beror på många faktorer som: belastning på den primära cachen, tillgänglig nätverksbandbredd och svarstid mellan regioner. Vi har upptäckt att replikeringstiden för ett fullständigt geo-replikerat par på 53 GB kan vara mellan 5 och 10 minuter. Du kan spåra mängden data som ännu inte har replikerats med hjälp av måttet Geo Replication Data Sync Offset
i Azure Monitor.
Är replikeringsåterställningspunkten garanterad?
För cacheminnen i geo-replikerat läge inaktiveras beständighet. Om ett geo-replikerat par är olänkat, till exempel en kundinitierad redundansväxling, håller den sekundära länkade cachen sina synkroniserade data upp till den tidpunkten. Ingen återställningspunkt garanteras i sådana situationer.
Om du vill hämta en återställningspunkt exporterar du från båda cacheminnena. Du kan senare importera till den primära länkade cachen.
Kan jag använda PowerShell eller Azure CLI för att hantera geo-replikering?
Ja, geo-replikering kan hanteras med hjälp av Azure-portalen, PowerShell eller Azure CLI. Mer information finns i PowerShell-dokumenten eller Azure CLI-dokumenten.
Hur mycket kostar det att replikera mina data i Azure-regioner?
När du använder geo-replikering replikeras data från den primära länkade cachen till den sekundära länkade cachen. Dataöverföringen debiteras inte om de två länkade cacheminnena finns i samma region. Om de två länkade cacheminnena finns i olika regioner är dataöverföringsavgiften den utgående nätverkskostnaden för data som flyttas över någon av regionerna. Mer information finns i Prisinformation om bandbredd.
Varför misslyckades åtgärden när jag försökte ta bort min länkade cache?
Geo-replikerade cacheminnen och deras resursgrupper kan inte tas bort när de är länkade förrän du tar bort länken geo-replikering. Om du försöker ta bort resursgruppen som innehåller en eller båda länkade cacheminnen tas de andra resurserna i resursgruppen bort, men resursgruppen förblir i deleting
tillståndet och eventuella länkade cacheminnen i resursgruppen förblir i running
tillståndet. Om du vill ta bort resursgruppen helt och de länkade cacheminnena i den tar du bort länk till cacheminnena enligt beskrivningen i Ta bort en geo-replikeringslänk.
Vilken region ska jag använda för min sekundära länkade cache?
I allmänhet rekommenderar vi att cacheminnet finns i samma Azure-region som programmet som har åtkomst till den. För program med separata primära regioner och återställningsregioner rekommenderar vi att dina primära och sekundära cacheminnen finns i samma regioner. Mer information om parkopplade regioner finns i Metodtips – Azure-kopplade regioner.
Kan jag konfigurera en brandvägg med geo-replikering?
Ja, du kan konfigurera en brandvägg med geo-replikering. För att geo-replikering ska fungera tillsammans med en brandvägg kontrollerar du att den sekundära cachens IP-adress läggs till i den primära cachens brandväggsregler. Men om åtkomsten till det offentliga nätverket är inaktiverad i cacheminnet och endast privat slutpunkt är aktiverad, stöds inte användningen av brandväggen i cacheminnet.
Nästa steg
Läs mer om Azure Cache for Redis-funktioner.