مشاركة عبر


البرنامج التعليمي: كيفية الوصول إلى SQL Server المحلي من الشبكة الظاهرية المدارة من Data Factory باستخدام نقطة النهاية الخاصة

يوفر هذا البرنامج التعليمي خطوات لاستخدام مدخل Microsoft Azure لإعداد خدمة الارتباط الخاص والوصول إلى SQL Server المحلي من شبكة ظاهرية مدارة باستخدام نقطة نهاية خاصة. يضمن استخدام شبكة ظاهرية مدارة أن نسبة استخدام الشبكة من وإلى مصدر SQL المحلي الخاص بك ستمر عبر نقطة النهاية الخاصة بك، وبالتالي تأمين التعرض للسحابة العامة مع طبقة إضافية من الأمان والعزل. الموارد المطلوبة المذكورة أدناه ضرورية لدعم السيناريو.

إشعار

يصف الحل المعروض في هذه المقالة اتصال SQL ،Server ولكن يمكنك استخدام أسلوب مشابه للاتصال والاستعلام عن الموصلات المحلية الأخرى المتوفرة والمدعومة في Azure Data Factory.

لقطة شاشة تعرض نموذج الوصول SQL server.

المتطلبات الأساسية

  • اشتراك Azure. في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.
  • الشبكة الظاهرية . إذا كنت لا تمتلك شبكة ظاهرية فأنشئ التالي Create Virtual Network.
  • شبكة ظاهرية على شبكة محلية. أنشئ اتصالاً بين الشبكة الظاهرية والشبكة المحلية إما باستخدام ExpressRoute وإما VPN. إذا كنت تفضل استخدام جهاز ظاهري سحابي في شبكة خاصة، يمكنك القيام بذلك أيضا. ما عليك سوى إنشاء شبكة ظاهرية للأجهزة الظاهرية السحابية وارتباط خاص بالشبكة الظاهرية ويمكنك الوصول إليها كما لو كانت أجهزة محلية في شبكتك الخاصة على الرغم من استضافتها في السحابة.
  • مصنع البيانات مع تمكين VNet المدارة. إذا لم يكن لديك Data Factory أو الشبكة الظاهرية المدارة غير ممكنة، فقم بإنشاء واحد التالي إنشاء Data Factory باستخدام الشبكة الظاهرية المدارة.

إنشاء شبكات فرعية للموارد

استخدم المدخل لإنشاء شبكات فرعية في الشبكة الظاهرية.

الشبكة الفرعية ‏‏الوصف
be-subnet الشبكة الفرعية للخوادم الخلفية
fe-subnet الشبكة الفرعية لموازن التحميل الداخلي القياسي
pls-subnet الشبكة الفرعية لـ Private Link Service

لقطة شاشة تظهر صفحة الشبكة الفرعية.

أنشئ موازن تحميل قياسي

استخدم المدخل لإنشاء موازن تحميل داخلي قياسي.

  1. في الجانب العلوي الأيسر من الشاشة، حدد Create a resource > Networking > Load Balancer.

  2. في علامة التبويب "Basics" لصفحة "Create load balancer"، أدخل المعلومات التالية أو حددها:

    الإعداد القيمة‬
    الاشتراك حدد Subscription الخاص بك.
    مجموعة الموارد حدد مجموعة الموارد الخاصة بك.
    الاسم أدخل myLoadBalancer.
    المنطقة حدد East US.
    نوع حدد Internal.
    وحدة حفظ المخزون SKU حدد قياسي.
    الشبكة الظاهرية حدد شبكتك الظاهرية.
    الشبكة الفرعية حدد fe-subnet التي تم إنشاؤها في الخطوة السابقة.
    تعيين عنوان IP حدد Dynamic.
    مناطق التوفّر حدد "Zone-redundant".
  3. اقبل الإعدادات الافتراضية للإعدادات المتبقية، ثم حدد Review + create.

  4. حدد Review + create من علامة التبويب، حدد Create.

    Screenshot تظهر خطوة إنشاء موازن تحميل قياسي.

إنشاء موارد موازن التحميل

إنشاء مجموعة الواجهة الخلفية

