مشاركة عبر


الاتصالات المختلطة لخدمة تطبيقات Azure

Hybrid Connections هي خدمة في Azure وميزة في Azure App Service. كخدمة، لديها استخدامات وقدرات تتجاوز تلك المستخدمة في App Service. لمعرفة المزيد حول Hybrid Connections واستخدامها خارج App Service، راجع Azure Relay Hybrid Connections.

داخل App Service، يمكن استخدام Hybrid Connections للوصول إلى موارد التطبيق في أي شبكة يمكنها إجراء مكالمات صادرة إلى Azure عبر المنفذ 443. توفر الاتصالات المختلطة الوصول من تطبيقك إلى نقطة نهاية TCP. لا يتيح طريقة جديدة للوصول إلى تطبيقك. كما هو مستخدم في خدمة التطبيقات، يرتبط كل Hybrid Connection بمضيف TCP واحد ومجموعة منفذ.

تمكن هذه الميزة تطبيقاتك من الوصول إلى الموارد على أي نظام تشغيل، شريطة أن تكون نقطة نهاية TCP. لا تعرف ميزة «Hybrid Connections» أو تهتم ببروتوكول التطبيق أو ما تقوم بالوصول إليه. إنها ببساطة توفر الوصول إلـى الشبكة.

طريقة العمل

تتطلب الاتصالات المختلطة توزيع عامل ترحيل حيث يمكنه الوصول إلى كل من نقطة النهاية المطلوبة وAzure. يستدعي عامل الترحيل، Hybrid Connection Manager (HCM)، إلى Azure Relay عبر المنفذ 443. من موقع تطبيق الويب، تتصل البنية الأساسية لخدمة التطبيقات أيضًا بـ Azure Relay نيابة عن التطبيق الخاص بك. من خلال الاتصالات المنضمة، يُمكن لتطبيقك الوصول إلى نقطة النهاية المطلوبة. يستخدم الاتصال TLS 1.2 لمفاتيح الأمان وتوقيع الوصول المُشترك (SAS) للمصادقة والتخويل.

رسم تخطيطي لتدفق الاتصال المختلط عالي المستوى.

عندما يقوم تطبيقك بإجراء طلب DNS يطابق نقطة نهاية اتصال مختلط مكونة، تتم إعادة توجيه حركة مرور TCP الصادرة من خلال الاتصال المختلط.

إشعار

تعني هذه الحقيقة أنه يجب عليك دائما محاولة استخدام اسم DNS للاتصال المختلط. لا تقوم بعض برامج العميل بالبحث عن DNS إذا كانت نقطة النهاية تستخدم عنوان IP بدلا من ذلك.

ميزات App Service Hybrid Connection

هناك العديد من الفوائد لقدرة الاتصالات المختلطة، بما في ذلك:

  • يمكن للتطبيقات الوصول إلى الأنظمة والخدمات المَحلية بأمان.
  • لا تتطلب الميزة نقطة نهاية يُمكن الوصول إليها عبر الإنترنت.
  • إنه إعداد سريع وسهل. لا توجد بوابات مَطلوبة.
  • يتطابق كل اتصال مختلط مع مجموعة مضيف:منفذ واحد، وهو أمر مفيد للأمان.
  • لا يتطلب عادةً فتحات في جدار الحماية. جميع الاتصالات صادرة عبر منافذ الويب القياسية.
  • نظرا لأن الميزة على مستوى الشبكة، فهي غير محددة للغة التي يستخدمها تطبيقك والتقنية التي تستخدمها نقطة النهاية.
  • يمكن استخدامه لتوفير الوصول فـي شبكات متعددة من تطبيق واحد.
  • مدعوم في GA لتطبيقات Windows وتطبيقات Linux. الاتصالات المختلطة غير مدعومة لحاويات Windows المخصصة.

أشياء لا يمكنك القيام بها باستخدام الاتصالات المختلطة

تتضمن الأشياء التي لا يمكنك القيام بها باستخدام الاتصالات المختلطة ما يلي:

  • تركيب مُحرك أقراص.
  • استَخدم UDP.
  • الوصول إلى الخدمات المُستندة إلى TCP التي تستخدم المنافذ الديناميكية، مثل وضع FTP الخامل أو الوضع الخامل الموسع.
  • دعم LDAP، لأنه يُمكن أن يتطلب UDP.
  • دعم Active Directory، لأنه لا يمكنك الانضمام إلى مجال عامل App Service.

إضافة Hybrid Connections وإنشاءها في تطبيقك

