مشاركة عبر


Migrate MongoDB to Azure DocumentDB online using Azure DocumentDB migration extension (public preview)

في هذا الدرس، تستخدم إضافة ترحيل Azure DocumentDB في كود Visual Studio لإنشاء وإدارة مهام الترحيل من نسخة محلية أو سحابية من MongoDB إلى Azure DocumentDB. يوفر هذا الامتداد واجهة صديقة للمطورين لإجراء عمليات الترحيل دون انقطاعات في الخدمة. يلغي الامتداد الحاجة إلى بنية تحتية إضافية ويوفر اتصالا آمنا، واستخداما بدون تكلفة، وتحكما دقيقا في قواعد البيانات والمجموعات التي سيتم نقلها.

يركز هذا المقال على استخدام سير العمل المتكامل للإضافة لتبسيط خطوات الترحيل مباشرة داخل كود Visual Studio. هذا النهج مثالي للسيناريوهات التي ترغب فيها في تجربة مبسطة ومدارة مع أقل قدر من التعقيد وأقصى قدر من الموثوقية.

Prerequisites

  • اشتراك Azure

  • مجموعة Azure DocumentDB موجودة

قبل بدء الترحيل، جهز حساب Azure DocumentDB الخاص بك ونسخة MongoDB الحالية الخاصة بك للترحيل.

نسخة MongoDB (المصدر)

  • أكمل تقييم ما قبل الهجرة لتحديد ما إذا كانت هناك تناقضات وتحذيرات بين الحالة الأصلية والحساب المستهدف.
  • أضف مستخدما مع readAnyDatabase وصلاحيات clusterMonitor ، إلا إذا كان هناك صلاحيات موجودة بالفعل. تستخدم هذه الشهادة أثناء إنشاء وظائف الترحيل في الامتداد.

Azure DocumentDB (target)

  • جمع بيانات اعتماد حساب Azure DocumentDB.
  • تأكد من أن المستخدم لديه createCollection، dropCollection، createIndex، insert، والأذونات listCollections .

Important

مصادقة Microsoft Entra ID غير مدعومة حاليا في وظائف الترحيل. يرجى استخدام المصادقة الأصلية في DocumentDB.

شغّل الترحيل

اتصل بالمصدر

  1. افتح امتداد DocumentDB ل VS Code .
  2. أضف خادم MongoDB الذي تريد ترحيله إلى قائمة اتصالات قاعدة بيانات المستندات .
  3. اختر إضافة اتصال جديد.
  4. في شريط التنقل، اختر سلسلة الاتصال.
  5. الصق سلسلة الاتصال الخاصة بك: mongodb://<YOUR_USERNAME>:<YOUR_PASSWORD>@localhost:10260/?tls=true&tlsAllowInvalidCertificates=true&authMechanism=SCRAM-SHA-256
  6. من DocumentDB Connections، اختر الاتصال ووسعه للاتصال.

استدعاء امتداد الهجرة

يمكنك استدعاء امتداد الترحيل من DocumentDB Connections.

  1. انقر بزر الفأرة الأيمن على اتصال موسع (متصل).

  2. اختر ترحيل البيانات من قائمة السياق.

    لقطة شاشة لقائمة السياق في كود Visual Studio.

  3. اختر Migrationrate to Azure DocumentDB من لوحة الأوامر.

    لقطة شاشة للوحة الأوامر في كود Visual Studio.

  4. يوجهك ساحر الهجرة خلال العملية.

إنشاء وظيفة ترحيل

يتم استخدام مهمة الترحيل لترحيل مجموعة من المجموعات من المصدر إلى وجهة Azure DocumentDB. ساحر إنشاء مهمة الترحيل يحتوي على ست خطوات.

الخطوة 1: إنشاء وظيفة