تحتوي عناوين المجموعة الخلفية على عناوين IP الخاصة ببطاقة واجهات الشبكة الظاهرية (NICs) المتصلة بموازن التحميل.

قم بإنشاء تجمع عناوين الخلفية myBackendPool لتشمل الأجهزة الظاهرية لحركة مرور موازن التحميل عبر الإنترنت.

  1. حدد All services من القائمة اليسرى ثم حدد All resources، وبعد ذلك حددmyLoadBalancer من قائمة المصادر.
  2. ضمن الإعدادات، حدد تجمعات الخلفية، ثم حدد إضافة.
  3. في صفحة إضافة مجموعة الخلفية، للاسم، اكتب myBackendPool، كاسم لمجموعة الخلفية، ثم حددإضافة.

إنشاء فحوصات السلامة

يُراقب موازن التحميل حالة تطبيقك باستخدام فحوصات السلامة.

يضيف فحص السلامة الأجهزة الظاهرية أو يزيلها من موازنة التحميل بناءً على استجابتها لفحوصات السلامة.

قم بإنشاء فحص سلامة باسم myHealthProbe لمراقبة صحة الأجهزة الظاهرية.

  1. حدد All services من القائمة اليسرى ثم حدد All resources، وبعد ذلك حددmyLoadBalancer من قائمة المصادر.

  2. أسفل الإعدادات، حددفحوصات السلامة، ثم حدد إضافة.

    الإعداد القيمة‬
    الاسم أدخِل myHealthProbe.
    البروتوكول حدد TCP.
    المنفذ أدخل 22.
    الفاصل الزمني أدخِل 15 لعدد الفاصل الزمني بالثواني بين محاولات الفحوصات.
    حد غير سليم حدد 2 لعدد من الحد Unhealthy أو فشل تحقيق الفحوصات المتتالية التي يجب أن تحدث قبل اعتبار الجهاز الظاهري غير سليم.
  3. اترك بقية الإعدادات الافتراضية، وحدد OK.

إنشاء قاعدة موازن التحميل

قاعدة موازنة التحميل التي تُستخدم لتعريف كيفية توزيع حركة المرور على الأجهزة الظاهرية. تقوم بتعريف تكوين IP الخاص بالواجهة الأمامية لنسبة استخدام الشبكة الواردة ومجموعة IP الخاصة بالواجهة الخلفية لتلقّي نسبة استخدام الشبكة. يُعرَّف المنفذ المصدر والوجهة في القاعدة.

في هذا القسم، ستنشئ قاعدة موازن التحميل:

  1. حدد All services من القائمة اليسرى ثم حدد All resources، وبعد ذلك حددmyLoadBalancer من قائمة المصادر.

  2. أسفل الإعدادات، حدد قواعد موازنة التحميل، ثم حدد إضافة.

  3. استخدم هذه القيم لتكوين قاعدة موازنة التحميل:

    الإعداد القيمة‬
    الاسم أدخل myRule.
    إصدار IP حدد IPv4.
    عنوان IP للواجهة الأمامية حدد LoadBalancerFrontend.
    البروتوكول حدد TCP.
    المنفذ أدخل 1433.
    منفذ خلفي أدخل 1433.
    مجموعة خلفية حدد «myBackendPool».
    فحص سلامة حدد myHealthProbe.
    مهلة الخمول (دقائق) حرك شريط التمرير إلى 15 دقيقة.
    إعادة تعيين TCP حدد «Disabled».
  4. اترك بقية الإعدادات الافتراضية، وحدد "OK".

