Migrera MongoDB till Azure DocumentDB online med Azure DocumentDB-migreringstillägget (offentlig förhandsversion)

I den här handledningen använder du Azure Cosmos DB Migration Extension i Visual Studio Code till att skapa och hantera migreringsjobb från en lokal eller en molnbaserad instans av MongoDB till Azure Cosmos DB. Det här tillägget tillhandahåller ett utvecklarvänligt gränssnitt för att utföra migreringar utan avbrott i tjänsten. Tillägget eliminerar behovet av ytterligare infrastruktur och erbjuder säker anslutning, nollkostnadsanvändning och detaljerad kontroll över vilka databaser och samlingar som ska migreras.

Fokus i den här artikeln ligger på att använda tilläggets integrerade arbetsflöde för att förenkla migreringsstegen direkt i Visual Studio Code. Den här metoden är perfekt för scenarier där du vill ha en strömlinjeformad, hanterad upplevelse med minimal komplexitet och maximal tillförlitlighet.

Prerequisites

  • En prenumeration på Azure

  • Ett befintligt Azure DocumentDB-kluster

Innan du påbörjar migreringen förbereder du ditt Azure DocumentDB-konto och din befintliga MongoDB-instans för migrering.

MongoDB-instans (källa)

  • Fullfölj utvärderingen före migreringen för att avgöra om det finns inkompatibiliteter och varningar mellan din källinstans och målkonto.
  • Lägg till en användare med readAnyDatabase och clusterMonitor behörigheter, såvida det inte redan finns någon. Du använder den här autentiseringsuppgiften när du skapar migreringsjobb i tillägget.

Azure DocumentDB (mål)

  • Samla in autentiseringsuppgifterna för Azure DocumentDB-kontot.
  • Se till att användaren har createCollectionbehörigheterna , dropCollection, createIndex, insertoch listCollections .

Nödvändiga minimibehörigheter

Använd följande minimiroller för att skapa och köra migreringsjobb.

Minsta roll Scope Gäller för anslutningsläge Avsikt
Reader Subscription Offentlig och privat Lista prenumerationer och resursgrupper. Krävs för varje migreringsjobb.
Azure Database Migration Service medverkare Resursgrupp Offentlig och privat Skapa Azure Database Migration Service (DMS). Du behöver inte skapa en ny DMS för varje migrering. En DMS per region räcker.
Contributor Subscription Offentlig och privat Registrera DMS i prenumerationen. Det här är en engångsaktivitet och kan delegeras till en annan användare.
Administratör för användaråtkomst Virtuellt nätverk Endast privat Tilldela rollen Network Contributor till DMS-objektets principal. Det här är en engångsaktivitet per virtuellt nätverk och kan delegeras till en annan användare.
Contributor Azure DocumentDB Offentlig och privat Starta migreringsjobbet.

Information om providerregistrering finns i Register Microsoft. DataMigration-resursprovider i din prenumeration.

Important

Microsoft Entra ID-autentisering stöds för närvarande inte i migreringsjobb. Använd intern DocumentDB-autentisering.

Utföra migreringen

För vägledning för planering av migreringsstorlek, hastighet och övergång, se Bästa praxis för migrering.

Ansluta till källan

  1. Öppna tillägget DocumentDB för VS Code .
  2. Lägg till den MongoDB-server som du vill migrera till listan Med dokumentdatabasanslutningar .
  3. Välj Lägg till ny anslutning.
  4. I navigeringsfältet väljer du Anslutningssträng.
  5. Klistra in din anslutningssträng: mongodb://<YOUR_USERNAME>:<YOUR_PASSWORD>@localhost:10260/?tls=true&tlsAllowInvalidCertificates=true&authMechanism=SCRAM-SHA-256
  6. Från DocumentDB-anslutningarna väljer du anslutningen och expanderar den för att ansluta.

Anropa migreringstillägget