في هذه الخطوة، تقدم التفاصيل الأساسية للعمل.

  • اسم الوظيفة: قدم اسما سهل الاستخدام لتحديد وظيفة الانتقال.

  • وضع الترحيل: اختر وضع الترحيل الأنسب لحالتك.

    • الترحيل عبر الإنترنت ينسخ بيانات الجمع، مما يضمن تكرار التحديثات أيضا أثناء العملية. هذه الطريقة مفيدة مع الحد الأدنى من وقت التعطل، ما يسمح للعمليات المستمرة لاستمرارية الأعمال. استخدم هذا الخيار عندما تكون العمليات الجارية حاسمة، ويكون تقليل وقت التعطل أولوية.
    • الترحيل غير المتصل يلتقط لمحة عن قاعدة البيانات في البداية، مقدما نهجا أبسط وأكثر توقعا. يعمل بشكل جيد عندما يكون استخدام نسخة ثابتة من قاعدة البيانات مقبولا، والتحديثات الفورية ليست ضرورية.

    Important

    لضمان نجاح الترحيلات عبر الإنترنت من MongoDB، يجب تفعيل ChangeStream على خادم MongoDB المصدر. بدون ChangeStream، لا يتم التقاط أي تعديلات تجرى على البيانات بعد الترحيل الأولي. لذا، استخدم وضع الترحيل عبر الإنترنت فقط إذا كان ChangeStream مفعلا على خادم MongoDB المصدر الخاص بك.

  • الاتصال: اعتمادا على متطلبات الأمان وإعداد الشبكة، اختر بين القطاعين العاموالخاص.

    • استخدم الوضع العام عندما تكون الخوادم المصدر والهدف متاحة عبر الإنترنت عبر عناوين IP العامة. يتيح دعم الخدمات التي تتطلب وصولا خارجيا.
    • استخدم Private عندما تكون الخوادم المصدر أو الهدف متاحة حصريا عبر عناوين IP الخاصة داخل شبكة افتراضية. يعزز الأمان من خلال القضاء على التعرض للإنترنت العام.

حدد التالي للمتابعة.

لقطة شاشة لخطوة إنشاء الوظيفة في الساحر.

الخطوة 2: اختر الهدف

في هذه الخطوة، تختار حساب Azure DocumentDB موجود وتوفر سلسلة الاتصال الخاصة به.

  1. اختر الاشتراك، ومجموعة الموارد، وحساب Azure DocumentDB من القوائم المنسدلة.

  2. توفير سلسلة الاتصال إلى حساب Azure DocumentDB.

  3. تأكد من أن عنوان IP المدرج في الشاشة مسموح به على جدار الحماية Azure DocumentDB.

  4. حدد التالي للمتابعة.

لقطة شاشة لخطوة اختيار الهدف في الساحر.

الخطوة 3: اختر خدمة ترحيل قواعد البيانات (DMS)

خدمة ترحيل قواعد بيانات Azure هي خدمة تقوم بترحيل البيانات إلى وإلى منصات بيانات Azure باستخدام البنية التحتية السحابية لنقل البيانات، بدلا من الاعتماد على الموارد المحلية. اختر نسخة خدمة ترحيل قاعدة بيانات Azure الحالية من القائمة المنسدلة أو اختر إنشاء DMS لإنشاء خدمة ترحيل جديدة.

Important

تأكد من أن مزود موارد Microsoft.DataMigration مسجل في اشتراكك. تحتاج فقط إلى القيام بذلك مرة واحدة لكل اشتراك.

حدد التالي للمتابعة.

لقطة شاشة لخطوة اختيار خدمة ترحيل قاعدة البيانات في المعالج.

الخطوة 4: تكوين الاتصال

تعتمد هذه الشاشة على وضع الاتصال الذي اخترته في الخطوة الأولى.

الاتصال العام

في الاتصال العام، تتصل مهمة الانتقال بمصدرك وهدفك باستخدام الإنترنت العام. لتمكين التواصل، يطلب منك تحديث جدران الحماية المصدر والهدف. لتمكين التواصل من خوادم DMS، أضف عناوين IP المدرجة في الشاشة إلى جدران الحماية المصدر والهدف. لمزيد من المعلومات، راجع إعداد جدار الحماية العنقودي Azure DocumentDB .

لقطة شاشة لخطوة تكوين الاتصال العام في المعالج.

الاتصال الخاص

في الاتصال الخاص، تعمل مهمة الترحيل داخل شبكتها الافتراضية. للتواصل الآمن مع شبكتك الافتراضية، نستخدم الربط بين الشبكات الافتراضية.

  1. اختر الاشتراك، مجموعة الموارد، والشبكة الافتراضية من القائمة المنسدلة.

  2. شغل سكريبت PowerShell المرفق على الشاشة لتمكين تكامل الشبكة الافتراضية.

  3. حدد التالي للمتابعة.

لقطة شاشة لخطوة تكوين الاتصال الخاص في المعالج.

