Azure Cloud Services (الدعم الموسع) تعريف مخطط LoadBalancerProbe

إن مسبار فحص موازن التحميل هو اختبار حماية يحدده العميل لنقاط نهاية UDP ونقاط النهاية في مثيلات الدور. إن LoadBalancerProbeليس عنصرًا مستقلاً، بل يتم دمجه مع دور الويب أو دور العامل في ملف تعريف الخدمة. يمكن استخدام أ LoadBalancerProbe من قِبل أكثر من دور.

الامتداد الافتراضي لملف تعريف الخدمة هو csdef.

وظيفة مسبار فحص موازن التحميل

إن موازن تحميل Azure مسؤول عن توجيه حركة المرور الواردة إلى مثيلات الدور الخاصة بك. يحدد موازن التحميل أي مثيلات يمكنها أن تتلقى حركة المرور من خلال فحص كل مثيل بانتظام من أجل تحديد صحة هذا المثيل. يفحص موازن التحميل كل مثيلٍ لعدة مرات في الدقيقة. هناك خياران مختلفان لتوفير حماية المثيل لموازن التحميل - مسبار موازن التحميل الافتراضي ، أو مسبار موازن التحميل المخصص ، والذي يتم تنفيذه عن طريق تعريف LoadBalancerProbe في ملف csdef.

يستخدم مسبار الفحص الافتراضي لموازن التحميل «العامل الضيف» داخل الجهاز الظاهري الذي يستمع ويرد برمز الاستجابة HTTP 200 OK فقط عندما يكون المثيل في حالة الاستعداد (أي عندما لا يكون المثيل في حالة الانشغال أو إعادة التدوير أو الإيقاف وما إلى ذلك). إذا فشل «العامل الضيف» في الحصول على رمز الاستجابة HTTP 200 OK، فإن Azure Load Balancer يحدد المثيل بأنه غير مستجيب ويتوقف عن إرسال حركة المرور إلى هذا المثيل. يستمر موازن تحميل Azure في اختبار اتصال المثيل، وإذا استجاب «العامل الضيف» برمز الاستجابة HTTP 200، يرسل موازن تحميل Azure حركة المرور إلى هذا المثيل مرةً أخرى. عند استخدام دور ويب ، عادة ما يتم تشغيل رمز موقع الويب الخاص بك في w3wp.exe والذي لا تتم مراقبته بواسطة نسيج Azure أو وكيل الضيف ، مما يعني الفشل في w3wp.exe (على سبيل المثال. HTTP 500 responses) لا يتم الإبلاغ عنها إلى وكيل الضيف ولا يعرف موازن التحميل إخراج هذا المثيل من الدوران.

يتجاوز مسبار موازن التحميل المخصص العامل الضيف الافتراضي ويسمح لك بإنشاء المنطق المخصص لك لتحديد صحة مثيل الدور. يفحص موازن التحميل نقطة النهاية الخاصة بك بانتظام (كل 15 ثانية، افتراضيًا) ويتم اعتبار المثيل في استدارة إذا استجاب لرسالة TCP ACK أو HTTP 200 خلال مدة المهلة (مدة افتراضية من 31 ثانية). قد يكون ذلك مفيدًا لتنفيذ منطقك الخاص لإزالة المثيلات من دوران موازن التحميل، على سبيل المثال إرجاع وضعٍ غير وضع رمز 200 إذا كان المثيل أعلى من 90% من وحدة المعالجة المركزية. بالنسبة لأدوار الويب التي تستخدم ملف w3wp.exe، فهذا يعني أنك تحصل كذلك على مراقبة تلقائية لموقع الويب الخاص بك، نظرًا لأن إخفاقات رمز موقع الويب الخاص بك تُرجِعُ إلى مسبار موازن التحميل حالةً غير حالةِ رسالة 200. إذا لم تقم بتعريف LoadBalancerProbe في ملف csdef ، استخدام سلوك موازن التحميل الافتراضي (كما هو موضح سابقا).

