اتصال تطبيقك بمثيل Azure SQL المُدار

ينطبق على: مثيل Azure SQL المُدار

اليوم لديك خيارات متعددة عند تحديد كيفية ومكان استضافة تطبيقك.

يمكنك اختيار استضافة التطبيق في السحابة باستخدام Azure App Service أو بعض خيارات الشبكة الظاهرية المتكاملة لـ Azure مثل Azure App Service Environment وأجهزة Azure الظاهرية وVirtual Machine Scale Sets. يمكنك أيضاً اتباع نهج مجموعة مختلطة والحفاظ على تطبيقاتك داخلية.

أيا كان خيارك، يمكنك توصيله بمثيل Azure SQL المُدار.

توضح هذه المقالة كيفية توصيل تطبيق بمثيل Azure SQL المُدار في عدد من سيناريوهات التطبيق المختلفة من داخل الشبكة الظاهرية.

هام

يمكنك أيضاً تمكين الوصول إلى البيانات للمثيل المُدار من خارج الشبكة الظاهرية. يمكنك الوصول إلى المثيل المُدار من خدمات Azure متعددة المستأجرين مثل Power BI أو Azure App Service أو شبكة محلية غير متصلة بـ VPN باستخدام نقطة النهاية العامة على مثيل مُدار. ستحتاج إلى تمكين نقطة النهاية العامة على المثيل المُدار والسماح بنسبة استخدام شبكة نقطة النهاية العامة على مجموعة أمان الشبكة المقترنة بالشبكة الفرعية للمثيل المُدار. راجع تفاصيل أكثر أهمية عن تكوين نقطة النهاية العامة في مثيل Azure SQL المُدار.

High availability

الاتصال داخل نفس الشبكة الظاهرية

توصيل تطبيق داخل نفس الشبكة الظاهرية مثل مثيل SQL المُدار هو أبسط سيناريو. يمكن للأجهزة الظاهرية داخل الشبكة الظاهرية الاتصال ببعضها مباشرة حتى لو كانت داخل شبكات فرعية مختلفة. وهذا يعني أن كل ما تحتاجه لتوصيل تطبيق داخل App Service Environment أو جهاز ظاهري هو تعيين سلسلة الاتصال بشكل مناسب.

الاتصال داخل شبكة ظاهرية مختلفة

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

هناك خياران لتوصيل الشبكات الظاهرية:

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

هام

في 9/22/2020، أُعلنَ عن دعم تناظر الشبكة الظاهرية العمومية لنظام المجموعات الظاهرية المنشأة حديثاً. وهذا يعني أن تناظر الشبكة الظاهرية العمومية مدعوم لمثيلات SQL المُدارة التي أُنشئِت في شبكات فرعية فارغة بعد تاريخ الإعلان، وكذلك لجميع المثيلات المُدارة اللاحقة التي أُنشئِت في تلك الشبكات الفرعية. بالنسبة لجميع مثيلات SQL المُدارة الأخرى، يقتصر دعم التناظر على الشبكات الموجودة في نفس المنطقة بسبب قيود تناظر الشبكة الظاهرية العمومية. راجع أيضاً القسم ذي الصلة من مقالة الأسئلة المتداولة في الشبكات الفرعية Azure للحصول على مزيد من التفاصيل. لتكون قادراً على استخدام تناظر شبكة ظاهرية عمومية لمثيلات SQL المُدارة من نظام مجموعة ظاهرية أُنشئِت قبل تاريخ الإعلان، خذ بعين الاعتبار تكوين وقت الصيانة على المثيلات، كما أنه ستُنقل المثيلات إلى نظام مجموعات ظاهرية جديدة تدعم تناظر الشبكة الظاهرية العمومية.

الاتصال المحلي

يمكن أيضاً اتصال تطبيقك المحلي بمثيل SQL المُدار عبر الشبكة الظاهرية (عنوان IP الخاص). للوصول إليه محلياً، تحتاج إلى إجراء اتصال موقع إلى موقع بين التطبيق وشبكة الاتصال الظاهرية لمثيل SQL المُدار. للوصول إلى البيانات إلى المثيل المُدار من خارج الشبكة الظاهرية، راجع تكوين نقطة النهاية العامة في مثيل Azure SQL المُدار.