الخطوة 5: اختيار المجموعات

في هذه الخطوة، تختار المجموعات التي ستدرج في مهمة الترحيل. اختر من قائمة المجموعات باستخدام خيارات البحث المتاحة. المجموعات الموجودة بالفعل في الهدف يتم تمييزها تلقائيا ب نعم في عمود الموجود في الهدف .

Tip

تأكد من اختيار جميع المجموعات التي تريد تضمينها لأن قائمة المجموعات لا يمكن إضافتها بمجرد إنشاء مهمة الترحيل.

حدد التالي للمتابعة.

لقطة شاشة لخطوة اختيار المجموعات في ساحر.

الخطوة 6: تأكيد وابدأ

راجع تفاصيل وظيفة الانتقال قبل اختيار بدء الترحيل. إذا كانت التفاصيل بحاجة إلى تحديث، استخدم زر تعديل التفاصيل .

بمجرد إنشاء مهمة الترحيل بنجاح، يتم توجيهك تلقائيا إلى صفحة عرض الوظائف الموجودة

Tip

يتم تشغيل مهام ترحيل البيانات على خدمة ترحيل قاعدة بيانات Azure. لذلك، لست ملزما بأن تكون متصلا ببيئات المصدر والهدف أثناء نقل البيانات. يتم تحديث الحالة على لوحة التحكم بشكل متكرر.

مراقبة وظائف الهجرة الحالية

استخدم تبويب عرض الوظائف الحالية لمراقبة حالة ترحيل الوظائف المهيأة. الوظائف مدرجة بناء على الرسائل المختارة. استخدم زر تغيير DMS لتغيير اختيارك.

يتم تحديث الحالة تلقائيا على فترات متكررة. تكتمل المهام غير المتصلة تلقائيا بمجرد نسخ لقطات المجموعة المختارة إلى الهدف. ومع ذلك، يجب تقليص عمليات النقل عبر الإنترنت يدويا.

لقطة شاشة لشاشة عرض الوظائف الموجودة.

لعرض حالة المجموعة، اختر صفا من الجدول.

لقطة شاشة تظهر حالة المجموعات للترحيل غير المتصل.

مراقبة الهجرة عبر الإنترنت

الترحيلات عبر الإنترنت، على عكس الترحيلات غير المتصلة، لا تكتمل تلقائيا. بدلا من ذلك، تستمر في التشغيل حتى يتم الانتهاء منها يدويا باختيار Cutover.

لإكمال الترحيل عبر الإنترنت، اتبع الخطوات التالية بالترتيب المذكور:

  1. يتم تفعيل زر التحويل بمجرد اكتمال التحميل الأولي لجميع المجموعات. في هذه المرحلة، تكون الوظيفة في مرحلة التكرار، حيث تنسخ باستمرار التحديثات من المثيل المصدر إلى المثيل المستهدف للحفاظ على up-toالتاريخ مع أحدث التغييرات.

  2. عندما تكون جاهزا لإجراء عملية الانتقال الترحيلي، أوقف جميع المعاملات الواردة إلى المجموعات المصدرية التي يتم نقلها.

  3. تظهر فجوة التكرار الفجوة الزمنية بين آخر تحديث والوقت الحالي.

  4. راقب تغييرات النسخ في الجدول وانتظر حتى تستقر مقياس تغييرات النسخ أثناء اللعب . تشير مقياس Replication Changes Played المستقر إلى أن جميع التحديثات من المصدر يتم نسخها بنجاح إلى الهدف.

  5. اختر القطع عندما تكون فجوة النسخ صغيرة لجميع المجموعات ويكون مقياس تغييرات النسخ الذي تم لعبه مستقرا.

  6. تحقق يدويا من أن عدد الصفوف هو نفسه بين مجموعات المصدر والهدف.

إشعار

إجراء عملية التحويل دون التحقق من التزامن بين المصدر والهدف قد يؤدي إلى فقدان البيانات.

لقطة شاشة تظهر حالة المجموعات للترحيل عبر الإنترنت

سجل مزود موارد Microsoft.DataMigration في اشتراكك

للتأكد من تسجيل مزود موارد Microsoft.DataMigration في اشتراكك، يمكنك اتباع الخطوات التالية:

Azure portal

  1. اذهب إلى بوابة Azure وانتقل إلى اشتراكك.

  2. في القائمة اليسرى، اختر مزودي الموارد تحت الإعدادات.

  3. ابحث عن Microsoft.DataMigration في مربع البحث في الأعلى.

  4. إذا لم يكن مسجلا، اختر زر التسجيل .

Azure CLI

  1. افتح واجهة Azure Cloud Shell أو جهاز الطرفية المحلي الخاص بك.

  2. شغل الأمر التالي لتسجيل مزود الموارد:

    az provider register --namespace Microsoft.DataMigration
    

PowerShell

  1. افتح Azure Cloud Shell أو PowerShell المحلي الخاص بك.

  2. شغل الأمر التالي لتسجيل مزود الموارد:

    Register-AzResourceProvider -ProviderNamespace "Microsoft.DataMigration"
    

FAQ

لماذا تغيب العروض في خطوة اختيار الشاشة للمجموعة عندما يدعم Azure DocumentDB العروض؟

يدعم Azure DocumentDB إنشاء عروض جديدة. ومع ذلك، لا يوفر امتداد الترحيل دعما لترحيل العروض الحالية.

بعد الانتهاء من الترحيل، يمكنك دائما إعادة إنشاء العروض.

أي المجموعات وقواعد البيانات يتم تخطيها عند الانتقال من MongoDB إلى Azure DocumentDB؟

تعتبر قواعد البيانات والمجموعات التالية داخلية لمونغو دي بي:

Category Description
قواعد البيانات إعداد المسؤول، المحلي، النظام
المجموعات أي مجموعة لها بادئة system.

هل تعمل وظائف الترحيل محليا على جهازي؟

تدرج قواعد البيانات والمجموعات مباشرة في واجهة المعالج باستخدام أوامر تنفذ من عميل VS Code المحلي. تتطلب هذه الوظائف الاتصال الشبكي بين الجهاز الذي يعمل ب VS Code وكل من بيئتي المصدر والهدف.

يتم تنفيذ مهام ترحيل البيانات بواسطة خدمة ترحيل قاعدة بيانات Azure (DMS). DMS هو خدمة مستضافة من قبل Azure تقوم بتنظيم وإدارة أنشطة نقل البيانات. بمجرد إنشاء مهام الترحيل، لم تعد بحاجة للحفاظ على الاتصال ببيئات المصدر والهدف.

هل يمكنني إعادة تسمية قواعد البيانات والمجموعات أثناء الترحيل؟

الإضافة لا تدعم إعادة تسمية قواعد البيانات والمجموعات أثناء الترحيل.

كيف يجب أن أضبط جدران الحماية في الخادم المصدر لتجنب مشاكل الاتصال؟

يعتمد تكوين الشبكة المطلوب على وضع الاتصال المختار:

  • الوضع العام: يجب السماح بعناوين IP المعروضة في المعالج على كل من جدران الحماية المصدر والهدف لتمكين التواصل.
  • الوضع الخاص: يجب عليك تفعيل تكامل الشبكة الافتراضية حتى تتمكن خوادم DMS من التواصل بأمان مع نقاط النهاية المصدر والهدف داخل الشبكة الافتراضية.

يرجى أيضا الرجوع إلى الاتصال في VS Code

كم عدد قواعد البيانات والمجموعات التي يمكنني ترحيلها في ترحيل واحد؟

يمكنك تضمين ما يصل إلى 25 مجموعة في ترحيل واحد. ومع ذلك، يمكنك إنشاء وتشغيل عدة وظائف ترحيل لنقل مجموعات أخرى.

كم عدد وظائف الترحيل التي يمكنني تشغيلها في نفس الوقت؟

يمكنك تشغيل عدة وظائف ترحيل عند استخدام الوصول العام. ومع ذلك، عند استخدام الوصول الخاص، يمكن لشبكة افتراضية واحدة فقط دعم مهمة نشطة واحدة في كل مرة. لتشغيل عدة وظائف بوصول خاص، تحتاج إلى استخدام شبكة افتراضية مختلفة لكل وظيفة.

ما نوع السجلات التي تولدها التوسعة؟

يسجل الامتداد الأخطاء والتحذيرات وسجلات التشخيص الأخرى في مجلد السجلات الافتراضي:

  • نوافذ - C:\Users\<username>\.dmamongo\logs\
  • لينكس - ~/.dmamongo/logs
  • macOS - /Users/<username>/.dmamongo/logs

الخطوات التالية