إذا استخدمت مسبارًا متخصصًا لموازن التحميل، عليك التأكد من أن يأخذ منطقك في الاعتبار طريقة RoleEnvironment.OnStop. عند استخدام المسبار الافتراضي لموازن التحميل، يتم إخراج المثيل من الاستدارة قبل استدعاء OnStop، ولكن قد يستمر المسبار المخصص لموازن التحميل في إرجاع رسالة 200 OK أثناء حدث OnStop. إذا كنت تستخدم حدث OnStop لتنظيف ذاكرة التخزين المؤقت أو إيقاف الخدمة أو إجراء تغييرات يمكنها أن تؤثر على سلوك وقت تشغيل الخدمة الخاصة بك، فإنك بحاجة إلى أن تتأكد من أن منطق المسبار المخصص لموازن التحميل الخاص بك يزيل المثيل من الاستدارة.

مخطط تعريف الخدمة الأساسي لمسبار موازن التحميل

إن التنسيق الأساسي لملف تعريف الخدمة المتضمن مسبار موازن التحميل هو كالآتي.

<ServiceDefinition …>
   <LoadBalancerProbes>
      <LoadBalancerProbe name="<load-balancer-probe-name>" protocol="[http|tcp]" path="<uri-for-checking-health-status-of-vm>" port="<port-number>" intervalInSeconds="<interval-in-seconds>" timeoutInSeconds="<timeout-in-seconds>"/>
   </LoadBalancerProbes>
</ServiceDefinition>

عناصر المخطط

LoadBalancerProbesيتضمن مكون ملف تعريف الخدمة العناصر التالية:

LoadBalancerProbes element

LoadBalancerProbesيصف العنصر مجموعة مسابير موازن التحميل. إن هذا العنصر هو العنصر الأصلي لـ LoadBalancerProbe.

عنصر LoadBalancerProbe

LoadBalancerProbeيعرّف العنصرُ التحقيق الصحي للنموذج. يمكنك تحديد عدة مسابير لموازن التحميل.

يُوضح الجدول التالي سمات LoadBalancerProbeالعنصر:

السمة النوع الوصف
name string مطلوب اسم مسبار فحص موازن التحميل. يجب أن يكون الاسم فريدًا.
protocol string مطلوب يحدد بروتوكول نقطة النهاية. القيم المُحتملة هي http أو tcp. إذا كان tcp هو المُحدّد، فإن ACK المُستلَم مطلوبٌ لإنجاح التحقيق. إذا كان http هو المُحدد، فإن رمز الاستجابة 200 OK من معرّف URI المُحدد مطلوبٌ لإنجاح التحقيق.
path string معرّف URI المستخدم لطلب الحالة الصحية من الجهاز الظاهري. path مطلوبٌ إذا protocol تم تعيينه إلى http. وإلا لن يُسمح بذلك.

لا توجد قيمة افتراضية.
port integer ‏‏اختياري. منفذ لاتصال مسبار الفحص. يُعد هذا اختياريًا لأي نقطة نهاية، حيث سيتم استخدام المنفذ نفسه للفحص. يمكنك أيضًا تكوين منفذ مختلف لفحصهم. تتراوح القيم المحتملة من 1 إلى 65535، ضمنًا.

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

تبلغ القيمة الافتراضية 15، ويبلغ الحد الأدنى للقيمة 5.
timeoutInSeconds integer ‏‏اختياري. مدة المهلة، بالثواني، المطبقة على الفحص حيث لن تؤدي أي استجابة إلى منع حركة مرور أُخرى من الوصول إلى نقطة النهاية. تسمح هذه القيمة بإخراج نقاط النهاية من الاستدارة على نحو أسرع أو أبطأ من الأوقات النموذجية المستخدمة في Azure (هي الإعدادات الافتراضية).

تبلغ القيمة الافتراضية 31، ويبلغ الحد الأدنى للقيمة 11.

راجع أيضًا

مخطط تعريف الخدمة السحابية (الدعم الموسع).