هناك خياران لكيفية الاتصال المحلي بشبكة Azure الظاهرية:

إذا أسستَ اتصالاً محلياً بـ Azure بنجاح، ولا يمكنك تأسيس اتصال بمثيل SQL المُدار، فتحقق مما إذا كان جدار الحماية الخاص بك يحتوي على اتصال خارجي مفتوح على المنفذ 1433 SQL بالإضافة إلى نطاق المنافذ 11000-11999 لإعادة التوجيه.

الاتصال بمربع المطور

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

للوصول إلى البيانات إلى المثيل المُدار من خارج الشبكة الظاهرية، راجع تكوين نقطة النهاية العامة في مثيل Azure SQL المُدار.

الاتصال مع تناظر شبكة ظاهرية

يُنفذ العملاء سيناريو آخر حيث تُثبت بوابة VPN في شبكة ظاهرية منفصلة والاشتراك من واحدة تستضيف مثيل SQL المُدار. ثم يتم تناظر الشبكتين الظاهريتين. توضح عينة مخطط التصميم التالية كيفية تنفيذ ذلك.

Virtual network peering

بمجرد إعداد البنية الأساسية الرئيسية، تحتاج إلى تعديل بعض الإعدادات حتى يمكن لبوابة VPN مشاهدة عناوين IP في الشبكة الظاهرية المُستضيفة لمثيل SQL المُدار. للقيام بذلك، أجرِ التغييرات التالية المُحددة للغاية ضمن "Peering settings".

  1. في الشبكة الظاهرية التي تستضيف بوابة VPN، انتقل إلى "Peerings"، انتقل إلى اتصال الشبكة الظاهرية المتناظرة لمثيل SQL المُدار، ثم انقر فوق "Allow Gateway Transit".
  2. في الشبكة الظاهرية التي تستضيف مثيل SQL المُدار، انتقل إلى "Peerings"، انتقل إلى اتصال الشبكة الظاهرية المتناظرة لبوابة VPN، ثم انقر فوق "Use remote gateways".

الاتصال بـ Azure App Service

يمكنك أيضاً توصيل تطبيق يستضيفه Azure App Service. للوصول إليه من Azure App Service عبر الشبكة الظاهرية، تحتاج أولاً إلى إجراء اتصال بين التطبيق والشبكة الظاهرية لمثيل SQL المُدار. راجع تكامل التطبيق مع شبكة Azure الظاهرية. للوصول إلى البيانات إلى المثيل المُدار من خارج الشبكة الظاهرية، راجع تكوين نقطة النهاية العامة في مثيل Azure SQL المُدار.

لاستكشاف أخطاء Azure App Service عبر الشبكة الظاهرية وإصلاحها، راجع استكشاف أخطاء الشبكات الظاهرية والتطبيقات وإصلاحها.

حالة خاصة من اتصال Azure App Service بمثيل SQL المُدار عند تكامل Azure App Service مع شبكة متناظرة إلى شبكة ظاهرية لمثيل SQL المُدار. تتطلب هذه الحالة التكوين التالي لإعدادها:

  • يجب "ألا" يكون لدى الشبكة الظاهرية لمثيل SQL المُدار بوابة
  • يجب أن يكون لدى الشبكة الظاهرية لمثيل SQL المُدار خيار Use remote gateways مُعين
  • يجب أن يكون لدى الشبكة الظاهرية المتناظرة خيار Allow gateway transit مُعين

يوضح هذا السيناريو في الرسم التخطيطي التالي:

integrated app peering

ملاحظة

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

استكشاف مشكلات الاتصالية وإصلاحها