لإنشاء اتصال مختلط:

  1. في مدخل Microsoft Azure، حدد تطبيقك. حدد Settings>Networking.

  2. بجوار Hybrid connections، حدد الارتباط Not configured . يُمكنك هنا رؤية Hybrid Connections التي تم تكوينها لتطبيقك.

    لقطة شاشة لقائمة الاتصال المختلط حيث يمكنك إضافة الاتصالات وإدارتها.

  3. لإضافة اتصال مختلط جديد، حدد إضافة اتصال مختلط. ترى قائمة بالاتصالات المختلطة التي قمت بإنشائها بالفعل. لإضافة واحد أو أكثر إلى تطبيقك، حدد تلك التي تريدها، ثم حدد Add selected Hybrid Connection.

    لقطة شاشة لصفحة الاتصال المختلط حيث يمكنك إضافة اتصال.

إذا كنت تريد إنشاء Hybrid Connection جديد، فحدد إنشاء Hybrid Connection جديد. حدد القيم التالية:

  • اسم Hybrid Connection.
  • اسم مُضيف نقطة النهاية.
  • منفذ نقطة النهاية.
  • مساحة اسم ناقل خدمة Microsoft Azure التي تُريد استخدامها.

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

يرتبط كل اتصال مختلط بمساحة اسم ناقل خدمة Microsoft Azure. كل مساحة اسم لناقل خدمة Microsoft Azure موجودة في منطقة Azure. لتجنب زمن الانتقال الذي يسببه الشبكة، استخدم مساحة اسم ناقل خدمة Microsoft Azure في نفس المنطقة مثل تطبيقك.

إذا كنت تريد إزالة Hybrid Connection من تطبيقك، فانقر بزر الماوس الأيمن فوقه وحدد Disconnect.

عند إضافة Hybrid Connection إلى تطبيقك، يمكنك مشاهدة تفاصيل عنه ببساطة عن طريق تحديده.

لقطة شاشة تفاصيل الاتصالات المختلطة.

إنشاء Hybrid Connection في مدخل Azure Relay

بالإضافة إلى تجربة المدخل من داخل تطبيقك، يمكنك إنشاء اتصالات مُختلطة من داخل مدخل Azure Relay. لكي يتم استخدام Hybrid Connection من App Service، يجب القيام بما يلي:

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

Hybrid Connections وخطط App Service

App Service Hybrid Connections فقط فـي وحدات SKU للتسعير الأساس والقياسي والمتميزة والمعزولة. لا تتوفر Hybrid Connections لتطبيقات الوظائف في خطط الاستهلاك. هناك حدود مُرتبطة بخطة التسعير.

خطة الأسعار عدد Hybrid Connections القابلة للاستخدام في الخطة
أساسي 5 لكل خطة
قياسي 25 لكل خطة
Premium (v1-v3) 220 لكل تطبيق
مَعزول (v1-v2) 220 لكل تطبيق

تعرض لك واجهة مستخدم خطة App Service عدد Hybrid Connections التي يتم استخدامها والتطبيقات.

لقطة شاشة لخصائص خطة App Service.

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

هناك حد لعدد نقاط نهاية Hybrid Connection التي يُمكن استخدامها في خطة App Service. يمكن استخدام كل اتصال مختلط مستخدم عبر أي عدد من التطبيقات في تلك الخطة. على سبيل المثال، يتم حساب Hybrid Connection واحد يستخدم في خمسة تطبيقات منفصلة في خطة App Service كـ Hybrid Connection واحد.

التسعير

بالإضافة إلى وجود متطلبات SKU لخطة App Service، هناك تكلفة إضافية لاستخدام الاتصالات المختلطة. هناك رسوم على كل وحدة استماع يستخدمها الاتصال المختلط. وحدة الاستماع هي Hybrid Connection Manager. إذا كان لديك خمسة اتصالات مختلطة مدعومة من قبل اثنين من إدارة الاتصالات المختلطة التي ستكون 10 وحدات استماع. لمزيد من المعلومات، راجع أسعار ناقل خدمة Microsoft Azure.

مدير Hybrid Connection

تتطلب ميزة Hybrid Connections عامل ترحيل في الشبكة التي تستضيف نقطة نهاية Hybrid Connection. يسمى عامل الترحيل هذا Hybrid Connection Manager (HCM). لتنزيل HCM:

  1. في مدخل Microsoft Azure، حدد تطبيقك. حدد Settings>Networking.
  2. بجوار Hybrid connections، حدد الارتباط لفتح صفحة Hybrid connections.
  3. حدد Download connection manager.

