استكشاف أخطاء استجابات حركة المرور الخلفية Azure Load Balancer وإصلاحها

توفر هذه الصفحة معلومات استكشاف الأخطاء وإصلاحها لأسئلة Azure Load Balancer.

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

إذا كنت تشك في أن أعضاء التجمع الخلفي يتلقون نسبة استخدام الشبكة، فقد يرجع ذلك إلى الأسباب التالية. يقوم Azure Load Balancer بتوزيع نسبة استخدام الشبكة استنادا إلى الاتصالات. تأكد من التحقق من توزيع نسبة استخدام الشبكة لكل اتصال وليس لكل حزمة. تحقق من استخدام علامة التبويب توزيع التدفق في لوحة معلومات Load Balancer Insights التي تم تكوينها مسبقا.

لا يدعم Azure Load Balancer موازنة تحميل روبن المستديرة الحقيقية ولكنه يدعم وضع التوزيع المستند إلى التجزئة.

السبب 1: تكوين استمرار جلسة العمل

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

السبب 2: لديك وكيل تم تكوينه

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

لا تستجيب الأجهزة الافتراضية الموجودة خلف موازن التحميل لنسبة استخدام الشبكة على منفذ البيانات المكون

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

  • الجهاز الظاهري لتجمع الواجهة الخلفية لموازن التحميل لا يستمع إلى منفذ البيانات

  • تقوم مجموعة أمان الشبكة بحظر المنفذ على الجهاز الظاهري لتجمع الواجهة الخلفية لموازن التحميل

  • الوصول إلى موازن التحميل من نفس الجهاز الظاهري و NIC

  • الوصول إلى الواجهة الأمامية لموازن تحميل الانترنت من الجهاز الظاهري الخاص بتجمع الواجهة الخلفية لموازن تحميل المشاركة

السبب 1: لا يستمع الجهاز الظاهري لتجمع الواجهة الخلفية لموازن التحميل إلى منفذ البيانات

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

التحقق من الصحة والحل

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

  2. افتح موجه الأوامر وقم بتشغيل الأمر التالي للتحقق من وجود تطبيق يستمع إلى منفذ البيانات:

    netstat -an 
    
  3. إذا لم يكن المنفذ مدرجًا مع الحالة LISTENING، فقم بتكوين منفذ وحدة الاستماع المناسب

  4. إذا تم وضع علامة على المنفذ على أنه استماع، فتحقق من التطبيق المستهدف على هذا المنفذ بحثًا عن أي مشكلات محتملة.

السبب 2: تقوم مجموعة أمان الشبكة بحظر المنفذ على الجهاز الظاهري لتجمع الواجهة الخلفية لموازن التحميل

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

بالنسبة إلى موازن التحميل العام، سيتم استخدام عنوان IP لعملاء الإنترنت للاتصال بين العملاء وأجهزة VM الخلفية لـ Load Balancer. تأكد من السماح بعنوان IP للعملاء في مجموعة أمان الشبكة الخلفية للجهاز الافتراضي.

  1. سرد مجموعات أمان الشبكة المكونة على الواجهة الخلفية VM. لمزيد من المعلومات، راجع إدارة مجموعات أمان الشبكة

  2. من قائمة مجموعات أمان الشبكة، تحقق مما إذا كان:

    • نسبة استخدام الشبكة الواردة أو الصادرة على منفذ البيانات بها تداخل.

    • قاعدة مجموعة أمان الشبكة رفض الكل في NIC الخاص بالجهاز الظاهري أو الشبكة الفرعية التي لها أولوية أعلى من القاعدة الافتراضية التي تسمح بتحقيقات موازن التحميل ونسبة استخدام الشبكة (يجب أن تسمح مجموعات أمان الشبكة لموازن التحميل IP لـ 168.63.129.16، هذا هو منفذ الفحص)

  3. إذا كان أي من القواعد يحظر حركة المرور، فقم بإزالة هذه القواعد وإعادة تكوينها للسماح بمرور البيانات. 

  4. اختبر ما إذا كان الجهاز الافتراضي قد بدأ الآن في الاستجابة لتحقيقات الصحة.

السبب 3: الوصول إلى موازن التحميل الداخلي من نفس الجهاز الظاهري وواجهة الشبكة

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

القرار

يمكنك حل هذه المشكلة بإحدى الطرق التالية:

  • قم بتكوين أجهزة افتراضية منفصلة لمجموعة الواجهة الخلفية لكل تطبيق.

  • قم بتكوين التطبيق في أجهزة NIC VMs المزدوجة بحيث يستخدم كل تطبيق واجهة الشبكة وعنوان IP الخاصين به.

السبب الرابع: الوصول إلى الواجهة الأمامية لموازن التحميل الداخلي من الجهاز الظاهري لتجمع الواجهة الخلفية لموازن التحميل المشارك

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

القرار

هناك عدة طرق لإلغاء حظر هذا السيناريو، بما في ذلك استخدام خادم وكيل. تقييم بوابة التطبيق أو وكلاء الطرف الثالث (على سبيل المثال، nginx أو haproxy). لمزيد من المعلومات حول بوابة التطبيق، راجع نظرة عامة على بوابة التطبيق

التفاصيل

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

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

عندما يتم تعيين التدفق مرة أخرى إلى نفسه، يبدو أن التدفق الصادر ينشأ من الجهاز الظاهري إلى الواجهة الأمامية، ويبدو أن التدفق الوارد المقابل ينشأ من الجهاز الظاهري إلى نفسه. من وجهة نظر نظام التشغيل الضيف، لا تتطابق الأجزاء الواردة والصادرة من نفس التدفق داخل الجهاز الافتراضي. لن يتعرف مكدس TCP على هذين النصفين من نفس التدفق باعتباره جزءًا من نفس التدفق. المصدر والوجهة غير متطابقين. عندما يتم تعيين التدفق إلى أي جهاز ظاهري آخر في تجمع الواجهة الخلفية، تتطابق نصفي التدفق ويمكن للجهاز الظاهري الاستجابة للتدفق.

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

يمكنك دمج موازن التحميل الداخلي مع أي وكيل تابع لجهة خارجية أو استخدام بوابة التطبيق الداخلية لسيناريوهات الوكيل مع HTTP / HTTPS. بينما يمكنك استخدام موازن التحميل العام للتخفيف من هذه المشكلة، فإن السيناريو الناتج يكون عرضة لـ استنفاد SNAT. تجنب هذا النهج الثاني ما لم تتم إدارتها بعناية.

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

إذا لم تحل الخطوات السابقة المشكلة، فافتح «support ticket».