في هذا القسم، ستقوم بإنشاء خدمة Private Link خلف موازن تحميل قياسي.

  1. في الجزء العلوي الأيمن من الصفحة في مدخل Azure، حدد Create a resource.

  2. البحث عن Private Link في المربع Search the Marketplace.

  3. حدد إنشاء.

  4. في Overview ضمن Private Link Center، حدد الزر الأزرق Create private link service

  5. في علامة التبويب Basics ضمن Create private link serviceأدخل أو حدد المعلومات التالية:

    الإعداد القيمة‬
    تفاصيل المشروع
    الاشتراك حدد Subscription الخاص بك.
    مجموعة الموارد حدد مجموعة الموارد الخاصة بك.
    تفاصيل المثيل
    الاسم أدخل myPrivateLinkService.
    المنطقة حدد East US.
  6. حدد علامة تبويب Outbound Settings، أو حدد Next: Outbound Settings أسفل الصفحة.

  7. في علامة التبويب Outbound Settings، أدخل أو حدد المعلومات التالية:

    الإعداد القيمة‬
    موازن التحميل حدد myLoadBalancer.
    تحميل عنوان IP الأمامي لموازن التحميل حدد LoadBalancerFrontend.
    الشبكة الفرعية NAT المصدر حدد pls-subnet.
    تمكين وكيل TCP V2 اترك الإعداد الافتراضي No.
    إعدادات عنوان IP الخاص
    اترك الإعدادات الافتراضية.
  8. حدد علامة تبويب Access security، أو حدّد "Next: Security" أسفل الصفحة.

  9. اترك الإعداد الافتراضي Role-based access control only في علامة التبويبAccess security.

  10. حدد علامة التبويب Tags أو حدد Next: Tags أسفل الصفحة.

  11. حدد علامة التبويب Review + create، أو حدد Next: Review + create في أسفل الصفحة.

  12. حدد Create في علامة التبويب Review + create.

إنشاء خوادم خلفية

  1. في الجانب الأيسر العلوي للمدخل، حدد Create a resource > حساب > جهاز ظاهري.

  2. ضمن إنشاء جهاز ظاهري، اكتب أو حدد القيم في علامة التبويب الأساسيات:

    الإعداد القيمة‬
    تفاصيل المشروع
    الاشتراك حدد اشتراك Azure الخاص بك.
    مجموعة الموارد حدد مجموعة الموارد الخاصة بك.
    تفاصيل المثيل
    اسم الجهاز الظاهري أدخل myVM1
    المنطقة حدد East US.
    خيارات التوفر حدد "Availability zones".
    مناطق التوفّر حدد 1.
    الصورة حدد Ubuntu Server 22.04 LTS.
    مثيل Azure Spot حدد لا.
    الحجم اختر حجم الجهاز الظاهري أو استخدم الإعداد الافتراضي.
    حساب المسؤول
    اسم مستخدم أدخل username.
    مصدر المفتاح العام SSH أنشئ زوجاً جديداً من المفاتيح.
    اسم زوج المفاتيح mySSHKey.
    قواعد المنفذ الوارد
    المنافذ العامة الواردة بلا
  3. حدد علامة التبويب Networking، أو حدد Next: Disks، ثم Next: Networking.

  4. في علامة تبويب الشبكة، حدد أو أدخل:

    الإعداد القيمة‬
    واجهة الشبكة
    الشبكة الظاهرية حدد شبكتك الظاهرية.
    الشبكة الفرعية be-subnet.
    عنوان IP عام حدد لا شيء.
    المجموعة الأمنية للشبكة NIC حدد لا شيء.
    موازنة الأحمال
    ضع هذا الجهاز الظاهري خلف حل موازنة التحميل الحالي؟ حدد نعم.
    إعدادات موازنة التحميل
    خيارات موازن التحميل حدد Azure load balancing.
    تحديد load balancer حدد myLoadBalancer.
    حدد "backend pool" حدد «myBackendPool».
  5. حدد "Review + create".

  6. راجع الإعدادات، ثم حدّد "إنشاء".

  7. يمكنك تكرار الخطوات من 1 إلى 6 للحصول على أكثر من 1 خادم خلفية للجهاز الظاهري لـ HA.

