Online migrace MongoDB do Azure DocumentDB pomocí rozšíření migrace Azure DocumentDB (Public Preview)

V tomto kurzu použijete rozšíření migrace Azure DocumentDB v editoru Visual Studio Code k vytváření a správě úloh migrace z místní nebo cloudové instance MongoDB do Azure DocumentDB. Toto rozšíření poskytuje vývojářské rozhraní pro provádění migrací bez přerušení služeb. Rozšíření eliminuje potřebu další infrastruktury a nabízí zabezpečené připojení, nulové náklady a podrobnou kontrolu nad tím, které databáze a kolekce se mají migrovat.

Tento článek se zaměřuje na použití integrovaného pracovního postupu rozšíření ke zjednodušení kroků migrace přímo v rámci Visual Studio Code. Tento přístup je ideální pro scénáře, ve kterých chcete zefektivnit a spravovat prostředí s minimální složitostí a maximální spolehlivostí.

Prerequisites

  • Předplatné Azure

  • Existující cluster Azure DocumentDB

Před zahájením migrace připravte svůj účet Azure DocumentDB a stávající instanci MongoDB na migraci.

Instance MongoDB (zdroj)

  • Dokončete posouzení premigrace a zjistěte, jestli mezi vaší zdrojovou instancí a cílovým účtem existují nekompatibility a upozornění.
  • Přidejte uživatele s oprávněními readAnyDatabaseclusterMonitor , pokud ještě neexistuje. Tyto přihlašovací údaje použijete při vytváření úloh migrace v rozšíření.

Azure DocumentDB (cíl)

  • Shromážděte přihlašovací údaje účtu Azure DocumentDB .
  • Ujistěte se, že uživatel má oprávnění createCollection, dropCollection, createIndex, insert a listCollections.

Minimální požadovaná oprávnění

Pomocí následujících minimálních rolí můžete spouštět a vytvářet migrační úlohy.

Minimální role Scope Platí pro režim připojení. Purpose
Reader Subscription Veřejné a soukromé Seznam předplatných a skupin prostředků Vyžaduje se pro každou úlohu migrace.
Přispěvatel Azure Database Migration Service Skupina zdrojů Veřejné a soukromé Vytvoření Azure Database Migration Service (DMS). Pro každou migraci nemusíte vytvářet nové DMS. Jedna dms pro každou oblast je dostatečná.
Contributor Subscription Veřejné a soukromé Zaregistrujte DMS v předplatném. Jedná se o jednorázovou aktivitu a dá se delegovat na jiného uživatele.
Správce uživatelských přístupů Virtuální síť Pouze soukromé Přiřaďte roli Network Contributor hlavní identitě objektu DMS. Jedná se o jednorázovou aktivitu na virtuální síť a dá se delegovat jinému uživateli.
Contributor Azure DocumentDB Veřejné a soukromé Spusťte migrační úlohu.

Podrobnosti o registraci poskytovatele prostředků Microsoft.DataMigration ve vašem předplatném najdete v tématu Register Microsoft.DataMigration resource provider in your subscription.

Important

Ověřování Microsoft Entra ID se v současné době nepodporuje v migračních úlohách. Použijte nativní ověřování DocumentDB.

Provedení migrace

Pokyny k plánování velikosti, rychlosti a přepnutí při migraci najdete v tématu Osvědčené postupy migrace.

Připojení ke zdroji

  1. Otevřete documentDB pro rozšíření VS Code .
  2. Přidejte server MongoDB, který chcete migrovat, do seznamu připojení databáze dokumentů .
  3. Vyberte Přidat nové připojení.
  4. Na navigačním panelu vyberte Připojovací řetězec.
  5. Vložte připojovací řetězec: mongodb://<YOUR_USERNAME>:<YOUR_PASSWORD>@localhost:10260/?tls=true&tlsAllowInvalidCertificates=true&authMechanism=SCRAM-SHA-256
  6. Ze seznamu připojení DocumentDB vyberte připojení a rozbalte ho pro navázání spojení.

Vyvolání rozšíření migrace

Rozšíření migrace můžete vyvolat z připojení k DocumentDB.

  1. Klikněte pravým tlačítkem myši na rozbalené (připojené) připojení.

  2. V místní nabídce vyberte Data Migration.

    Snímek obrazovky s místní nabídkou v editoru Visual Studio Code

  3. Na paletě příkazů vyberte Migration to Azure DocumentDB. Screenshot palety příkazů se seznamem nástrojů pro migraci v Visual Studio Code.

  4. Potom vyberte Migrate do Azure DocumentDB. Screenshot palety příkazů zobrazující možnost migrace v Visual Studio Code.

  5. Průvodce migrací vás provede procesem.