Du kan anropa migreringstillägget från DocumentDB-anslutningarna.

  1. Högerklicka på en expanderad (ansluten) anslutning.

  2. Välj Datamigrering på snabbmenyn.

    Skärmbild av snabbmenyn i Visual Studio Code.

  3. På kommandopaletten väljer du Migration till Azure DocumentDB. Skärmbild av kommandopaletten med migreringsverktyg i Visual Studio Code.

  4. Välj sedan Migrera till Azure DocumentDB. Skärmbild av kommandopaletten som visar migreringsalternativet i Visual Studio Code.

  5. En migreringsguide vägleder dig genom processen.

Skapa ett migreringsjobb

Ett migreringsjobb används för att migrera en grupp samlingar från källan till målet Azure DocumentDB. Guiden skapa migreringsjobb har sex steg.

Steg 1: Skapa jobb

I det här steget anger du grundläggande information för jobbet.

  • Jobbnamn: Ange ett användarvänligt namn för att identifiera migreringsjobbet.

  • Migreringsläge: Välj det migreringsläge som passar bäst för ditt användningsfall.

    • Onlinemigrering kopierar insamlingsdata, vilket säkerställer att uppdateringar också replikeras under processen. Den här metoden är fördelaktig med minimal stilleståndstid, vilket möjliggör kontinuerliga åtgärder för affärskontinuitet. Använd det här alternativet när pågående åtgärder är avgörande, och att minska stilleståndstiden är en prioritet.
    • Offlinemigrering fångar en ögonblicksbild av databasen i början och erbjuder en enklare och förutsägbar metod. Det fungerar bra när du använder en statisk kopia av databasen och realtidsuppdateringar är inte nödvändiga.

    Important

    För att säkerställa lyckade onlinemigreringar från MongoDB måste ChangeStream vara aktiverat på MongoDB-källservern. Utan ChangeStream registreras inga ändringar som gjorts i data efter den första migreringen. Använd därför endast onlinemigreringsläget om ChangeStream är aktiverat på din MongoDB-källserver.

  • Anslutning: Beroende på organisationens säkerhetsmandat och nätverkskonfiguration väljer du från Offentlig och Privat.

    • Använd Offentlig när käll- och målservrarna är tillgängliga via Internet via offentliga IP-adresser. Det möjliggör stöd för tjänster som kräver extern tillgänglighet.
    • Använd Privat när antingen käll- eller målservrarna är tillgängliga exklusivt via privata IP-adresser i ett virtuellt nätverk. Det förbättrar säkerheten genom att eliminera exponering för det offentliga Internet.

Klicka på Nästa när du vill fortsätta.

Skärmbild av skapa jobb-steget i guiden.

Steg 2: Välj mål

I det här steget väljer du ett befintligt Azure DocumentDB-konto och anger dess anslutningssträng.

  1. Välj prenumeration, resursgrupp och Azure DocumentDB-konto i listrutorna.

  2. Ange anslutningssträngen till Azure DocumentDB-kontot.

  3. Kontrollera att IP-adressen som anges på skärmen är tillåten i Azure DocumentDB-brandväggen.

  4. Klicka på Nästa när du vill fortsätta.

Skärmbild av det valda målsteget i guiden.

Steg 3: Välj Database Migration Service (DMS)

Azure Database Migration Service är en tjänst som migrerar data till och från Azure-dataplattformar med hjälp av molninfrastruktur för dataöverföring, i stället för att förlita sig på lokala resurser. Välj en befintlig Azure Database Migration Service-instans i listrutan eller välj Skapa DMS för att skapa en ny migreringstjänst.

Important

Kontrollera att resursprovidern Microsoft.DataMigration är registrerad i din prenumeration. Du behöver bara göra det en gång per prenumeration.

Klicka på Nästa när du vill fortsätta.

Skärmbild av steget för att välja databasmigreringstjänst i guiden.

Steg 4: Konfigurera anslutning

Den här skärmen beror på vilket anslutningsläge du valde i steg 1.

Offentlig anslutning

