Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu öğreticide, mongoDB'nin şirket içi veya bulut örneğinden Azure DocumentDB'ye geçiş işleri oluşturmak ve yönetmek için Visual Studio Code'daki Azure DocumentDB Geçiş Uzantısı'nı kullanacaksınız. Bu uzantı, hizmet kesintisi olmadan geçişleri gerçekleştirmek için geliştirici dostu bir arabirim sağlar. Uzantı, ek altyapı gereksinimini ortadan kaldırır ve hangi veritabanlarının ve koleksiyonların geçirildiği üzerinde güvenli bağlantı, sıfır maliyetli kullanım ve ayrıntılı denetim sunar.
Bu makalenin odak noktası, doğrudan Visual Studio Code içinde geçiş adımlarını basitleştirmek için uzantının tümleşik iş akışını kullanmaktır. Bu yaklaşım, minimum karmaşıklık ve maksimum güvenilirlik ile kolaylaştırılmış, yönetilen bir deneyim istediğiniz senaryolar için idealdir.
Önkoşullar
Azure aboneliği
- Azure aboneliğiniz yoksa free hesabı oluşturun
Mevcut bir Azure DocumentDB kümesi
- Kümeniz yoksa yeni bir küme oluşturun
- Makinenize Azure DocumentDB Geçiş Uzantısı yükleyin. Bu, Visual Studio Code uzantısı için önkoşul olan
DocumentDB'yi otomatik olarak yükler.
Geçişe başlamadan önce Azure DocumentDB hesabınızı ve mevcut MongoDB örneğinizi geçiş için hazırlayın.
MongoDB örneği (kaynak)
- Kaynak örneğinizle hedef hesabınız arasında uyumsuzluklar ve uyarılar olup olmadığını belirlemek için geçiş öncesi değerlendirmesini tamamlayın.
-
readAnyDatabaseveclusterMonitorizinlerine sahip bir kullanıcı ekleyin, ancak önceden mevcut değilse. Uzantıda geçiş işleri oluştururken bu kimlik bilgilerini kullanırsınız.
Azure DocumentDB (hedef)
- Azure DocumentDB account'ın kimlik bilgilerini toplayın.
- Kullanıcının , ,
createCollectiondropCollection, ,createIndexveinsertizinlerine sahiplistCollectionsolduğundan emin olun.
Gerekli en düşük izinler
Geçiş işleri oluşturmak ve çalıştırmak için aşağıdaki asgari rolleri kullanın.
| En düşük rol | Scope | Bağlantı modu için geçerlidir | Amaç |
|---|---|---|---|
| Reader | Subscription | Genel ve özel | Abonelikleri ve kaynak gruplarını listeleyin. Her geçiş işi için gereklidir. |
| Azure Veritabanı Geçiş Hizmeti Katkı Sağlayıcı | Kaynak Grubu | Genel ve özel | Azure Veritabanı Geçiş Hizmeti (DMS) oluşturun. Her geçiş için yeni bir DMS oluşturmanız gerekmez. Bölge başına bir DMS yeterlidir. |
| Contributor | Subscription | Genel ve özel | DMS'yi aboneliğe kaydedin. Bu tek seferlik bir etkinliktir ve başka bir kullanıcıya devredilebilir. |
| Kullanıcı Erişimi Yöneticisi | Sanal ağ | Sadece Özel | DMS nesne sorumlusuna Ağ Katkıda Bulunanı rolünü atayın. Bu, sanal ağ başına tek seferlik bir etkinliktir ve başka bir kullanıcıya devredilebilir. |
| Contributor | Azure DocumentDB | Genel ve özel | Geçiş işini tetikleyin. |
Sağlayıcı kayıt ayrıntıları için bkz. Aboneliğinizde Microsoft.DataMigration kaynak sağlayıcısını kaydetme.
Önemli
Microsoft Entra ID kimlik doğrulaması şu anda geçiş işlerinde desteklenmiyor. Lütfen yerel DocumentDB kimlik doğrulamayı kullanın.
Geçişi gerçekleştirme
Geçiş boyutlandırma, hız ve tam geçiş hakkında planlama yönergeleri için Geçiş en iyi uygulamaları bölümüne bakın.
Kaynağa bağlan
- VS Code için DocumentDB uzantısını açın.
- Geçirmek istediğiniz MongoDB sunucusunu Belge VERITABANı Bağlantıları listesine ekleyin.
- Yeni Bağlantı Ekle'yi seçin.
- Gezinti çubuğunda Bağlantı Dizesi'ni seçin.
- Bağlantı dizesini yapıştırın:
mongodb://<YOUR_USERNAME>:<YOUR_PASSWORD>@localhost:10260/?tls=true&tlsAllowInvalidCertificates=true&authMechanism=SCRAM-SHA-256 - DocumentDB Bağlantıları'ndan bağlantıyı seçin ve bağlanmak için genişletin.
Geçiş Uzantısını Çağırma
DocumentDB Bağlantıları'ndan Geçiş Uzantısı'nı çağırabilirsiniz.
Genişletilmiş (bağlı) bağlantıya sağ tıklayın.
Bağlam menüsünden Veri Geçişi'ni seçin.
Komut paletinden Migration to Azure DocumentDB öğesini seçin.
Ardından Azure DocumentDB'ye Göç Et seçeneğini seçin.
Geçiş sihirbazı, işlemde size yol gösterir.
Geçiş işi oluştur
Geçiş işi, bir koleksiyon grubunu kaynaktan varış noktası Azure DocumentDB’ye geçirmek için kullanılır. Geçiş işi oluşturma sihirbazının altı adımı vardır.
1. Adım: İş oluşturma
Bu adımda, işin temel ayrıntılarını sağlarsınız.
İş Adı: Geçiş işini tanımlamak için kullanıcı dostu bir ad sağlayın.
Geçiş Modu: Kullanım örneğiniz için en uygun geçiş modunu seçin.
- Çevrimiçi geçiş, işlem sırasında güncellemelerin de aktarılmasını sağlayarak toplama verilerini kopyalar. Bu yöntem, iş sürekliliği için sürekli işlemlere olanak sağlayan en düşük kapalı kalma süresiyle avantajlıdır. Devam eden işlemler kritik öneme sahip olduğunda ve kapalı kalma süresini azaltmak öncelikliyse bu seçeneği kullanın.
- Çevrimdışı geçiş, başlangıçta veritabanının anlık görüntüsünü yakalar ve daha basit ve öngörülebilir bir yaklaşım sunar. Veritabanının statik bir kopyasının kullanılması kabul edilebilir olduğunda ve gerçek zamanlı güncelleştirmeler gerekli olmadığında iyi çalışır.
Önemli
MongoDB'den çevrimiçi geçişlerin başarılı olmasını sağlamak için Kaynak MongoDB sunucusunda ChangeStream'in etkinleştirilmesi gerekir. ChangeStream olmadan, ilk geçişten sonra verilerde yapılan değişiklikler yakalanmaz. Bu nedenle, çevrimiçi geçiş modunu yalnızca kaynak MongoDB sunucunuzda ChangeStream özelliği etkinleştirilmişse kullanın.
Bağlantı: Kuruluşunuzun güvenlik yetkisine ve ağ kurulumuna bağlı olarak Genel ve Özel'i seçin.
- Kaynak ve hedef sunuculara genel IP'ler aracılığıyla İnternet üzerinden erişildiğinde Genel'i kullanın. Dış erişilebilirlik gerektiren hizmetler için destek sağlar.
- Kaynak veya hedef sunuculara yalnızca sanal ağ içindeki özel IP'ler aracılığıyla erişilebiliyorsa Özel'i kullanın. Genel İnternet'e maruz kalma durumunu ortadan kaldırarak güvenliği artırır.
Devam etmek için İleri'yi seçin.
2. Adım: Hedefi seçme
Bu adımda, mevcut bir Azure DocumentDB hesabını seçer ve bağlantı dizesi sağlarsınız.
Açılan listeden aboneliği, kaynak grubunu ve Azure DocumentDB hesabını seçin.
Azure DocumentDB hesabına bağlantı dizesi sağlayın.
Azure DocumentDB güvenlik duvarında ekranda listelenen IP'ye izin verildiğinden emin olun.
Devam etmek için İleri'yi seçin.
3. Adım: Veritabanı Geçiş Hizmeti(DMS) seçeneğini belirleyin
Azure Veritabanı Geçiş Hizmeti, yerel kaynaklara güvenmek yerine veri aktarımı için bulut altyapısını kullanarak Azure veri platformlarına veri geçiren bir hizmettir. Açılan listeden mevcut bir Azure Veritabanı Geçiş Hizmeti örneğini seçin veya yeni bir geçiş hizmeti oluşturmak için DMS oluştur seçin.
Önemli
Microsoft.DataMigration kaynak sağlayıcısının aboneliğinizde kayıtlı olduğundan emin olun. Bunu abonelik başına yalnızca bir kez yapmanız gerekir.
Devam etmek için İleri'yi seçin.
4. Adım: Bağlantıyı yapılandırma
Bu ekran, 1. Adımda seçtiğiniz bağlantı moduna bağlıdır.
Genel bağlantı
Genel bağlantıda, geçiş işi genel İnternet'i kullanarak kaynağınıza ve hedefinize bağlanır. İletişimi etkinleştirmek için kaynak ve hedef güvenlik duvarlarını güncelleştirmeniz gerekir. DMS sunucularından iletişimi etkinleştirmek için, ekranda listelenen IP adreslerini kaynak ve hedef güvenlik duvarlarına ekleyin. Ağ modeli hakkında daha fazla bilgi için bkz. Genel bağlantı. Güvenlik duvarı yapılandırma kılavuzu için bkz. configure Azure DocumentDB kümesi güvenlik duvarı.
Özel bağlantı
Özel bağlantıda, geçiş işi kendi sanal ağı içinde çalışır. Sanal ağlarınızla güvenli bir şekilde iletişim kurmak için sanal ağ eşlemesini kullanırız. Ağ modeli hakkında daha fazla bilgi için bkz. Özel bağlantı.
Araç, biri kaynak, diğeri hedef için iki sanal ağ ile eşlemeye olanak tanır. Ağ yapılandırmanıza bağlı olarak açılan listeden aboneliği, kaynak grubunu ve sanal ağları seçin.
DMS Yapılandırması bölümünde, sanal ağlarınızla çakışmayan bir CIDR aralığı seçin.
Sanal ağ tümleştirmesini etkinleştirmek için ekranda sağlanan PowerShell betiklerini çalıştırın.
Devam etmek için İleri'yi seçin.
5. Adım: Koleksiyonları seçme
Bu adımda, geçiş işine dahil edilecek koleksiyonları seçersiniz. Sağlanan arama seçeneklerini kullanarak koleksiyon listesinden seçim yapın. Hedefte zaten var olan koleksiyonlar, Hedefte Var sütununda otomatik olarak Evet olarak işaretlenir.
Tip
Geçiş işi oluşturulduktan sonra koleksiyon listesi eklenemez, bu yüzden eklemek istediğiniz tüm koleksiyonları seçtiğinizden emin olun.
Devam etmek için İleri'yi seçin.
6. Adım: Onaylayın ve başlatın
Geçişi Başlat'ı seçmeden önce geçiş işi ayrıntılarını gözden geçirin. Ayrıntıların güncelleştirilmiş olması gerekiyorsa Ayrıntıları Düzenle düğmesini kullanın.
Geçiş işi başarıyla oluşturulduktan sonra otomatik olarak Varolan İşleri Görüntüle sayfasına yönlendirilirsiniz
Tip
Veri geçiş görevleri Azure Veritabanı Geçiş Hizmeti üzerinde çalıştırılır. Bu nedenle, veri geçişi sırasında kaynak ve hedef ortamlara bağlanmanız gerekmez. Durum, panoda sık aralıklarla güncelleştirilir.
Mevcut geçiş işlerini izleme
Başlatılan işlerin geçiş durumunu izlemek için Varolan İşleri Görüntüle sekmesini kullanın. İşler seçilen DMS'ye göre listelenir. Seçiminizi değiştirmek için DMS'yi Değiştir düğmesini kullanın.
Durum, sık aralıklarla otomatik olarak güncelleştirilir. Seçili koleksiyon anlık görüntüleri hedefe kopyalandıktan sonra çevrimdışı işler otomatik olarak tamamlanır. Ancak çevrimiçi geçişlerin manuel olarak tamamlanması gerekir.
Koleksiyona göre durumu görüntülemek için tablodan bir satır seçin.
Çevrimiçi geçişleri izleme
Çevrimdışı geçişlerin aksine çevrimiçi geçişler otomatik olarak tamamlanmaz. Bunun yerine, Cutover seçilerek elle sonlandırılana kadar sürekli çalışırlar.
Çevrimiçi geçişi tamamlamak için aşağıdaki adımları verilen sırada izleyin:
Tüm koleksiyonlar için ilk veri yükü tamamlandıktan sonra Tam Geçiş düğmesi etkinleştirilir. Bu aşamada, iş çoğaltma sürecindedir ve kaynak örnekten hedef örneğe sürekli olarak kopyalanarak, en son değişikliklerle güncel kalmasını sağlar.
Kesimi gerçekleştirmeye hazır olduğunuzda, geçiş yapılan kaynak koleksiyonlara gelen tüm işlemleri durdurun.
Çoğaltma Boşluğu, son güncelleştirme ile geçerli saat arasındaki zaman aralığını gösterir.
Tablodaki çoğaltma değişikliklerini izleyin ve Çalınan Çoğaltma Değişiklikleri ölçümü sabit olana kadar bekleyin. Kararlı Replikasyon Değişiklikleri Uygulandı ölçümü, kaynaktan gelen tüm güncelleştirmelerin hedefe başarıyla kopyalandığını gösterir.
Çoğaltma aralığı tüm koleksiyonlar için en düşük düzeyde olduğunda ve Çalınan Çoğaltma Değişiklikleri ölçümü kararlı olduğunda Tam Geçiş'i seçin.
Kaynak ve hedef koleksiyonlar arasında satır sayısının aynı olduğunu el ile doğrulayın.
Uyarı
Kaynak ve hedefin eşitlendiğini doğrulamadan tam geçiş işleminin gerçekleştirilmesi veri kaybına neden olabilir.
Geçiş senaryoları
Azure DocumentDB Geçiş Uzantısı, Azure'da çalışan MongoDB örnekleri, şirket içi veri merkezleri ve diğer bulut sağlayıcıları dahil olmak üzere çeşitli kaynak ortamları destekler. Uzantı, farklı ağ yapılandırmalarını ve güvenlik gereksinimlerini karşılamak için esnek bağlantı seçenekleri sağlar.
Desteklenen kaynak ortamlar
Aşağıdaki tabloda desteklenen geçiş kaynakları özetlenmektedir:
| Kaynak ortam | Description |
|---|---|
| Azure ortamında | Azure Sanal Makineler veya Azure barındırılan diğer hizmetlerde çalışan MongoDB örnekleri |
| On-premises | Yerel veri merkezinizde veya özel altyapınızda çalışan MongoDB sunucuları |
| Diğer bulut sağlayıcıları | Diğer bulut platformlarında barındırılan MongoDB örnekleri |
Genel bağlantı
Genel bağlantı modunda, Azure Veritabanı Geçiş Hizmeti (DMS) genel İnternet üzerinden kaynak ve hedef sunucularınıza bağlanır. DMS, hem kaynak hem de hedef sunucularda güvenlik duvarı izin verme listelerine eklediğiniz statik IP adresleri sağlar. DMS, belirli bir bölgedeki tüm geçişler için paylaşılan bir genel sanal ağ kullanır. Bu sanal ağ müşteriler arasında paylaşılsa da, iş düzeyinde yalıtımı sağlamak amacıyla her geçiş işi, kendi izole edilmiş özel bir işçi düğümünde çalışır.
Genel bağlantıyı şu durumlarda kullanın:
- Kaynak ve hedef sunucularınıza genel IP adresleri üzerinden erişilebilir.
- Kuruluşunuzun güvenlik ilkeleri genel İnternet üzerinden bağlantılara izin verir.
- Sanal ağ yapılandırması olmadan daha basit bir kuruluma ihtiyacınız vardır.
Genel bağlantıyı etkinleştirmek için:
Geçiş sihirbazında bağlantı modu olarak Genel'i seçin.
Sihirbazda görüntülenen statik IP adreslerini not edin.
Bu IP adreslerini kaynak MongoDB sunucunuzdaki güvenlik duvarı izin verme listesine ekleyin.
Bu IP adreslerini Azure DocumentDB güvenlik duvarı ekleyin.
Özel bağlantı
Özel bağlantı modunda DMS, her geçiş işi için ayrılmış bir özel sanal ağ sağlar ve bunu kaynak ve hedef sanal ağlarınızla eşler. Bu, her işin hem izole işçi düğümlerine hem de izole bir ağa sahip olduğu anlamına gelir ve böylece işler arasında trafik geçişi olmadan, müşteriler arasında paylaşılan ağ yolları olmamasını sağlar.
Uzantı en fazla iki sanal ağı destekler:
- Kaynak sanal ağ: Kaynak MongoDB sunucunuzun erişilebilir olduğu sanal ağ.
- Target sanal ağı: Azure DocumentDB kümenizin erişilebilir olduğu sanal ağ.
Aşağıdaki durumlarda özel bağlantı kullanın:
- Kaynak veya hedef sunucularınıza genel İnternet üzerinden erişilemez.
- Kuruluşunuzun tüm trafiğin özel ağlardan akmasını gerektirir.
- İnternet'in genel kullanıma açık olmasını önlemeniz gerekir.
Diğer bulut sağlayıcılarından veya şirket içinden
Azure ile kaynak ortamınız arasında başka bir bulutta veya şirket içinde ağ bağlantısını ayarlamak için tercih ettiğiniz VPN araçlarını kullanın.
Azure'da özel bir uç noktadan
Kaynak ve hedef sanal ağlar için özel uç noktalar ayarlayın.
Özel bağlantıyı etkinleştirmek için:
Geçiş sihirbazında bağlantı modu olarak Özel'i seçin.
Kaynak ortamınız için aboneliği, kaynak grubunu ve sanal ağı seçin.
Hedef ortamınız için aboneliği, kaynak grubunu ve sanal ağı seçin.
DMS Yapılandırması bölümünde, mevcut sanal ağlarınızla çakışmayan bir CIDR aralığı seçin.
Sanal ağ tümleştirmesini ve eşlemesini etkinleştirmek için sihirbazda sağlanan PowerShell betiklerini çalıştırın.
Önemli
Özel erişim kullanırken, tek bir sanal ağ aynı anda yalnızca bir etkin geçiş işini destekleyebilir. Birden çok eşzamanlı iş çalıştırmak için her iş için farklı sanal ağlar kullanın.
Aboneliğinizde Microsoft.DataMigration kaynak sağlayıcısını kaydedin.
Microsoft.DataMigration kaynak sağlayıcısının aboneliğinizde kayıtlı olduğundan emin olmak için şu adımları izleyebilirsiniz:
Azure portalı
Azure portalına gidin ve aboneliğinize gidin.
Sol taraftaki menüde Ayarlar'ın altında Kaynak sağlayıcıları'nı seçin.
Üstteki arama kutusuna Microsoft.DataMigration yazıp arayın.
Kayıtlı değilse seçin ve Kaydet düğmesini seçin.
Azure CLI
Azure Cloud Shell veya yerel terminalinizi açın.
Aşağıdaki komutu çalıştırarak kaynak sağlayıcısını kaydedin:
az provider register --namespace Microsoft.DataMigration
PowerShell
Azure Cloud Shell veya yerel PowerShell'inizi açın.
Aşağıdaki komutu çalıştırarak kaynak sağlayıcısını kaydedin:
Register-AzResourceProvider -ProviderNamespace "Microsoft.DataMigration"
FAQ
Azure DocumentDB görünümleri desteklerken koleksiyon seçme ekranı adımında görünümler neden eksik?
Azure DocumentDB, yeni görünümlerin oluşturulmasını destekler. Ancak geçiş uzantısı mevcut görünümlerin geçirilmesi için destek sağlamaz.
Geçiş tamamlandıktan sonra görünümleri istediğiniz zaman yeniden oluşturabilirsiniz.
MongoDB'den Azure DocumentDB'ye geçirilirken hangi koleksiyonlar ve veritabanları atlanır?
Aşağıdaki veritabanları ve koleksiyonlar MongoDB için iç olarak kabul edilir:
| Kategori | Description |
|---|---|
| Veritabanları | admin, yerel, sistem yapılandırması |
| Koleksiyonlar | Ön eki olan herhangi bir koleksiyon system. |
Geçiş görevleri makinemde yerel olarak çalışır mı?
VS Code'daki geçiş sihirbazı, yerel makinenizden hem kaynak hem de hedef ortamlara ağ bağlantısı gerektirir. Bu bağlantı, veritabanlarını ve koleksiyonları listelemek ve geçiş işini göndermek için kullanılır. İş gönderildikten sonra VS Code'ı kapatabilir veya kaynak ve hedef ortamların bağlantısını kesebilirsiniz.
Veri geçişi tamamen Azure Veritabanı Geçiş Hizmeti (DMS) tarafından yürütülür ve tüm veri taşıma işlemlerini yöneten Azure barındırılan bir hizmettir. DMS, iş yürütme için yerel makinenize veya VS Code'a güvenmediğinden, iş gönderildikten sonra yerel bağlantı gerekmez.
Geçiş sırasında veritabanlarını ve koleksiyonları yeniden adlandırabilir miyim?
Uzantı, geçiş sırasında veritabanı ve koleksiyonun yeniden adlandırılmasını desteklemez.
Bağlantı sorunlarını önlemek için kaynak sunucu güvenlik duvarlarımı nasıl yapılandırmalıyım?
Gerekli ağ yapılandırması seçili bağlantı moduna bağlıdır:
- Genel mod: İletişimi etkinleştirmek için sihirbazda hem kaynak hem de hedef güvenlik duvarlarında görüntülenen IP adreslerine izin vermelisiniz.
- Özel mod: DMS sunucularının sanal ağ içindeki kaynak ve hedef uç noktalarla güvenli bir şekilde iletişim kurabilmesi için sanal ağ tümleştirmesini etkinleştirmeniz gerekir.
Ayrıca VS Code bağlantısına da bakın
Tek bir geçişte kaç veritabanı ve koleksiyon geçirebilirim?
Tek bir geçişe sınırsız sayıda koleksiyon ekleyebilirsiniz.
Aynı anda kaç geçiş işi çalıştırabilirim?
Genel erişimi kullanırken birden çok geçiş işi çalıştırabilirsiniz. Ancak , özel erişim kullanılırken tek bir sanal ağ aynı anda yalnızca bir etkin işi destekleyebilir. Özel erişimle birden çok iş çalıştırmak için her iş için farklı sanal ağ kullanmanız gerekir.
Uzantı ne tür günlükler oluşturur?
Uzantı hataları, uyarıları ve diğer tanılama günlüklerini varsayılan günlük dizinine kaydeder:
-
Windows -
C:\Users\<username>\.dmamongo\logs\ -
Linux -
~/.dmamongo/logs -
Macos -
/Users/<username>/.dmamongo/logs