لاستكشاف مشكلات الاتصالية وإصلاحها، راجع ما يلي:

  • إذا كنت غير قادر على الاتصال بمثيل SQL المُدار من جهاز Azure ظاهري ضمن نفس الشبكة الظاهرية لكن شبكة فرعية مختلفة، فتحقق مما إذا كان لديك مجموعة أمان الشبكة مُعينة على الشبكة الفرعية للجهاز الظاهري التي قد تمنع الوصول. بالإضافة إلى ذلك، اتصال صادر مفتوح على منفذ SQL 1433 بالإضافة إلى المنافذ في النطاق 11000-11999، حيث إن هناك حاجة إلى الاتصال عبر إعادة التوجيه داخل حدود Azure.

  • تأكد من تعيين نشر BGP إلى "Enabled" لجدول التوجيه المقترن بالشبكة الظاهرية.

  • إذا كنت تستخدم P2S VPN، فتحقق من التكوين في مدخل Microsoft Azure لمعرفة ما إذا كنت ترى أرقام الدخول/ الخروج. تشير الأرقام غير الصفرية إلى أن Azure يوجهه نسبة استخدام الشبكة من وإلى أماكن العمل.

    ingress/egress numbers

  • تحقق من أن جهاز العميل (الذي يقوم بتشغيل عميل VPN) لديه مسار إدخالات لجميع الشبكات الظاهرية التي تحتاج إلى الوصول إليها. تُخزن المسارات في %AppData%\Roaming\Microsoft\Network\Connections\Cm\<GUID>\routes.txt.

    route.txt

    كما هو موضح في هذه الصورة، هناك إدخالان لكل شبكة ظاهرية مُشارِكة وإدخال ثالث لنقطة نهاية VPN المُكوّنة في المدخل.

    طريقة أخرى للتحقق من المسارات هي عن طريق الأمر التالي. يُظهر الإخراج المسارات إلى الشبكات الفرعية المختلفة:

    C:\ >route print -4
    ===========================================================================
    Interface List
    14...54 ee 75 67 6b 39 ......Intel(R) Ethernet Connection (3) I218-LM
    57...........................rndatavnet
    18...94 65 9c 7d e5 ce ......Intel(R) Dual Band Wireless-AC 7265
    1...........................Software Loopback Interface 1
    Adapter===========================================================================
    
    IPv4 Route Table
    ===========================================================================
    Active Routes:
    Network Destination        Netmask          Gateway       Interface  Metric
            0.0.0.0          0.0.0.0       10.83.72.1     10.83.74.112     35
           10.0.0.0    255.255.255.0         On-link       172.26.34.2     43
           10.4.0.0    255.255.255.0         On-link       172.26.34.2     43
    ===========================================================================
    Persistent Routes:
    None
    
  • إذا كنت تستخدم شبكة الاتصال الظاهرية، فتأكد من اتباع الإرشادات الخاصة بإعداد السماح بعبور البوابة واستخدام البوابات البعيدة.

  • إذا كنت تستخدم شبكة ظاهرية متناظرة للاتصال بتطبيق مستضاف على Azure App Service، وكانت الشبكة الظاهرية لمثيل SQL المُدار تحتوي على نطاق عنوان IP عام، فتأكد من أن إعدادات التطبيق المُستضاف تسمح بتوجيه نسبة استخدام الشبكة الصادرة إلى شبكات IP العامة. اتبع الإرشادات الموجودة في تكامل الشبكة الظاهرية الإقليمية.

الإصدارات المطلوبة من برامج تشغيل الجهاز والأدوات

يوصى باستخدام الحد الأدنى من إصدارات الأدوات وبرامج تشغيل الجهاز إذا كنت ترغب في الاتصال بمثيل SQL المُدار:

برنامج تشغيل الجهاز/ أداة إصدار
‎.NET Framework 4.6.1 (أو.NET Core)
برنامج تشغيل ODBC v17
برنامج تشغيل PHP 5.2.0
برنامج تشغيل JDBC 6.4.0
برنامج تشغيل الجهاز Node.js 2.1.1
برنامج تشغيل OLEDB 18.0.2.0
SSMS 18.0 أو أحدث
SMO 150 أو أحدث

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