Vid allmän uppkoppling ansluter migreringsjobbet till källan och målet med hjälp av det offentliga internet. För att aktivera kommunikation måste du uppdatera käll- och målbrandväggarna. Om du vill aktivera kommunikation från DMS-servrarna lägger du till IP-adresserna som anges på skärmen i käll- och målbrandväggarna. Mer information om nätverksmodellen finns i Offentlig anslutning. Vägledning för brandväggskonfiguration finns i konfigurera Azure DocumentDB-kluster brandvägg.

Skärmbild av konfigurationssteget för offentlig anslutning i guiden.

Privat anslutning

I privat anslutning körs migreringsjobbet i det virtuella nätverket. För att kommunicera säkert med dina virtuella nätverk använder vi virtuell nätverkspeering. Mer information om nätverksmodellen finns i Privat anslutning.

  1. Verktyget möjliggör peering med två virtuella nätverk, ett för källan och det andra för målet. Beroende på nätverkskonfigurationen väljer du prenumeration, resursgrupp och virtuella nätverk i listrutorna.

  2. I avsnittet DMS-konfiguration väljer du ett CIDR-intervall som inte är i konflikt med dina virtuella nätverk.

  3. Kör PowerShell-skripten som finns på skärmen för att aktivera integrering av virtuella nätverk.

  4. Klicka på Nästa när du vill fortsätta.

Skärmbild av konfigurationssteget för privat anslutning i guiden.

Steg 5: Välj samlingar

I det här steget väljer du de samlingar som ska ingå i migreringsjobbet. Välj i listan över samlingar med hjälp av sökalternativen. Samlingar som redan finns i målet markeras automatiskt Som Ja i kolumnen Finns i mål .

Tips/Råd

Se till att markera alla samlingar som du vill inkludera eftersom samlingslistan inte kan läggas till när migreringsjobbet har skapats.

Klicka på Nästa när du vill fortsätta.

Skärmbild av steget för att välja samlingar i guiden.

Steg 6: Bekräfta och starta

Granska information om migreringsjobbet innan du väljer Starta migrering. Om informationen behöver uppdateras använder du knappen Redigera information .

När migreringsjobbet har skapats omdirigeras du automatiskt till sidan Visa befintliga jobb

Tips/Råd

Datamigreringsuppgifterna körs i Azure Database Migration Service. Därför behöver du inte vara ansluten till käll- och målmiljöerna under datamigreringen. Statusen uppdateras på instrumentpanelen med jämna mellanrum.

Övervaka befintliga migreringsjobb

Använd fliken Visa befintliga jobb för att övervaka migreringsstatusen för initierade jobb. Jobben visas baserat på den valda DMS. Använd knappen Ändra DMS för att ändra ditt val.

Statusen uppdateras automatiskt med jämna mellanrum. Offlinejobb slutförs automatiskt när de valda samlingsögonblicksbilderna kopieras till målet. Onlinemigreringarna måste dock skäras ned manuellt.

Skärmbild av skärmen Visa befintliga jobb.

Om du vill visa samlingsvis status väljer du en rad i tabellen.

Skärmbild som visar samlingsvis status för offlinemigrering.

Övervaka onlinemigreringar

Onlinemigreringar, till skillnad från offlinemigreringar, slutförs inte automatiskt. I stället körs de kontinuerligt tills de har slutförts manuellt genom att välja Cutover.

Följ dessa steg i den angivna ordningen för att slutföra onlinemigreringen:

  1. Övergångsknappen aktiveras när den första dataöverföringen har slutförts för alla samlingar. I det här skedet är jobbet i replikeringsfasen och kopierar kontinuerligt uppdateringar från källinstansen till målinstansen för att hålla det up-to-date med de senaste ändringarna.

  2. När du är redo att utföra snabbmigreringen stoppar du alla inkommande transaktioner till källsamlingarna som migreras.

  3. Replikeringsgapet visar tidsgapet mellan den senaste uppdateringen och den aktuella tiden.

  4. Övervaka replikeringsändringarna i tabellen och vänta tills måttet Spelade replikeringsändringar stabiliseras. Ett stabilt mått för replikeringsändringar som spelas upp anger att alla uppdateringar från källan har kopierats till målet.

  5. Välj Övergång när replikeringsgapet är minimalt för alla samlingar och parametern Utförda replikeringsändringar är stabil.

  6. Verifiera manuellt att radantalet är detsamma mellan käll- och målsamlingarna.