تعمل هذه الأداة على Windows Server 2012 والأحدث. يعمل HCM كخدمة ويتصل الصادر بـ Azure Relay على المنفذ 443.

بعد تثبيت HCM، يمكنك تشغيل HybridConnectionManagerUi.exe لاستخدام واجهة المستخدم للأداة. هذا الملف موجود في دليل تثبيت Hybrid Connection Manager. في Windows 10، يمكنك أيضا البحث عن Hybrid إدارة الاتصالات UI في مربع البحث.

لقطة شاشة إدارة الاتصالات المختلطة.

عند بدء تشغيل واجهة مستخدم HCM، أول شيء تراه هو جدول يسرد كافة Hybrid Connections التي تم تكوينها مع هذا المثيل من HCM. إذا كنت ترغب في إجراء أي تغييرات، فصادق أولاً مع Azure.

لإضافة Hybrid Connection واحد أو أكثر إلى HCM:

  1. بدء تشغيل واجهة مُستخدم HCM.

  2. حدد إضافة Hybrid Connection.

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

  3. سجل الدخول باستخدام حساب Azure الخاص بك للحصول على Hybrid Connections المتوفرة مع اشتراكاتك. لا يستمر HCM في استخدام حساب Azure الخاص بك بعد هذه الخطوة.

  4. اختر اشتراكاً.

  5. حدد Hybrid Connections التي تريد أن يقوم HCM بترحيلها.

    لقطة شاشة للاتصالات في إدارة الاتصالات المختلط.

  6. حدد حفظ.

يمكنك الآن رؤية Hybrid Connections التي أضفتها. يمكنك أيضًا تحديد Hybrid Connection المكون لمشاهدة التفاصيل.

لقطة شاشة تفاصيل الاتصال المختلط.

لدعم Hybrid Connections التي تم تكوينها باستخدامها، يتطلب HCM:

  • وصول TCP إلـى Azure عبر المنفذ 443.
  • وصول TCP إلى نقطة نهاية Hybrid Connection.
  • القدرة على إجراء عمليات بحث DNS على مُضيف نقطة النهاية ومساحة اسم ناقل خدمة Microsoft Azure. بمعنى آخر، يجب أن يكون اسم المضيف في اتصال ترحيل Azure قابلا للحل من الجهاز الذي يستضيف HCM.

إشعار

يعتمد Azure Relay على مآخذ ويب لـلاتصال. تتوفر هـذه الإمكانية على Windows Server 2012 أو إصدار أحدث فحسب. وبسبب هذه الحقيقة، HCM غير مدعوم على أنظمة أقدم من Windows Server 2012.

التكرار

يمكن لكل HCM دعم Hybrid Connections متعددة. يمكن أن تدعم HCMs متعددة أي اتصال مختلط. السلوك الافتراضي هـو توجيه نسبة استخدام الشبكة عبر HCMs المكونة لأي نقطة نهاية معينة. إذا كنت تريد توفرًا عاليًا على Hybrid Connections من شبكتك، فقم بتشغيل HCMs متعددة على أجهزة منفصلة. خوارزمية توزيع التحميل المُستخدمة من خدمة الترحيل لتوزيع نسبة استخدام الشبكة إلى HCMs هي تعيين عشوائي.

إضافة Hybrid Connection يدويًا

لتمكين شخص خارج اشتراكك من استضافة مثيل HCM لـ Hybrid Connection معين، شارك سلسلة اتصال البوابة لـ Hybrid Connection معه. يمكنك مشاهدة سلسلة اتصال البوابة في خصائص Hybrid Connection في مدخل Microsoft Azure. لاستخدام هذه السلسلة، حدد Enter Manually في HCM، وقم بالصق في سلسلة اتصال البوابة.

لقطة شاشة لمربع الحوار حيث تقوم بإضافة اتصال مختلط يدويا.

إصلاح

هناك تحديثات دورية Hybrid Connection Manager لإصلاح المشكلات أو توفير تحسينات. عند إصدار الترقيات، يظهر مربع حوار في واجهة مستخدم HCM. تطبيق الترقية يطبق التغييرات ويعيد تشغيل HCM.

إضافة Hybrid Connection إلى تطبيقك برمجيًا

يوجد دعم Azure CLI لـ Hybrid Connections. تعمل الأوامر المقدمة على مُستوى كل من التطبيق وخطة App Service. أوامر مُستوى التطبيق هي كما يلي:

az webapp hybrid-connection

Group
    az webapp hybrid-connection : Methods that list, add and remove hybrid-connections from webapps.
        This command group is in preview. It may be changed/removed in a future release.
Commands:
    add    : Add a hybrid-connection to a webapp.
    list   : List the hybrid-connections on a webapp.
    remove : Remove a hybrid-connection from a webapp.

تمكنك أوامر خطة App Service من تعيين المفتاح الذي يستخدمه اتصال مختلط معين. هناك مفتاحان معينان على كل Hybrid Connection، أساسي وثانوي. يمكنك اختيار استخدام المفتاح الأساسي أو الثانوي مع الأوامر التالية. يمكنك هذا الخيار من تبديل المفاتيح عندما تريد إعادة إنشاء المفاتيح بشكل دوري.

az appservice hybrid-connection --help

Group
    az appservice hybrid-connection : A method that sets the key a hybrid-connection uses.
        This command group is in preview. It may be changed/removed in a future release.
Commands:
    set-key : Set the key that all apps in an appservice plan use to connect to the hybrid-
                connections in that appservice plan.

تأمين Hybrid Connections

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

يمكن لأي شخص لديه Reader حق الوصول إلى Relay رؤية الاتصال المختلط إذا حاول إضافته إلى تطبيق الويب الخاص به في مدخل Microsoft Azure. لا يمكنهم إضافته لأنهم يفتقرون إلى الأذونات لاسترداد سلسلة الاتصال المستخدمة لإنشاء اتصال الترحيل. لإضافة الاتصال المختلط، يجب أن يكون لديهم listKeys الإذن (Microsoft.Relay/namespaces/hybridConnections/authorizationRules/listKeys/action). Contributor يسمح الدور أو أي دور آخر يتضمن هذا الإذن على الترحيل للمستخدمين باستخدام الاتصال المختلط وإضافته إلى تطبيقات الويب الخاصة بهم.

إدارة Hybrid Connections الخاصة بك

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

  1. في إدارة الاتصالات المختلط، حدد الاتصال لمشاهدة نافذة التفاصيل الخاصة به. ثم حدد إزالة.
  2. في مدخل Microsoft Azure، حدد تطبيقك. حدد Settings>Networking.
  3. بجوار Hybrid connections، حدد الارتباط Configured .
  4. في الاتصالات المختلطة، انقر بزر الماوس الأيمن فوق الاتصال وحدد قطع الاتصال.
  5. انتقل إلى Relay لنقطة النهاية التي تحتاج إلى تحديثها. في قائمة التنقل، ضمن Entities، حدد Hybrid Connections ضمن Entities.
  6. حدد الاتصال المختلط. في قائمة التنقل الخاصة به، ضمن Settings، حدد Properties.
  7. قم بإجراء التغييرات وحدد حفظ التغييرات.
  8. ارجع إلى إعدادات Hybrid Connections لـ App Service الخاصة بك وأضف Hybrid Connection مرة أخرى. تأكد من تحديث نقطة النهاية كما هـو مطلوب. إذا لم تتمكن من رؤية Hybrid Connection في القائمة، فقم بالتحديث في غضون 5-10 دقائق.
  9. ارجع إلى Hybrid Connection Manager على الجهاز المَحلي وأضف الاتصال مرة أخرى.

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