Vytvořte úlohu migrace

Úloha migrace se používá k migraci skupiny kolekcí ze zdroje do cílové databáze Azure DocumentDB. Průvodce pro vytvoření úlohy migrace má šest kroků.

Krok 1: Vytvoření úlohy

V tomto kroku zadáte základní podrobnosti pro úlohu.

  • Název úlohy: Zadejte popisný název pro identifikaci úlohy migrace.

  • Režim migrace: Vyberte režim migrace, který je nejvhodnější pro váš případ použití.

    • Online migrace kopíruje sběrná data a zajišťuje replikaci aktualizací během procesu. Tato metoda je výhodná s minimálními výpadky, což umožňuje nepřetržitý provoz pro provozní kontinuitu. Tuto možnost použijte, pokud jsou probíhající operace zásadní a snížení výpadků je prioritou.
    • Offline migrace zachytává snímek databáze na začátku a nabízí jednodušší a předvídatelný přístup. Funguje dobře, když používáte statickou kopii databáze, je přijatelná a aktualizace v reálném čase nejsou nezbytné.

    Important

    Aby se zajistilo úspěšné online migrace z MongoDB, musí být na zdrojovém serveru MongoDB povolená možnost ChangeStream. Bez changeStreamu se nezachytí žádné změny dat po počáteční migraci. Režim online migrace proto používejte pouze v případě, že je na zdrojovém serveru MongoDB povolená možnost ChangeStream.

  • Možnosti připojení: V závislosti na mandátu vaší organizace k zabezpečení a nastavení sítě zvolte možnost Veřejná a soukromá.

    • Použijte veřejný , pokud jsou zdrojové a cílové servery přístupné přes internet prostřednictvím veřejných IP adres. Umožňuje podporu služeb, které vyžadují externí přístupnost.
    • Privátní použijte, pokud jsou zdrojové nebo cílové servery přístupné výhradně prostřednictvím privátních IP adres ve virtuální síti. Zvyšuje zabezpečení tím, že eliminuje vystavení veřejnému internetu.

Pokračujte výběrem tlačítka Další.

Snímek obrazovky s krokem vytvoření úlohy v průvodci

Krok 2: Výběr cíle

V tomto kroku vyberete existující účet Azure DocumentDB a zadáte jeho připojovací řetězec.

  1. Ve výběrovém seznamu vyberte předplatné, skupinu prostředků a účet Azure DocumentDB.

  2. Zadejte připojovací řetězec k účtu Azure DocumentDB.

  3. Zkontrolujte, zda je IP adresa uvedená na obrazovce povolená na firewallu Azure DocumentDB.

  4. Pokračujte výběrem tlačítka Další.

Snímek obrazovky s vybraným cílovým krokem v průvodci

Krok 3: Výběr služby Database Migration Service (DMS)

Azure Database Migration Service je služba, která migruje data do datových platforem Azure a využívá cloudovou infrastrukturu pro přenos dat, a ne spoléhá na místní prostředky. V rozevíracím seznamu zvolte existující instanci služby Azure Database Migration Service nebo vyberte Vytvořit DMS a vytvořte novou službu migrace.

Important

Ujistěte se, že poskytovatel prostředků Microsoft.DataMigration je zaregistrovaný ve vašem předplatném. Stačí to udělat jenom jednou pro každé předplatné.

Pokračujte výběrem tlačítka Další.

Screenshot kroku výběru Database Migration Service v průvodci.

Krok 4: Konfigurace připojení

Tato obrazovka závisí na režimu připojení, který jste zvolili v kroku 1.

Veřejné připojení

Ve veřejném připojení se úloha migrace připojí ke zdroji a cíli pomocí veřejného internetu. Abyste umožnili komunikaci, musíte aktualizovat zdrojový a cílový firewall. Pokud chcete povolit komunikaci ze serverů DMS, přidejte IP adresy uvedené na obrazovce do zdrojových a cílových firewallů. Další informace o síťovém modelu najdete v tématu Veřejné připojení. Pokyny ke konfiguraci brány firewall najdete v tématu konfigurování Azure clusteru DocumentDB firewallu.

Snímek obrazovky s krokem konfigurace veřejného připojení v průvodci

Privátní připojení

V privátním připojení se úloha migrace spouští v rámci své virtuální sítě. K bezpečné komunikaci s vašimi virtuálními sítěmi uplatňujeme propojování virtuálních sítí. Další informace o síťovém modelu najdete v tématu Privátní připojení.

  1. Nástroj umožňuje navázání peeringu se dvěma virtuálními sítěmi, jednou pro zdroj a druhou pro cíl. V závislosti na konfiguraci sítě vyberte z rozevíracích seznamů předplatné, skupinu prostředků a virtuální sítě.

  2. V části Konfigurace DMS vyberte rozsah CIDR, který není v konfliktu s vašimi virtuálními sítěmi.

  3. Spuštěním skriptů PowerShellu, které jsou k dispozici na obrazovce, povolte integraci virtuální sítě.

  4. Pokračujte výběrem tlačítka Další.

Snímek obrazovky s krokem konfigurace privátního připojení v průvodci

Krok 5: Výběr kolekcí

V tomto kroku vyberete kolekce, které se mají zahrnout do migračního úkolu. Vyberte ze seznamu kolekcí pomocí nabízených možností hledání. Kolekce, které již v cíli existují, jsou automaticky označeny ano ve sloupci Existuje v cíli .

Tip

Nezapomeňte vybrat všechny kolekce, které chcete zahrnout, protože po vytvoření úlohy migrace není možné přidat seznam kolekcí.

Pokračujte výběrem tlačítka Další.

Snímek obrazovky s krokem výběru kolekcí v průvodci.

Krok 6: Potvrzení a spuštění

Před výběrem Zahájit migraci zkontrolujte podrobnosti migrace. Pokud je potřeba aktualizovat podrobnosti, použijte tlačítko Upravit podrobnosti .

Po úspěšném vytvoření úlohy migrace budete automaticky přesměrováni na stránku Zobrazit existující úlohy .

Tip

Úlohy migrace dat se spouštějí ve službě Azure Database Migration Service. Proto během migrace dat nemusíte být připojení ke zdrojovému a cílovému prostředí. Stav se na řídicím panelu aktualizuje v častých intervalech.

Monitorování existujících úloh migrace

Pomocí karty Zobrazit existující úlohy můžete monitorovat stav migrace inicializovaných úloh. Úlohy jsou uvedené na základě vybraného DMS. Ke změně výběru použijte tlačítko Změnit DMS .

Stav se automaticky aktualizuje v častých intervalech. Offline úlohy se automaticky dokončí, jakmile se vybrané snímky kolekce zkopírují do cíle. Online migrace však musí být provedeny ručně.

Snímek obrazovky zobrazení existujících úloh

Pokud chcete zobrazit stav kolekce, vyberte řádek z tabulky.

Snímek obrazovky se stavem podle kolekcí pro offline migraci

Monitorování online migrací

Online migrace, na rozdíl od offline migrací, se automaticky nedokončí. Místo toho běží nepřetržitě, dokud nejsou manuálně ukončeny výběrem Cutover.

Pokud chcete online migraci dokončit, postupujte podle těchto kroků v daném pořadí:

  1. Tlačítko Cutover se povolí, jakmile je dokončeno počáteční načítání dat pro všechny kolekce. V této fázi je úloha ve fázi replikace a průběžně kopíruje aktualizace ze zdrojové instance do cílové instance, aby se zachovala aktuálnost s nejnovějšími změnami.

  2. Až budete připraveni provést přímou migraci, zastavte všechny příchozí transakce do migrovaných zdrojových kolekcí.

  3. Mezera Replikace je zobrazena jako časová mezera mezi poslední aktualizací a aktuálním časem.

  4. Monitorujte změny replikace v tabulce a počkejte, až se metrika Počet přehrání změn replikace stabilizuje. Stabilní metrika Změny replikace byly provedeny znamená, že všechny aktualizace ze zdroje se úspěšně zkopírují do cíle.

  5. Vyberte Cutover, když je rozdíl replikace minimální pro všechny kolekce a metrika změny replikace jsou přehrány je stabilní.

  6. Ručně ověřte, že počet řádků je stejný mezi zdrojovými a cílovými kolekcemi.

Note