Anmärkning

Om du utför övergången utan att verifiera att källan och målet är synkroniserade kan det resultera i dataförlust.

Skärmbild som visar samlingsvis status för onlinemigrering

Migreringsscenarier

Azure DocumentDB Migration Extension stöder flera källmiljöer, inklusive MongoDB-instanser som körs i Azure, lokala datacenter och andra molnleverantörer. Tillägget tillhandahåller flexibla anslutningsalternativ för olika nätverkskonfigurationer och säkerhetskrav.

Källmiljöer som stöds

I följande tabell sammanfattas de migreringskällor som stöds:

Källmiljö Description
Inom Azure MongoDB-instanser som körs på Azure Virtual Machines eller andra Azure värdbaserade tjänster
On-premises MongoDB-servrar som körs i ditt lokala datacenter eller i en privat infrastruktur
Andra molnleverantörer MongoDB-instanser som finns på andra molnplattformar

Offentlig anslutning

I offentligt anslutningsläge ansluter Azure Database Migration Service (DMS) till dina käll- och målservrar via det offentliga Internet. DMS tillhandahåller statiska IP-adresser som du lägger till i listan över tillåtna brandväggar på både käll- och målservrarna. DMS använder ett delat offentligt virtuellt nätverk för alla migreringar inom en viss region. Även om det här virtuella nätverket delas mellan kunder körs varje migreringsjobb på en egen isolerad privat arbetsnod för att säkerställa isolering på jobbnivå.

Använd offentlig anslutning när:

  • Dina käll- och målservrar är tillgängliga via offentliga IP-adresser.
  • Organisationens säkerhetsprinciper tillåter anslutningar via det offentliga Internet.
  • Du behöver en enklare installation utan konfiguration av virtuella nätverk.

Diagram som visar nätverksarkitektur för offentlig anslutning.

Så här aktiverar du offentlig anslutning:

  1. I migreringsguiden väljer du Offentligt som anslutningsläge.

  2. Observera de statiska IP-adresser som visas i guiden.

  3. Lägg till dessa IP-adresser i listan över tillåtna brandväggar på din MongoDB-källserver.

  4. Lägg till dessa IP-adresser i Azure DocumentDB-brandväggen.

Privat anslutning

I privat anslutningsläge etablerar DMS ett dedikerat privat virtuellt nätverk för varje migreringsjobb och ansluter det till dina virtuella käll- och målnätverk. Det innebär att varje jobb har både isolerade arbetsnoder och ett isolerat nätverk, vilket säkerställer att ingen trafik passerar mellan jobb och att det inte finns några delade nätverksvägar mellan kunder.

Tillägget stöder upp till två virtuella nätverk:

  • Virtuellt källnätverk: Det virtuella nätverk där din MongoDB-källserver är tillgänglig.
  • Target virtual network: Det virtuella nätverk där ditt Azure DocumentDB-kluster är tillgängligt.

Använd privat anslutning när:

  • Käll- eller målservrarna är inte tillgängliga via det offentliga Internet.
  • Din organisation kräver att all trafik flödar genom privata nätverk.
  • Du måste undvika offentlig internetexponering.

Från andra molnleverantörer eller lokala leverantörer

Använd dina önskade VPN-verktyg för att konfigurera nätverksanslutning mellan Azure och källmiljön i ett annat moln eller lokalt.

Diagram som visar nätverksarkitektur för privat anslutning från en annan molnleverantör eller lokalt.

Från en privat slutpunkt i Azure

Konfigurera privata slutpunkter för de virtuella käll- och målnätverken.

Diagram som visar nätverksarkitektur för privat anslutning inom Azure

Så här aktiverar du privat anslutning:

  1. I migreringsguiden väljer du Privat som anslutningsläge.

  2. Välj prenumeration, resursgrupp och virtuellt nätverk för källmiljön.

  3. Välj prenumeration, resursgrupp och virtuellt nätverk för målmiljön.

  4. I avsnittet DMS-konfiguration väljer du ett CIDR-intervall som inte är i konflikt med dina befintliga virtuella nätverk.

  5. Kör PowerShell-skripten i guiden för att aktivera integrering och peering för virtuella nätverk.