تعني حالة Connected أنه تم تكوين HCM واحد على الأقل مع هذا الاتصال المختلط، وأنه قادر على الوصول إلى Azure. إذا كانت حالة Hybrid Connection لا تشير إلى متصل، فلن يتم تكوين Hybrid Connection على أي HCM لديه حق الوصول إلـى Azure. عندما يظهر HCM الخاص بك غير متصل، هناك بعض الأشياء التي يجب التحقق منها:

  • هـل لدى مضيفك حق الوصول الصادر إلى Azure على المنفذ 443؟ يمكنك الاختبار من مضيف HCM باستخدام أمر Test-NetConnection Destination -P PortPowerShell .

  • هل من المُحتمل أن يكون HCM الخاص بك في حالة سيئة؟ حاول إعادة تشغيل خدمة Azure Hybrid إدارة الاتصالات Service المحلية.

  • هل لديك برامج متعارضة مُثبتة؟ لا يمكن أن يتعايش إدارة الاتصالات المختلط مع Biztalk Hybrid إدارة الاتصالات أو ناقل خدمة Microsoft Azure ل Windows Server. عند تثبيت HCM، يجب إزالة أي إصدارات من هذه الحزم أولا.

  • هل لديك جدار حماية بين مضيف HCM وAzure؟ إذا كان الأمر كذلك، فأنت بحاجة إلى السماح بالوصول الصادر إلى كل من عنوان URL لنقطة نهاية ناقل خدمة Microsoft Azure وبوابات ناقل الخدمة التي تقوم بخدمة الاتصال المختلط.

    • يمكنك العثور على عنوان URL لنقطة نهاية ناقل خدمة Microsoft Azure في واجهة مستخدم إدارة الاتصالات المختلطة.

      لقطة شاشة لنقطة نهاية Hybrid Connection Service Bus.

    • بوابات ناقل خدمة Microsoft Azure هي الموارد التي تقبل الطلب في الاتصال المختلط وتمريره عبر Azure Relay. تحتاج إلى السماح بقائمة جميع البوابات ال 128. البوابات بالتنسيق: G#-prod-[stamp]-sb.servicebus.windows.net. علامة الرقم، #، هي رقم بين 0 و127 وهي stamp اسم المثيل داخل مركز بيانات Azure حيث توجد نقطة نهاية ناقل خدمة Microsoft Azure.

    • إذا كان بإمكانك استخدام حرف بدل، يمكنك السماح بقائمة *.servicebus.windows.net.

    • إذا لم تتمكن من استخدام حرف بدل، يجب السماح بقائمة جميع البوابات ال 128.

      يمكنك معرفة الطابع باستخدام nslookup على عنوان URL لنقطة نهاية ناقل خدمة Microsoft Azure.

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

      في هذا المثال، الطابع هو sn3-010. للسماح بقائمة بوابات ناقل خدمة Microsoft Azure، تحتاج إلى الإدخالات التالية:

      G0-prod-sn3-010-sb.servicebus.windows.net
      G1-prod-sn3-010-sb.servicebus.windows.net
      G2-prod-sn3-010-sb.servicebus.windows.net
      G3-prod-sn3-010-sb.servicebus.windows.net
      ... G126-prod-sn3-010-sb.servicebus.windows.net
      G127-prod-sn3-010-sb.servicebus.windows.net

إذا كانت حالتك تشير إلى متصل ولكن يتعذر على تطبيقك الوصول إلى نقطة النهاية الخاصة بك، فعندئذ:

  • تأكد من استخدام اسم DNS في الاتصال المختلط. إذا كنت تستخدم عنوان IP، فقد لا يحدث البحث عن DNS للعميل المطلوب. إذا لم يقم العميل الذي يعمل في تطبيق الويب الخاص بك بالبحث عن DNS، فلن يعمل الاتصال المختلط.
  • تحقق من أن اسم DNS المستخدم في الاتصال المختلط يمكن حله من مضيف HCM. تحقق من الدقة باستخدام nslookup EndpointDNSname حيث EndpointDNSname هو تطابق تام مع ما يتم استخدامه في تعريف Hybrid Connection.
  • اختبر الوصول من مضيف HCM إلى نقطة النهاية باستخدام أمر Test-NetConnection EndpointDNSname -P PortPowerShell . إذا لم تتمكن من الوصول إلى نقطة النهاية من مضيف HCM، فتحقق من جدران الحماية بين المضيفين بما في ذلك أي جدران حماية مستندة إلى المضيف على المضيف الوجهة.
  • إذا كنت تستخدم App Service على Linux، فتأكد من أنك لا تستخدم localhost كمضيف نقطة النهاية. بدلاً من ذلك، استخدم اسم جهازك إذا كنت تحاول إنشاء اتصال بمورد على جهازك المحلي.

في App Service، يمكن استدعاء أداة سطر الأوامر tcpping مـن وحدة تحكم الأدوات المتقدمة (Kudu). يُمكن أن تخبرك هذه الأداة ما إذا كان لديك حق الوصول إلى نقطة نهاية TCP، ولكنها لا تعلمك إذا كان لديك حق الوصول إلى نقطة نهاية Hybrid Connection. عند استخدام الأداة فـي وحدة التحكم مقابل نقطة نهاية Hybrid Connection، فإنك تؤكد أنها تستخدم مجموعة مضيف:منفذ فحسب.

إذا كان لديك عميل سطر أوامر لنقطة النهاية الخاصة بك، فيُمكنك اختبار الاتصال مـن وحدة تحكم التطبيق. على سبيل المثال، يُمكنك اختبار الوصول إلى نقاط نهاية خادم الويب باستخدام curl.