Provedení operace přepnutí bez ověření, že zdroj a cíl jsou synchronizovány, může vést ke ztrátě dat.

Snímek obrazovky se stavem shromažďování informací o online migraci

Scénáře migrace

Rozšíření migrace Azure DocumentDB podporuje několik zdrojových prostředí, včetně instancí MongoDB spuštěných v Azure, místních datacentrech a dalších poskytovatelích cloudu. Toto rozšíření poskytuje flexibilní možnosti připojení, aby vyhovovalo různým konfiguracím sítě a požadavkům na zabezpečení.

Podporovaná zdrojová prostředí

Následující tabulka shrnuje podporované zdroje migrace:

Zdrojové prostředí Description
V rámci Azure Instance MongoDB spuštěné na Azure Virtual Machines nebo jiných službách hostovaných Azure
On-premises Servery MongoDB spuštěné v místním datacentru nebo privátní infrastruktuře
Jiní poskytovatelé cloudu Instance MongoDB hostované na jiných cloudových platformách

Veřejné připojení

V režimu veřejného připojení se Azure Database Migration Service (DMS) připojuje ke zdrojovému a cílovému serveru přes veřejný internet. DMS poskytuje statické IP adresy, které musíte přidat do seznamů povolení firewallu, a to jak na zdrojovém, tak na cílovém serveru. DMS používá sdílenou veřejnou virtuální síť pro všechny migrace v dané oblasti. I když je tato virtuální síť sdílená mezi zákazníky, každá úloha migrace běží na vlastním izolovaném privátním pracovním uzlu, aby se zajistila izolace na úrovni úlohy.

Veřejné připojení použijte, když:

  • Vaše zdrojové a cílové servery jsou přístupné prostřednictvím veřejných IP adres.
  • Zásady zabezpečení vaší organizace umožňují připojení přes veřejný internet.
  • Potřebujete jednodušší nastavení bez konfigurace virtuální sítě.

Diagram znázorňující síťovou architekturu pro veřejné připojení

Povolení veřejného připojení:

  1. V průvodci migrací vyberte Veřejný jako režim připojení.

  2. Poznamenejte si statické IP adresy zobrazené v průvodci.

  3. Přidejte tyto IP adresy do seznamu povolených na zdrojovém serveru MongoDB.

  4. Přidejte tyto IP adresy do brány firewall Azure DocumentDB.

Privátní připojení

V režimu privátního připojení zřídí DMS vyhrazenou privátní virtuální síť pro každou úlohu migrace a vytvoří partnerský vztah s vašimi zdrojovými a cílovými virtuálními sítěmi. To znamená, že každá úloha má jak izolované pracovní uzly, tak i izolovanou síť, což zajišťuje, že nedochází k přenosu dat mezi úlohami a mezi zákazníky nejsou žádné sdílené síťové cesty.

Rozšíření podporuje až dvě virtuální sítě:

  • Zdrojová virtuální síť: Virtuální síť, ve které je váš zdrojový server MongoDB přístupný.
  • Target virtual network: Virtuální síť, ve které je váš cluster Azure DocumentDB přístupný.

Privátní připojení použijte v případech:

  • Váš zdrojový nebo cílový server není přístupný přes veřejný internet.
  • Vaše organizace vyžaduje, aby veškerý provoz procházel privátními sítěmi.
  • Musíte se vyhnout veřejnému internetovému vystavení.

Od jiných poskytovatelů cloudu nebo od místních poskytovatelů

Pomocí upřednostňovaných nástrojů VPN můžete nastavit síťové připojení mezi Azure a zdrojovým prostředím v jiném cloudu nebo místně.

Diagram znázorňující síťovou architekturu pro privátní připojení od jiného poskytovatele cloudu nebo místního prostředí

Z privátního koncového bodu v Azure

Nastavte privátní koncové body pro zdrojové a cílové virtuální sítě.

Diagram znázorňující architekturu sítě pro privátní připojení v rámci Azure

Povolení privátního připojení:

  1. V průvodci migrací vyberte jako režim připojení privátní .

  2. Vyberte předplatné, skupinu prostředků a virtuální síť pro vaše zdrojové prostředí.

  3. Vyberte předplatné, skupinu prostředků a virtuální síť pro cílové prostředí.

  4. V části Konfigurace DMS vyberte rozsah CIDR, který není v konfliktu s vašimi stávajícími virtuálními sítěmi.

  5. Spusťte skripty PowerShellu, které jsou součástí průvodce, pro povolení integrace virtuální sítě a peeringu.