إنشاء قاعدة إعادة التوجيه إلى نقطة النهاية

  1. قم بتسجيل الدخول وانسخ البرنامج النصي ip_fwd.sh إلى الأجهزة الظاهرية لخادم الواجهة الخلفية.

  2. تشغيل البرنامج النصي مع الخيارات التالية:

    sudo bash ./ip_fwd.sh -i eth0 -f 1433 -a <FQDN/IP> -b 1433
    

    تعيين العنصر النائب <FQDN/IP> هو عنوان IP ل SQL Server الهدف.

    إشعار

    لا يعمل FQDN على SQL Server المحلي، إلا إذا أضفت سجل في منطقة Azure DNS.

  3. قم بتشغيل الأمر التالي وتحقق من iptables في الأجهزة الظاهرية للخادم الخلفي. يمكنك أن ترى سجلاً واحداً في iptables الخاص بك مع هدفك في IP.

    sudo iptables -t nat -v -L PREROUTING -n --line-number
    

    Screenshot تظهر سجل الأمر.

    إشعار

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

    قاعدة المنفذ في موازن التحميل قاعدة المنفذ الخلفي في موازن التحميل تشغيل الأمر في الخادم الخلفي للجهاز الظاهري
    1SQL Server 1433 1433 sudo bash ./ip_fwd.sh -i eth0 -f 1433 -a <FQDN/IP> -b 1433
    SQL Server 2 1434 1434 sudo bash ./ip_fwd.sh -i eth0 -f 1434 -a <FQDN/IP> -b 1433

    مهم

    التكوين داخل الجهاز الظاهري (VM) ليس دائما. هذا يعني أنه في كل مرة تتم فيها إعادة تشغيل الجهاز الظاهري، فإنه يتطلب إعادة تكوين.

  1. حدد All services من القائمة اليسرى، وحدد All resources، ثم حدد data factory الخاصة بك من قائمة الموارد.

  2. حددAuthor & Monitor لإطلاق واجهة مستخدم Data Factory في علامة تبويب منفصلة.

  3. انتقل إلى علامة التبويب Manage ثم انتقل إلى قسم Managed private endpoints.

  4. حدد + New ضمن نقاط النهاية الخاصة المدارة.

  5. حدد لوحةPrivate Link Service من القائمة وحدد Continue.

  6. أدخل اسم نقطة النهاية الخاصة وحدد myPrivateLinkService في قائمة خدمة الرابط الخاص.

  7. <FQDN> أضف من هدفك SQL Server المحلي.

    Screenshot تعرض نقطة النهاية الخاصة.

    إشعار

    عند نشر SQL Server على جهاز ظاهري داخل شبكة ظاهرية، من الضروري تحسين FQDN عن طريق إلحاق الارتباط الخاص. وإلا، سيتم تعارضه مع السجلات الأخرى في إعداد DNS. على سبيل المثال، يمكنك تعديل FQDN الخاص ب SQL Server من sqlserver.westus.cloudapp.azure.net إلى sqlserver.privatelink.westus.cloudapp.azure.net.

    إشعار

    حاليا لا يتم دعم ApplicationIntent وMultiSubnetFailover في خصائص اتصال SQL.

  8. أنشئ نقطة نهاية خاصة.

إنشاء خدمة مرتبطة واختبر الاتصال

  1. انتقل إلى علامة تبويب إدارة ثم انتقل إلى قسم الخدمات المرتبطة.

  2. أسفل Linked service، حدد "New".

  3. حدد لوحة SQL Server من القائمة، وحدد Continue.

    تعرض Screenshot صفحة إنشاء الخدمة المرتبطة.

  4. تمكين التأليف التفاعلي.

    توضح لقطة شاشة طريقة تفعيل التأليف التفاعلي.

  5. أدخل FQDN الخاص ب SQL Server المحلي و**اسم المستخدم وكلمة المرور.

  6. ثم حدد اختبار الاتصال.

    تعرض لقطة شاشة صفحة إنشاء الخدمة المرتبطة بـSQL server.

    إشعار

    إذا كان لديك أكثر من خادم SQL وتحتاج إلى تحديد قواعد موازن تحميل متعددة وسجلات جدول IP بمنافذ مختلفة، فتأكد من إضافة اسم المنفذ بشكل صريح بعد FQDN عند تحرير الخدمة المرتبطة. سيتولى الجهاز الظاهري NAT ترجمة المنفذ. إذا لم يتم تحديده صراحة، فستنتهي مهلة الاتصال دائما.

استكشاف الأخطاء وإصلاحها

انتقل إلى الجهاز الظاهري لخادم الواجهة الخلفية، وتأكد من أن خادم SQL Server يعمل في telnet: telnet <FQDN> 1433.

انتقل إلى البرنامج التعليمي التالي لمعرفة المزيد حول الوصول إلى مثيل Microsoft Azure SQL المدار من VNet المدارة من مصنع البيانات باستخدام نقطة نهاية خاصة: