فهم الأخطاء الواردة من WebHCat على HDInsight وحلها

تعرف على الأخطاء التي يتم تلقيها عند استخدام WebHCat مع HDInsight وكيفية حلها. يتم استخدام WebHCat داخليًا بواسطة أدوات من جانب العميل مثل Azure PowerShell و Data Lake Tools لـ Visual Studio.

ما هو WebHCat

WebHCat هي واجهة برمجة تطبيقات REST ل HCatalog، والجدول، وطبقة إدارة التخزين ل Apache Hadoop. يتم تمكين WebHCat افتراضيًا في مجموعات HDInsight، ويتم استخدامه بواسطة أدوات متنوعة لإرسال الوظائف والحصول على حالة الوظيفة وما إلى ذلك، دون تسجيل الدخول إلى المجموعة.

تعديل التكوين

تحدث العديد من الأخطاء المدرجة في هذا المستند بسبب تجاوز الحد الأقصى المكون. عندما تشير خطوة الدقة إلى أنه يمكنك تغيير قيمة، استخدم Apache Ambari (الويب أو واجهة برمجة تطبيقات REST) لتعديل القيمة. لمزيد من المعلومات، راجع إدارة HDInsight باستخدام Apache Ambari

التكوين الافتراضي

إذا تم تجاوز القيم الافتراضية التالية، فقد يؤدي ذلك إلى تدهور أداء WebHCat أو التسبب في حدوث أخطاء:

الإعدادات ماذا تفعل القيمة الافتراضية
[yarn.scheduler.capacity.maximum-applications] [الحد الأقصى للتطبيقات] الحد الأقصى لعدد المهام التي يمكن أن تكون نشطة بشكل متزامن (معلقة أو قيد التشغيل) 10,000
templeton.exec.max-procs الحد الأقصى لعدد الطلبات التي يمكن تقديمها بشكل متزامن 20
[mapreduce.jobhistory.max-age-ms] [max-age-ms] عدد الأيام التي يتم الاحتفاظ فيها بمحفوظات الوظيفة سبعة أيام

طلبات كثيرة جدًا

رمز حالة HTTP : 429

السبب نوع الحل
لقد تجاوزت الحد الأقصى من الطلبات المتزامنة التي يقدمها WebHCat في الدقيقة (الافتراضي 20) قلل عبء العمل لديك لضمان عدم إرسال أكثر من الحد الأقصى لعدد الطلبات المتزامنة أو زيادة حد الطلبات المتزامنة عن طريق تعديل templeton.exec.max-procs. لمزيد من المعلومات، راجع تعديل التكوين

الخادم غير متوفر

رمز حالة HTTP : 503

السبب نوع الحل
يحدث رمز الحالة هذا عادةً أثناء تجاوز الفشل بين عقدة الرأس الأساسية والثانوية للمجموعة انتظر دقيقتين، ثم أعد العملية

محتوى طلب غير صحيح: تعذر العثور على وظيفة

رمز حالة HTTP : 400

السبب نوع الحل
تم تنظيف تفاصيل الوظيفة بواسطة منظف سجل الوظيفة فترة الاستبقاء الافتراضية لمحفوظات المهمة هي سبعة أيام. يمكن تغيير فترة الاحتفاظ الافتراضية عن طريق تعديل mapreduce.jobhistory.max-age-ms. لمزيد من المعلومات، راجع تعديل التكوين
تم إيقاف المهمة بسبب تجاوز الفشل أعد محاولة تقديم الوظيفة لمدة تصل إلى دقيقتين
تم استخدام معرّف وظيفة غير صالح تحقق مما إذا كان معرف الوظيفة صحيحًا

مدخل خطأ

رمز حالة HTTP : 502

السبب نوع الحل
يتم جمع البيانات المهملة الداخلية في عملية WebHCat انتظر حتى تنتهي مجموعة البيانات المهملة أو أعد تشغيل خدمة WebHCat
مهلة انتظار استجابة من خدمة Resource Manager. يمكن أن يحدث هذا الخطأ عندما ينتقل عدد التطبيقات النشطة إلى الحد الأقصى الذي تم تكوينه (الافتراضي 10000) انتظر حتى تكتمل المهام قيد التشغيل حاليًا أو تزيد حد المهام المتزامنة عن طريق تعديل yarn.scheduler.capacity.maximum-applications. لمزيد من المعلومات، راجع قسم تعديل التكوين .
محاولة استرداد جميع الوظائف من خلال مكالمة GET / jobs بينما يتم تعيين Fields على * لا تسترد كل تفاصيل الوظيفة. بدلاً من ذلك، استخدم jobid لاسترداد تفاصيل الوظائف الأكبر من معرّف وظيفة معين فقط. أو لا تستخدم Fields
خدمة WebHCat معطلة أثناء تجاوز فشل HeadNode انتظر لمدة دقيقتين وأعد العملية
هناك أكثر من 500 وظيفة معلقة تم تقديمها من خلال WebHCat انتظر حتى تكتمل الوظائف المعلقة حاليًا قبل إرسال المزيد من الوظائف

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

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

  • احصل على إجابات من خبراء Azure عبر دعم مجتمع Azure.

  • تواصل مع @AzureSupport - حساب Microsoft Azure الرسمي لتحسين تجربة العملاء. توصيل الموارد المناسبة إلى مجتمع Azure: الإجابات، والدعم، والخبراء.

  • إذا كنت بحاجة إلى مزيد من المساعدة، فيمكنك إرسال طلب دعم من مدخل Microsoft Azure. حدد Support من شريط القائمة أو افتح المحور Help + support. لمزيد من المعلومات التفصيلية، راجع كيفية إنشاء طلب دعم Azure. يتم تضمين الوصول إلى إدارة الاشتراك ودعم الفواتير في اشتراك Microsoft Azure، ويتم توفير الدعم التقني من خلال إحدى خطط دعم Azure.