Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Dalam tutorial ini, Anda menggunakan Azure DocumentDB Migration Extension di Visual Studio Code untuk membuat dan mengelola pekerjaan migrasi dari instans lokal atau cloud MongoDB ke Azure DocumentDB. Ekstensi ini menyediakan antarmuka yang ramah pengembang untuk melakukan migrasi tanpa gangguan layanan. Ekstensi ini menghilangkan kebutuhan akan infrastruktur tambahan dan menawarkan konektivitas yang aman, penggunaan tanpa biaya, dan kontrol terperinci atas database dan koleksi mana yang akan dimigrasikan.
Fokus artikel ini adalah menggunakan alur kerja terintegrasi ekstensi untuk menyederhanakan langkah-langkah migrasi langsung dalam Visual Studio Code. Pendekatan ini sangat ideal untuk skenario di mana Anda menginginkan pengalaman terkelola yang efisien dengan kompleksitas minimal dan keandalan maksimum.
Prerequisites
Langganan Azure
- Jika Anda tidak memiliki langganan Azure, buat akun gratis
Kluster Azure DocumentDB yang sudah ada
- Jika Anda tidak memiliki kluster, buat kluster baru
- Instal Azure DocumentDB Migration Extension di komputer Anda. Ini secara otomatis menginstal prasyaratnya, ekstensi DocumentDB untuk Visual Studio Code.
Sebelum memulai migrasi, siapkan akun Azure DocumentDB dan instans MongoDB yang sudah ada untuk migrasi.
Instans MongoDB (sumber)
- Selesaikan penilaian pramigrasi untuk menentukan apakah ada ketidaksesuaian dan peringatan antara instans sumber dan akun target Anda.
- Tambahkan pengguna dengan izin
readAnyDatabasedanclusterMonitor, kecuali jika sudah ada. Anda menggunakan kredensial ini saat membuat tugas migrasi di ekstensi.
Azure DocumentDB (target)
- Kumpulkan kredensial dari akun Azure DocumentDB.
- Pastikan pengguna memiliki
createCollectionizin ,dropCollection,createIndex,insertdanlistCollections.
Izin minimal yang diperlukan
Gunakan peran minimum berikut untuk membuat dan menjalankan pekerjaan migrasi.
| Peran minimum | Scope | Berlaku untuk mode konektivitas | Kegunaan |
|---|---|---|---|
| Reader | Subscription | Publik dan privat | Mencantumkan langganan dan grup sumber daya. Diperlukan untuk setiap pekerjaan migrasi. |
| Kontributor Azure Database Migration Service | grup Sumber Daya | Publik dan privat | Buat Azure Database Migration Service (DMS). Anda tidak perlu membuat DMS baru untuk setiap migrasi. Satu DMS per wilayah sudah cukup. |
| Contributor | Subscription | Publik dan privat | Daftarkan DMS dalam langganan. Ini adalah aktivitas satu kali dan dapat didelegasikan ke pengguna lain. |
| Administrator Akses Pengguna | Jaringan virtual | Hanya privat | Tetapkan peran Kontributor Jaringan ke prinsipal objek DMS. Ini adalah aktivitas satu kali per jaringan virtual dan dapat didelegasikan ke pengguna lain. |
| Contributor | Azure DocumentDB | Publik dan privat | Memicu pekerjaan migrasi. |
Untuk detail pendaftaran penyedia, lihat Register Microsoft.DataMigration resource provider di langganan Anda.
Important
Autentikasi ID Microsoft Entra saat ini tidak didukung dalam pekerjaan migrasi. Silakan gunakan autentikasi DocumentDB asli.
Lakukan migrasi
Untuk panduan perencanaan tentang ukuran, kecepatan, dan proses cutover dalam migrasi, lihat Praktik terbaik migrasi.
Sambungkan ke sumber
- Buka ekstensi DocumentDB untuk Visual Studio Code .
- Tambahkan server MongoDB yang ingin Anda migrasikan ke daftar Koneksi DB Dokumen .
- Pilih Tambahkan Koneksi Baru.
- Pada bilah navigasi, pilih String Koneksi.
- Tempelkan string koneksi Anda:
mongodb://<YOUR_USERNAME>:<YOUR_PASSWORD>@localhost:10260/?tls=true&tlsAllowInvalidCertificates=true&authMechanism=SCRAM-SHA-256 - Dari Koneksi DocumentDB, pilih koneksi dan perluas untuk menyambungkan.
Mengaktifkan Ekstensi Migrasi
Anda dapat memanggil Ekstensi Migrasi dari Koneksi DocumentDB.
Klik kanan pada koneksi yang diperluas (tersambung).
Pilih Migrasi Data dari menu konteks.
Dari palet perintah, pilih Migrasi ke Azure DocumentDB.
Lalu pilih Migrasikan ke Azure DocumentDB.
Wizard migrasi memandu Anda melalui proses.
Membuat pekerjaan migrasi
Pekerjaan migrasi digunakan untuk memigrasikan sekelompok koleksi dari sumber ke tujuan Azure DocumentDB. Wizard untuk membuat pekerjaan migrasi memiliki enam langkah.
Langkah 1: Membuat pekerjaan
Dalam langkah ini, Anda memberikan detail dasar untuk pekerjaan tersebut.
Nama Pekerjaan: Berikan nama yang mudah digunakan untuk mengidentifikasi pekerjaan migrasi.
Mode Migrasi: Pilih mode migrasi yang paling sesuai untuk kasus penggunaan Anda.
- Migrasi online menyalin data koleksi, memastikan bahwa pembaruan juga direplikasi selama proses berlangsung. Metode ini menguntungkan dengan waktu henti minimal, memungkinkan operasi berkelanjutan untuk kelangsungan bisnis. Gunakan opsi ini saat operasi yang sedang berlangsung sangat penting, dan mengurangi waktu henti adalah prioritas.
- Migrasi offline menangkap rekam jepret database di awal, menawarkan pendekatan yang lebih sederhana dan dapat diprediksi. Ini berfungsi dengan baik saat menggunakan salinan statis database dapat diterima, dan pembaruan real time tidak penting.
Important
Untuk memastikan keberhasilan migrasi online dari MongoDB, ChangeStream harus diaktifkan di server MongoDB sumber. Tanpa ChangeStream, modifikasi apa pun yang dilakukan pada data setelah migrasi awal tidak diambil. Oleh karena itu, gunakan mode migrasi online hanya jika ChangeStream diaktifkan di server MongoDB sumber Anda.
Konektivitas: Bergantung pada mandat keamanan dan penyiapan jaringan organisasi Anda, pilih dari Publik dan Privat.
- Gunakan Publik saat server sumber dan target dapat diakses melalui internet melalui IP publik. Ini memungkinkan dukungan untuk layanan yang memerlukan aksesibilitas eksternal.
- Gunakan Privat saat server sumber atau target dapat diakses secara eksklusif melalui IP privat dalam jaringan virtual. Ini meningkatkan keamanan dengan menghilangkan paparan internet publik.
Untuk melanjutkan, klik Berikutnya.
Langkah 2: Pilih target
Dalam langkah ini, Anda memilih akun Azure DocumentDB yang sudah ada dan menyediakan string koneksinya.
Pilih langganan, grup sumber daya, dan akun Azure DocumentDB dari menu dropdown.
Berikan string koneksi ke akun Azure DocumentDB.
Pastikan IP yang tercantum di layar diizinkan di firewall Azure DocumentDB.
Untuk melanjutkan, klik Berikutnya.
Langkah 3: Pilih Database Migration Service (DMS)
Azure Database Migration Service adalah layanan yang memigrasikan data ke dan dari platform data Azure dengan menggunakan infrastruktur cloud untuk transfer data, alih-alih mengandalkan sumber daya lokal. Pilih instans Azure Database Migration Service yang sudah ada dari menu dropdown atau pilih Buat DMS untuk membuat layanan migrasi baru.
Important
Pastikan penyedia sumber daya Microsoft.DataMigration terdaftar dalam langganan Anda. Anda hanya perlu melakukannya sekali per langganan.
Untuk melanjutkan, klik Berikutnya.
Langkah 4: Mengonfigurasi konektivitas
Layar ini tergantung pada mode konektivitas yang Anda pilih di Langkah 1.
Konektivitas publik
Dalam konektivitas publik, pekerjaan migrasi terhubung ke sumber dan target Anda menggunakan internet publik. Untuk mengaktifkan komunikasi, Anda diharuskan memperbarui firewall sumber dan target. Untuk mengaktifkan komunikasi dari server DMS, tambahkan alamat IP yang tercantum di layar ke firewall sumber dan target. Untuk informasi selengkapnya tentang model jaringan, lihat Konektivitas publik. Untuk panduan konfigurasi firewall, lihat konfigurasi Azure kluster DocumentDB firewall.
Konektivitas pribadi
Dalam konektivitas privat, tugas migrasi dijalankan dalam jaringannya yang bersifat virtual. Untuk berkomunikasi dengan jaringan virtual Anda dengan aman, kami menggunakan peering jaringan virtual. Untuk informasi selengkapnya tentang model jaringan, lihat Konektivitas privat.
Perangkat ini memungkinkan hubungan langsung dengan dua jaringan virtual, satu untuk sumber dan yang lainnya untuk target. Bergantung pada konfigurasi jaringan Anda, pilih langganan, grup sumber daya, dan jaringan virtual dari menu dropdown.
Di bagian Konfigurasi DMS , pilih rentang CIDR yang tidak bertentangan dengan jaringan virtual Anda.
Jalankan skrip PowerShell yang disediakan di layar untuk mengaktifkan integrasi jaringan virtual.
Untuk melanjutkan, klik Berikutnya.
Langkah 5: Pilih koleksi
Dalam langkah ini, Anda memilih koleksi yang akan disertakan dalam pekerjaan migrasi. Pilih dari daftar koleksi dengan menggunakan opsi pencarian yang disediakan. Koleksi yang sudah ada di target secara otomatis ditandai Ya di kolom Ada di Target .
Tip
Pastikan untuk memilih semua koleksi yang ingin Anda sertakan karena daftar koleksi tidak dapat ditambahkan setelah pekerjaan migrasi dibuat.
Untuk melanjutkan, klik Berikutnya.
Langkah 6: Konfirmasi dan mulai
Tinjau detail pekerjaan migrasi sebelum memilih Mulai Migrasi. Jika detail perlu diperbarui, gunakan tombol Edit Detail .
Setelah pekerjaan migrasi berhasil dibuat, Anda secara otomatis diarahkan ke halaman Tampilkan Pekerjaan yang Ada
Tip
Tugas migrasi data dijalankan di Azure Database Migration Service. Oleh karena itu, Anda tidak diharuskan untuk terhubung ke lingkungan sumber dan target selama migrasi data. Status diperbarui pada dasbor pada interval yang sering.
Memantau pekerjaan migrasi yang ada
Gunakan tab Tampilkan Pekerjaan yang Ada untuk memantau status migrasi pekerjaan yang diinisialisasi. Daftar pekerjaan dicantumkan berdasarkan pada DMS yang dipilih. Gunakan tombol Ubah DMS untuk mengubah pilihan Anda.
Status secara otomatis diperbarui pada interval yang sering. Pekerjaan offline secara otomatis selesai setelah rekam jepret koleksi yang dipilih disalin ke target. Namun, migrasi online perlu dialihkan secara manual.
Untuk melihat status per koleksi, pilih sebuah baris dari tabel.
Memantau migrasi online
Migrasi online, tidak seperti migrasi offline, tidak selesai secara otomatis. Sebaliknya, mereka berjalan terus menerus sampai diselesaikan secara manual dengan memilih Cutover.
Untuk menyelesaikan migrasi online, ikuti langkah-langkah ini dalam urutan tertentu:
Tombol Cutover diaktifkan setelah pemuatan data awal selesai untuk semua koleksi. Pada tahap ini, pekerjaan berada dalam fase replikasi, terus menyalin pembaruan dari instans sumber ke instans target untuk membuatnya tetap up-to-tanggal dengan perubahan terbaru.
Saat siap untuk melakukan cutover migrasi, hentikan semua transaksi masuk ke koleksi sumber yang sedang dimigrasikan.
Celah Replikasi menunjukkan kesenjangan waktu antara pembaruan terakhir dan waktu saat ini.
Pantau perubahan replikasi di tabel dan tunggu hingga metrik Perubahan Replikasi Dimainkan stabil. Metrik Perubahan Replikasi yang Dijalankan yang stabil menunjukkan bahwa semua pembaruan dari sumber berhasil disalin ke target.
Pilih Cutover saat celah replikasi minimal untuk semua koleksi dan metrik Perubahan Replikasi yang Diproses stabil.
Validasi secara manual bahwa jumlah baris sama antara kumpulan sumber dan target.
Nota
Melakukan operasi cutover tanpa memvalidasi bahwa sumber dan target disinkronkan dapat mengakibatkan kehilangan data.
Skenario migrasi
Ekstensi Migrasi Azure DocumentDB mendukung beberapa lingkungan sumber, termasuk instans MongoDB yang berjalan di Azure, pusat data lokal, dan penyedia cloud lainnya. Ekstensi ini menyediakan opsi konektivitas yang fleksibel untuk mengakomodasi konfigurasi jaringan dan persyaratan keamanan yang berbeda.
Lingkungan sumber yang didukung
Tabel berikut ini meringkas sumber migrasi yang didukung:
| Lingkungan sumber | Description |
|---|---|
| Di dalam Azure | Instans MongoDB yang berjalan di Azure Virtual Machines atau layanan lain yang dihosting Azure |
| On-premises | Server MongoDB yang berjalan di pusat data lokal atau infrastruktur privat Anda |
| Penyedia cloud lainnya | Instans MongoDB yang dihosting di platform cloud lainnya |
Konektivitas publik
Dalam mode konektivitas publik, Azure Database Migration Service (DMS) terhubung ke server sumber dan target Anda melalui internet publik. DMS menyediakan alamat IP statis yang Anda tambahkan ke daftar izin firewall di server sumber dan target. DMS menggunakan jaringan virtual publik bersama untuk semua migrasi dalam wilayah tertentu. Meskipun jaringan virtual ini dibagikan di seluruh pelanggan, setiap pekerjaan migrasi berjalan pada simpul pekerja pribadi yang terisolasi untuk memastikan isolasi tingkat pekerjaan.
Gunakan konektivitas publik saat:
- Server sumber dan target Anda dapat diakses melalui alamat IP publik.
- Kebijakan keamanan organisasi Anda mengizinkan koneksi melalui internet publik.
- Anda memerlukan pengaturan yang lebih sederhana tanpa konfigurasi jaringan virtual.
Untuk mengaktifkan konektivitas publik:
Di wizard migrasi, pilih Publik sebagai mode konektivitas.
Perhatikan alamat IP statis yang ditampilkan dalam wizard.
Tambahkan alamat IP ini ke daftar izin firewall di server MongoDB sumber Anda.
Tambahkan alamat IP ini ke firewall Azure DocumentDB.
Konektivitas pribadi
Dalam mode konektivitas privat, DMS menyediakan jaringan virtual privat khusus untuk setiap pekerjaan migrasi dan menghubungkannya dengan jaringan virtual sumber dan target Anda. Ini berarti setiap pekerjaan mendapatkan simpul pekerja yang terisolasi dan jaringan yang terisolasi, memastikan bahwa tidak ada lalu lintas yang melintasi antara pekerjaan dan tidak ada jalur jaringan bersama antara pelanggan.
Ekstensi ini mendukung hingga dua jaringan virtual:
- Jaringan virtual sumber: Jaringan virtual tempat server MongoDB sumber Anda dapat diakses.
- jaringan virtual Target: Jaringan virtual tempat kluster DocumentDB Azure Anda dapat diakses.
Gunakan konektivitas privat saat:
- Server sumber atau target Anda tidak dapat diakses melalui internet publik.
- Organisasi Anda mengharuskan semua lalu lintas mengalir melalui jaringan privat.
- Anda perlu menghindari paparan internet publik.
Dari penyedia cloud atau lokal lainnya
Gunakan alat VPN pilihan Anda untuk menyiapkan konektivitas jaringan antara Azure dan lingkungan sumber Anda di cloud atau lokal lain.
Dari titik akhir privat di Azure
Siapkan titik akhir privat untuk jaringan virtual sumber dan target.
Untuk mengaktifkan konektivitas privat:
Di wizard migrasi, pilih Privat sebagai mode konektivitas.
Pilih langganan, grup sumber daya, dan jaringan virtual untuk lingkungan sumber Anda.
Pilih langganan, grup sumber daya, dan jaringan virtual untuk lingkungan target Anda.
Di bagian Konfigurasi DMS , pilih rentang CIDR yang tidak bertentangan dengan jaringan virtual Anda yang ada.
Jalankan skrip PowerShell yang disediakan dalam wizard untuk mengaktifkan integrasi dan peering jaringan virtual.
Important
Saat menggunakan akses privat, satu jaringan virtual hanya dapat mendukung satu pekerjaan migrasi aktif pada satu waktu. Untuk menjalankan beberapa pekerjaan bersamaan, gunakan jaringan virtual yang berbeda untuk setiap pekerjaan.
Daftarkan penyedia sumber daya Microsoft.DataMigration di langganan Anda
Untuk memastikan bahwa penyedia sumber daya Microsoft.DataMigration terdaftar di langganan Anda, Anda dapat mengikuti langkah-langkah berikut:
portal Azure
Buka portal Azure dan navigasikan ke langganan Anda.
Di menu sebelah kiri, pilih Penyedia sumber daya di bawah Pengaturan.
Cari Microsoft.DataMigration di kotak pencarian di bagian atas.
Jika tidak terdaftar, pilih dan pilih tombol Daftar .
Azure CLI
Buka Azure Cloud Shell atau terminal lokal Anda.
Gunakan perintah berikut untuk mendaftarkan penyedia sumber:
az provider register --namespace Microsoft.DataMigration
PowerShell
Buka Azure Cloud Shell atau PowerShell lokal Anda.
Gunakan perintah berikut untuk mendaftarkan penyedia sumber:
Register-AzResourceProvider -ProviderNamespace "Microsoft.DataMigration"
FAQ
Mengapa tampilan hilang di langkah layar koleksi pilihan saat Azure DocumentDB mendukung tampilan?
Azure DocumentDB mendukung pembuatan tampilan baru. Namun, ekstensi migrasi tidak memberikan dukungan untuk memigrasikan tampilan yang ada.
Setelah migrasi selesai, Anda selalu dapat membuat ulang tampilan.
Koleksi dan database mana yang dilewati saat bermigrasi dari MongoDB ke Azure DocumentDB?
Database dan koleksi berikut dianggap internal untuk MongoDB:
| Kategori | Description |
|---|---|
| Database | admin, lokal, konfigurasi sistem |
| Koleksi | Koleksi apa pun dengan awalan system. |
Apakah pekerjaan migrasi berjalan secara lokal di komputer saya?
Wizard migrasi di Visual Studio Code memerlukan konektivitas jaringan dari komputer lokal Anda ke lingkungan sumber dan target. Konektivitas ini digunakan untuk menghitung database dan koleksi dan untuk mengirimkan pekerjaan migrasi. Setelah pekerjaan dikirimkan, Anda dapat menutup Visual Studio Code atau memutuskan sambungan dari lingkungan sumber dan target.
Migrasi data dijalankan sepenuhnya oleh Azure Database Migration Service (DMS), layanan yang dihosting Azure yang mengelola semua pergerakan data. DMS tidak mengandalkan komputer lokal atau Visual Studio Code Anda untuk eksekusi pekerjaan, sehingga konektivitas lokal tidak diperlukan setelah pengiriman pekerjaan.
Bisakah saya mengganti nama database dan koleksi selama migrasi?
Ekstensi tidak mendukung penggantian nama database dan koleksi selama migrasi.
Bagaimana cara mengonfigurasi firewall server sumber saya untuk menghindari masalah konektivitas?
Konfigurasi jaringan yang diperlukan tergantung pada mode konektivitas yang dipilih:
- Mode publik: Anda harus memperbolehkan alamat IP yang ditampilkan dalam wizard pada firewall sumber dan target untuk mengaktifkan komunikasi.
- Mode privat: Anda harus mengaktifkan integrasi jaringan virtual sehingga server DMS dapat berkomunikasi dengan aman dengan titik akhir sumber dan target dalam jaringan virtual.
Lihat juga konektivitas Visual Studio Code
Berapa banyak database dan koleksi yang dapat saya migrasikan dalam satu migrasi?
Anda dapat menyertakan jumlah koleksi yang tidak terbatas dalam satu migrasi.
Berapa banyak pekerjaan migrasi yang dapat saya jalankan secara bersamaan?
Anda dapat menjalankan beberapa pekerjaan migrasi saat menggunakan akses publik. Namun, saat menggunakan akses privat, satu jaringan virtual hanya dapat mendukung satu pekerjaan aktif pada satu waktu. Untuk menjalankan beberapa pekerjaan dengan akses privat, Anda perlu menggunakan jaringan virtual yang berbeda untuk setiap pekerjaan.
Jenis log apa yang dihasilkan ekstensi?
Ekstensi mencatat kesalahan, peringatan, dan log diagnostik lainnya di direktori log default:
-
Windows -
C:\Users\<username>\.dmamongo\logs\ -
Linux -
~/.dmamongo/logs -
Macos -
/Users/<username>/.dmamongo/logs