Important

Při použití privátního přístupu může jedna virtuální síť současně podporovat pouze jednu aktivní úlohu migrace. Pokud chcete spustit více souběžných úloh, použijte pro každou úlohu různé virtuální sítě.

Zaregistrujte poskytovatele prostředků Microsoft.DataMigration ve vašem předplatném.

Pokud chcete zajistit, aby byl poskytovatel prostředků Microsoft.DataMigration ve vašem předplatném zaregistrovaný, můžete postupovat takto:

Azure Portal

  1. Přejděte na portál Azure a přejděte do svého předplatného.

  2. V nabídce vlevo vyberte v části Nastaveníposkytovatele prostředků.

  3. Vyhledejte Microsoft.DataMigration ve vyhledávacím poli v horní části.

  4. Pokud není zaregistrovaný, vyberte ho a vyberte tlačítko Zaregistrovat .

Azure CLI

  1. Otevřete Azure Cloud Shell nebo místní terminál.

  2. Spuštěním následujícího příkazu zaregistrujte poskytovatele prostředků:

    az provider register --namespace Microsoft.DataMigration
    

PowerShell

  1. Otevřete Azure Cloud Shell nebo místní PowerShell.

  2. Spuštěním následujícího příkazu zaregistrujte poskytovatele prostředků:

    Register-AzResourceProvider -ProviderNamespace "Microsoft.DataMigration"
    

časté otázky

Proč v kroku výběru kolekce chybí zobrazení, když Azure DocumentDB podporuje zobrazení?

Azure DocumentDB podporuje vytváření nových zobrazení. Rozšíření migrace ale neposkytuje podporu pro migraci existujících zobrazení.

Po dokončení migrace můžete zobrazení kdykoli znovu vytvořit.

Které kolekce a databáze se při migraci z MongoDB do Azure DocumentDB přeskočí?

Následující databáze a kolekce jsou považovány za interní pro MongoDB:

Kategorie Description
Databáze admin, lokální, nastavení systému
Kolekce Libovolná kolekce s předponou system.

Spouští se úlohy migrace místně na mém počítači?

Průvodce migrací ve VS Code vyžaduje síťové připojení z místního počítače k zdrojovému i cílovému prostředí. Toto připojení se používá k vytvoření výčtu databází a kolekcí a k odeslání úlohy migrace. Po odeslání úlohy můžete VS Code zavřít nebo se odpojit od zdrojového a cílového prostředí.

Migrace dat se provádí zcela pomocí Azure Database Migration Service (DMS), služby hostované Azure, která spravuje veškerý přesun dat. DMS při provádění úloh nespoléhá na místní počítač nebo VS Code, takže po odeslání úlohy se nevyžaduje místní připojení.

Můžu během migrace přejmenovat databáze a kolekce?

Rozšíření nepodporuje přejmenování databáze a kolekce během migrace.

Jak mám nakonfigurovat brány firewall zdrojového serveru, aby nedocházelo k problémům s připojením?

Požadovaná konfigurace sítě závisí na vybraném režimu připojení:

  • Veřejný režim: Musíte povolit IP adresy zobrazené v průvodci na obou zdrojových i cílových firewallech, aby byla umožněna komunikace.
  • Privátní režim: Musíte povolit integraci virtuální sítě , aby servery DMS mohly bezpečně komunikovat se zdrojovými a cílovými koncovými body v rámci virtuální sítě.

Také se odkazujte na VS Code connectivity.

Kolik databází a kolekcí můžu migrovat v rámci jedné migrace?

Do jedné migrace můžete zahrnout neomezený počet kolekcí.

Kolik úloh migrace můžu spustit současně?

Při použití veřejného přístupu můžete spustit více úloh migrace. Při použití privátního přístupu však může jedna virtuální síť podporovat současně pouze jednu aktivní úlohu. Pokud chcete spouštět více úloh s privátním přístupem, musíte pro každou úlohu použít jinou virtuální síť .

Jaký typ protokolů rozšíření generuje?

Rozšíření zaznamenává chyby, upozornění a další diagnostické protokoly ve výchozím adresáři protokolů:

  • Windows - C:\Users\<username>\.dmamongo\logs\
  • Linux - ~/.dmamongo/logs
  • Macos - /Users/<username>/.dmamongo/logs

Další kroky