Important

När du använder privat åtkomst kan ett enda virtuellt nätverk endast stödja ett aktivt migreringsjobb i taget. Om du vill köra flera samtidiga jobb använder du olika virtuella nätverk för varje jobb.

Registrera Microsoft.DataMigration-resursprovidern i din prenumeration

För att säkerställa att resursprovidern Microsoft.DataMigration är registrerad i din prenumeration kan du följa dessa steg:

Azure Portal

  1. Gå till Azure-portalen och gå till din prenumeration.

  2. I den vänstra menyn väljer du Resursprovidrar under Inställningar.

  3. Sök efter Microsoft.DataMigration i sökrutan högst upp.

  4. Om den inte är registrerad väljer du den och väljer knappen Registrera .

Azure CLI

  1. Öppna Azure Cloud Shell eller din lokala terminal.

  2. Registrera resursprovidern genom att köra följande kommando:

    az provider register --namespace Microsoft.DataMigration
    

PowerShell

  1. Öppna Azure Cloud Shell eller din lokala PowerShell.

  2. Registrera resursprovidern genom att köra följande kommando:

    Register-AzResourceProvider -ProviderNamespace "Microsoft.DataMigration"
    

FAQ

Varför saknas vyer i skärmsteget välj samling när Azure DocumentDB stöder vyer?

Azure DocumentDB stöder skapandet av nya vyer. Migreringstillägget stöder dock inte migrering av befintliga vyer.

När migreringen är klar kan du alltid återskapa vyerna.

Vilka samlingar och databaser utelämnas vid migrering från MongoDB till Azure DocumentDB?

Följande databaser och samlingar anses vara interna för MongoDB:

Kategori Description
Databaser administratör, lokal, systemkonfiguration
Samlingar Alla samlingar med prefix system.

Körs migreringsjobben lokalt på min dator?

Migreringsguiden i VS Code kräver nätverksanslutning från din lokala dator till både käll- och målmiljöerna. Den här anslutningen används för att räkna upp databaser och samlingar och för att skicka migreringsjobbet. När jobbet har skickats kan du stänga VS Code eller koppla från käll- och målmiljöerna.

Datamigreringen utförs helt av Azure Database Migration Service (DMS), en Azure värdbaserad tjänst som hanterar all dataflytt. DMS förlitar sig inte på din lokala dator eller VS Code för att köra jobb, så lokal anslutning är inte nödvändig efter inlämning av jobb.

Kan jag byta namn på databaser och samlingar under migreringen?

Tillägget stöder inte databas- och samlingsbyte under migreringen.

Hur ska jag konfigurera mina källserverbrandväggar för att undvika anslutningsproblem?

Vilken nätverkskonfiguration som krävs beror på det valda anslutningsläget:

  • Offentligt läge: Du måste tillåta att IP-adresserna som visas i guiden på både käll- och målbrandväggarna aktiverar kommunikation.
  • Privat läge: Du måste aktivera integrering av virtuella nätverk så att DMS-servrarna på ett säkert sätt kan kommunicera med käll- och målslutpunkterna i det virtuella nätverket.

Se även VS Code-anslutning

Hur många databaser och samlingar kan jag migrera i en enda migrering?

Du kan inkludera obegränsat antal samlingar i en enda migrering.

Hur många migreringsjobb kan jag köra samtidigt?

Du kan köra flera migreringsjobb när du använder offentlig åtkomst. Men när du använder privat åtkomst kan ett enda virtuellt nätverk endast ha stöd för ett aktivt jobb i taget. Om du vill köra flera jobb med privat åtkomst måste du använda olika virtuella nätverk för varje jobb.

Vilken typ av loggar genererar tillägget?

Tillägget registrerar fel, varningar och andra diagnostikloggar i standardloggkatalogen:

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

Nästa steg