Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
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
- Om du inte har någon Azure-prenumeration kan du skapa ett kostnadsfritt konto
Ett befintligt Azure DocumentDB-kluster
- Om du inte har något kluster skapar du ett nytt kluster
- Installera Azure DocumentDB Migration Extension på datorn. Detta installerar automatiskt dess förutsättning, tillägget DocumentDB för Visual Studio Code.
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
readAnyDatabaseochclusterMonitorbehö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,insertochlistCollections.
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
- Öppna tillägget DocumentDB för VS Code .
- Lägg till den MongoDB-server som du vill migrera till listan Med dokumentdatabasanslutningar .
- Välj Lägg till ny anslutning.
- I navigeringsfältet väljer du Anslutningssträng.
- Klistra in din anslutningssträng:
mongodb://<YOUR_USERNAME>:<YOUR_PASSWORD>@localhost:10260/?tls=true&tlsAllowInvalidCertificates=true&authMechanism=SCRAM-SHA-256 - 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.
Högerklicka på en expanderad (ansluten) anslutning.
Välj Datamigrering på snabbmenyn.
På kommandopaletten väljer du Migration till Azure DocumentDB.
Välj sedan Migrera till Azure DocumentDB.
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.
Steg 2: Välj mål
I det här steget väljer du ett befintligt Azure DocumentDB-konto och anger dess anslutningssträng.
Välj prenumeration, resursgrupp och Azure DocumentDB-konto i listrutorna.
Ange anslutningssträngen till Azure DocumentDB-kontot.
Kontrollera att IP-adressen som anges på skärmen är tillåten i Azure DocumentDB-brandväggen.
Klicka på Nästa när du vill fortsätta.
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.
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.
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.
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.
I avsnittet DMS-konfiguration väljer du ett CIDR-intervall som inte är i konflikt med dina virtuella nätverk.
Kör PowerShell-skripten som finns på skärmen för att aktivera integrering av virtuella nätverk.
Klicka på Nästa när du vill fortsätta.
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.
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.
Om du vill visa samlingsvis status väljer du en rad i tabellen.
Ö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:
Ö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.
När du är redo att utföra snabbmigreringen stoppar du alla inkommande transaktioner till källsamlingarna som migreras.
Replikeringsgapet visar tidsgapet mellan den senaste uppdateringen och den aktuella tiden.
Ö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.
Välj Övergång när replikeringsgapet är minimalt för alla samlingar och parametern Utförda replikeringsändringar är stabil.
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.
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.
Så här aktiverar du offentlig anslutning:
I migreringsguiden väljer du Offentligt som anslutningsläge.
Observera de statiska IP-adresser som visas i guiden.
Lägg till dessa IP-adresser i listan över tillåtna brandväggar på din MongoDB-källserver.
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.
Från en privat slutpunkt i Azure
Konfigurera privata slutpunkter för de virtuella käll- och målnätverken.
Så här aktiverar du privat anslutning:
I migreringsguiden väljer du Privat som anslutningsläge.
Välj prenumeration, resursgrupp och virtuellt nätverk för källmiljön.
Välj prenumeration, resursgrupp och virtuellt nätverk för målmiljön.
I avsnittet DMS-konfiguration väljer du ett CIDR-intervall som inte är i konflikt med dina befintliga virtuella nätverk.
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
Gå till Azure-portalen och gå till din prenumeration.
I den vänstra menyn väljer du Resursprovidrar under Inställningar.
Sök efter Microsoft.DataMigration i sökrutan högst upp.
Om den inte är registrerad väljer du den och väljer knappen Registrera .
Azure CLI
Öppna Azure Cloud Shell eller din lokala terminal.
Registrera resursprovidern genom att köra följande kommando:
az provider register --namespace Microsoft.DataMigration
PowerShell
Öppna Azure Cloud Shell eller din lokala PowerShell.
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