Migrace z mezipamětí pro vkládání virtuální sítě do mezipamětí služby Private Link

Tento článek popisuje řadu přístupů k migraci instancí mezipaměti vložených do Azure Cache for Redis Virtual Network (VNet) do Azure Cache for Redis Private Link instancí mezipaměti.

Azure Private Link zjednodušuje síťovou architekturu a zabezpečuje připojení mezi koncovými body v Azure. K instanci služby Azure Cache for Redis se můžete připojit z virtuální sítě prostřednictvím privátního koncového bodu s přiřazenou privátní IP adresou v podsíti v rámci virtuální sítě. Mezi výhody použití Azure Private Link pro Azure Cache for Redis patří:

  • Flexibilita vrstvy – Azure Private Link se podporuje na všech našich úrovních; Basic, Standard, Premium, Enterprise a Enterprise Flash. Ve srovnání s Virtual Network injekce, která se nabízí pouze na naší úrovni Premium.

  • Zjednodušená správa pravidel skupiny zabezpečení sítě (NSG) – pravidla NSG není potřeba nakonfigurovat tak, aby dodržovala požadavky z Azure Cache for Redis.

  • podpora Azure Policy – Ujistěte se, že se všechny mezipaměti ve vaší organizaci vytvářejí pomocí Private Link a auditují stávající mezipaměti vaší organizace a ověřte, že všechny využívají Private Link.

Možnosti migrace

Injektáž virtuální sítě můžete přepnout na Private Link několika různými způsoby. V závislosti na tom, kde je mezipaměť a jak s ní vaše aplikace komunikuje, bude jedna metoda užitečnější než ostatní. Některé z často používaných strategií migrace jsou podrobně popsané níže.

Pokud používáte libovolnou kombinaci geografické replikace, clusteringu nebo virtuální sítě ARM:

Možnost Výhody Nevýhody
Duální zápis dat do dvou mezipamětí Žádná ztráta nebo výpadek dat. Nepřerušované operace existující mezipaměti. Jednodušší testování nové mezipaměti Potřebuje dvě mezipaměti po delší dobu.
Vytvoření nové mezipaměti Nejjednodušší je implementovat. Potřebujete znovu vyplnit data do nové mezipaměti, která nemusí fungovat s mnoha aplikacemi.
Export a import dat přes soubor RDB Vyžaduje se migrace dat. Některá data můžou být ztracena, pokud jsou po vygenerování souboru RDB zapsána do existující mezipaměti.
Migrace dat prostřednictvím kódu programu Úplná kontrola nad přesunem dat Vyžaduje vlastní kód.

Zápis do dvou mezipamětí Redis současně během období migrace

Místo přesouvání dat přímo mezi mezipamětí můžete aplikaci použít k zápisu dat do existující mezipaměti i do nové mezipaměti, kterou nastavujete. Aplikace bude na začátku číst data z existující mezipaměti. Pokud má nová mezipaměť potřebná data, přepnete aplikaci do této mezipaměti a vyřadíte starou mezipaměť. Řekněme například, že jako úložiště relací používáte Redis a relace aplikace jsou platné sedm dní. Po zápisu do dvou mezipamětí za týden budete mít jistotu, že nová mezipaměť obsahuje všechny informace o relaci, která nevypršela. Můžete se na něj bezpečně spolehnout z tohoto okamžiku, aniž byste se museli zabývat ztrátou dat.

Obecné kroky k implementaci této možnosti jsou:

  1. Vytvořte novou instanci Azure Cache for Redis s privátními koncovými body, které mají stejnou velikost jako (nebo větší než) existující mezipaměť.

  2. Upravte kód aplikace tak, aby se zapisuje do nových i původních instancí.

  3. Pokračujte ve čtení dat z původní instance, dokud se nová instance dostatečně nenaplní daty.

  4. Aktualizujte kód aplikace na čtení a zápis pouze z nové instance.

  5. Odstraňte původní instanci.

Vytvoření nového Azure Cache for Redis

Tento přístup technicky není migrací. Pokud ztráta dat není problém, nejjednodušší způsob, jak přejít na Azure Cache for Redis, je vytvořit instanci mezipaměti a připojit k ní aplikaci. Pokud například používáte Redis jako mezipaměť s doplňováním databází, můžete mezipaměť snadno znovu sestavit úplně od začátku.

Obecné kroky k implementaci této možnosti jsou:

  1. Vytvořte novou instanci Azure Cache for Redis s privátními koncovými body.

  2. Aktualizujte aplikaci tak, aby používala novou instanci.

  3. Odstraňte starou instanci Redis.

Export dat do souboru RDB a jeho import do Azure Cache for Redis (jenom Premium vrstvy)

Open-source Redis definuje standardní mechanismus pro pořízení snímku datové sady v paměti mezipaměti a jeho uložení do souboru. Tento soubor s názvem RDB může číst jiná mezipaměť Redis. Azure Cache for Redis úrovně Premium podporuje import dat do instance mezipaměti prostřednictvím souborů RDB. Soubor RDB můžete použít k přenosu dat z existující mezipaměti do Azure Cache for Redis.

Důležité

Formát souboru RDB se může měnit mezi verzemi Redis a nemusí udržovat zpětnou kompatibilitu. Verze mezipaměti Redis, ze které exportujete, by měla být stejná nebo menší než verze poskytovaná Azure Cache for Redis.

Obecné kroky k implementaci této možnosti jsou:

  1. Vytvořte novou instanci Azure Cache for Redis s privátními koncovými body v úrovni Premium, která má stejnou velikost jako (nebo větší než) existující mezipaměť.

  2. Uložte snímek existující mezipaměti Redis. Redis můžete nakonfigurovat tak, aby ukládaly snímky pravidelně, nebo ho spustit ručně pomocí příkazů SAVE nebo BGSAVE. Soubor RDB má ve výchozím nastavení název dump.rdb a bude umístěn v cestě zadané v konfiguračním souboru redis.conf .

    Poznámka

    Pokud migrujete data v rámci Azure Cache for Redis, přečtěte si tyto pokyny k exportu souboru RDB nebo použití rutiny exportu PowerShellu.

  3. Zkopírujte soubor RDB do účtu úložiště Azure v oblasti, ve které se nachází nová mezipaměť. Pro tuto úlohu můžete použít AzCopy.

  4. Pomocí těchto pokynů k importu nebo rutiny importu PowerShellu naimportujte soubor RDB do nové mezipaměti.

  5. Aktualizujte aplikaci tak, aby používala novou instanci mezipaměti.

Migrace prostřednictvím kódu programu

Vytvořte vlastní proces migrace prostřednictvím kódu programu čtení dat z existující mezipaměti a jejich zápisem do Azure Cache for Redis. Tento opensourcový nástroj lze použít ke kopírování dat z jedné Azure Cache for Redis instance do jiné. Tento nástroj je užitečný pro přesouvání dat mezi instancemi mezipaměti v různých oblastech azure Cache. K dispozici je také kompilovaná verze . Můžete také najít zdrojový kód, který je užitečným průvodcem pro psaní vlastního nástroje pro migraci.

Poznámka

Tento nástroj microsoft oficiálně nepodporuje.

Obecné kroky k implementaci této možnosti jsou:

  1. Vytvořte virtuální počítač v oblasti, ve které se nachází existující mezipaměť. Pokud je datová sada velká, zvolte relativně výkonný virtuální počítač, abyste zkrátili dobu kopírování.

  2. Vytvoření nové instance Azure Cache for Redis s privátními koncovými body

  3. Vyprázdněte data z nové mezipaměti, abyste měli jistotu, že je prázdná. Tento krok je povinný, protože samotný nástroj pro kopírování nepřepíše žádný existující klíč v cílové mezipaměti.

    Důležité

    Nezapomeňte vyprázdnit ze zdrojové mezipaměti.

  4. Pomocí aplikace, jako je opensourcový nástroj výše, automatizujte kopírování dat ze zdrojové mezipaměti do cíle. Nezapomeňte, že dokončení procesu kopírování může chvíli trvat v závislosti na velikosti datové sady.

Další kroky