ملاحظة
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
تنتج مجموعة HDInsight ملفات سجل مختلفة. على سبيل المثال، تنتج Apache Hadoop والخدمات ذات الصلة، مثل Apache Spark، سجلات مفصلة لتنفيذ المهام. تعد إدارة ملفات السجل جزءاً من الحفاظ على مجموعة HDInsight صحية. يمكن أن تكون هناك أيضاً متطلبات تنظيمية لأرشفة السجلات. نظراً لعدد ملفات السجل وحجمها، فإن تحسين تخزين السجلات والأرشفة يساعد في إدارة تكلفة الخدمة.
تتضمن إدارة سجلات مجموعة HDInsight استبقاء معلومات حول جميع جوانب بيئة نظام المجموعة. تتضمن هذه المعلومات جميع سجلات خدمة Azure المرتبطة وتكوين نظام المجموعة ومعلومات تنفيذ المهمة وأي حالات خطأ وبيانات أخرى حسب الحاجة.
فيما يلي الخطوات النموذجية في إدارة سجل HDInsight:
- الخطوة 1: تحديد نُهج استبقاء السجلات
- الخطوة 2: إدارة سجلات تكوين إصدارات خدمة نظام المجموعة
- الخطوة 3: إدارة ملفات سجل تنفيذ مهمة نظام المجموعة
- الخطوة 4: توقع أحجام وتكاليف تخزين حجم السجل
- الخطوة 5: تحديد نُهج وعمليات أرشيف السجل
الخطوة 1: تحديد نُهج استبقاء السجلات
تتمثل الخطوة الأولى في إنشاء إستراتيجية إدارة سجل مجموعة HDInsight في جمع معلومات حول سيناريوهات الأعمال ومتطلبات تخزين محفوظات تنفيذ المهمة.
تفاصيل نظام المجموعة
تعتبر تفاصيل المجموعة التالية مفيدة في المساعدة على جمع المعلومات في إستراتيجية إدارة السجل. اجمع هذه المعلومات من جميع مجموعات HDInsight التي قمت بإنشائها في حساب Azure معين.
- اسم شبكة نظام المجموعة
- منطقة نظام المجموعة ومنطقة توافر Azure
- حالة نظام المجموعة، بما في ذلك تفاصيل التغيير الأخير للحالة
- نوع وعدد مثيلات HDInsight المحددة للعقد الرئيسة والأساسية والمهمة
يمكنك الحصول على معظم معلومات المستوى الأعلى هذه باستخدام مدخل Microsoft Azure. بدلاً من ذلك، يمكنك استخدام Azure CLI للحصول على معلومات حول مجموعة (مجموعات) HDInsight الخاصة بك:
az hdinsight list --resource-group <ResourceGroup>
az hdinsight show --resource-group <ResourceGroup> --name <ClusterName>
يمكنك أيضاً استخدام PowerShell لعرض هذه المعلومات. لمزيد من المعلومات، راجع إدارة مجموعات Apache في HDInsight باستخدام Azure PowerShell.
فهم حمولات العمل التي تعمل على أنظمة مجموعاتك
من المهم فهم أنواع حمولة العمل التي تعمل على مجموعة (مجموعات) HDInsight لتصميم إستراتيجيات تسجيل مناسبة لكل نوع.
- هل حمولات العمل تجريبية (مثل التطوير أو الاختبار) أم جودة الإنتاج؟
- كم مرة يتم تشغيل حمولات العمل الخاصة بجودة الإنتاج بشكل طبيعي؟
- هل أي من حمولات العمل كثيفة الاستخدام للموارد و/أو طويلة الأمد؟
- هل يستخدم أي من أحمال العمل مجموعة معقدة من خدمات Hadoop التي يتم إنتاج أنواع متعددة من السجلات لها؟
- هل يرتبط أي من حمولات العمل بمتطلبات دورة حياة البيانات التنظيمية المصاحبة؟
أمثلة على أنماط وممارسات استبقاء السجلات
ضع في اعتبارك الحفاظ على تتبع دورة حياة البيانات عن طريق إضافة معرّف لكل إدخال سجل، أو من خلال تقنيات أخرى. يتيح لك ذلك تتبع المصدر الأصلي للبيانات والعملية، ومتابعة البيانات عبر كل مرحلة لفهم اتساقها وصلاحيتها.
ضع في اعتبارك كيف يمكنك جمع السجلات من المجموعة، أو من أكثر من مجموعة، وترتيبها لأغراض مثل التدقيق والمراقبة والتخطيط والتنبيه. يمكنك استخدام حل مخصص للوصول إلى ملفات السجل وتنزيلها بانتظام، ودمجها وتحليلها لتوفير عرض لوحة معلومات. يمكنك أيضا إضافة قدرات أخرى للتنبيه للكشف عن الأمان أو الفشل. يمكنك إنشاء هذه الأدوات المساعدة باستخدام PowerShell أو HDInsight SDKs أو التعليمات البرمجية التي تصل إلى نموذج توزيع Azure الإصدار الكلاسيكي.
ضع في اعتبارك ما إذا كان حل أو خدمة المراقبة سيكون مفيداً. يوفر Microsoft System Center حزمة إدارة HDInsight. يمكنك أيضاً استخدام أدوات الجهات الخارجية مثل Apache Chukwa وGanglia لتجميع السجلات ومركزتها. تقدم العديد من الشركات خدمات لمراقبة حلول البيانات الضخمة المستندة إلى Hadoop، على سبيل المثال:
Centerity
و Compuware APM و Sematext SPM و Zettaset Orchestrator.
الخطوة 2: إدارة إصدارات خدمة نظام المجموعة وعرض السجلات
تستخدم مجموعة HDInsight النموذجية العديد من الخدمات وحزم البرامج مفتوحة المصدر (مثل Apache HBase وApache Spark وما إلى ذلك). بالنسبة لبعض حمولات العمل، مثل المعلوماتية الحيوية، قد يُطلب منك استبقاء محفوظات سجل تكوين الخدمة بالإضافة إلى سجلات تنفيذ المهام.
عرض إعدادات تكوين نظام المجموعة باستخدام واجهة مستخدم Ambari
يعمل Apache Ambari على تبسيط إدارة وتكوين ومراقبة مجموعة HDInsight من خلال توفير واجهة مستخدم ويب وواجهة برمجة تطبيقات REST. يتم تضمين Ambari على مجموعات HDInsight المستندة إلى Linux. حدد جزء Cluster Dashboard في صفحة HDInsight الخاصة بمدخل Microsoft Azure لفتح صفحة ارتباط Cluster Dashboards. بعد ذلك، حدد جزء لوحة تحكم نظام مجموعة HDInsight لفتح واجهة مستخدم Ambari. ستتم مطالبتك ببيانات اعتماد تسجيل الدخول إلى نظام مجموعة الخاصة بك.
لفتح قائمة طرق عرض الخدمة، حدد جزء Ambari Views في صفحة مدخل Microsoft Azure لـ HDInsight. تختلف هذه القائمة بناءً على المكتبات التي قمت بتثبيتها. على سبيل المثال، قد ترى YARN Queue Manager وHive View وTez View. حدد أي ارتباط خدمة لمشاهدة معلومات التكوين والخدمة. توفر صفحة Ambari UIStack and Version معلومات حول تكوين خدمات المجموعة ومحفوظات إصدار الخدمة. للانتقال إلى هذا القسم من Ambari UI، حدد قائمة Admin ثم Stacks and Versions. حدد علامة التبويب Versions لمشاهدة معلومات إصدار الخدمة.
باستخدام Ambari UI، يمكنك تنزيل التكوين لأي (أو كل) الخدمات التي تعمل على مضيف معين (أو عقدة) في نظام المجموعة. حدد قائمة Hosts، ثم الرابط الخاص بمضيف الاهتمام. في صفحة هذا المضيف، حدد الزر Host Actions ثم Download Client Configs.
عرض سجلات إجراءات البرنامج النصي
تعمل إجراءات البرنامج النصي لـ HDInsight على تشغيل البرامج النصية على مجموعة، إما يدويّاً أو عند تحديدها. على سبيل المثال، يمكن استخدام إجراءات البرنامج النصي لتثبيت برامج أخرى على نظام المجموعة أو لتغيير إعدادات التكوين من القيم الافتراضية. يمكن أن توفر سجلات إجراءات البرنامج النصي نظرة ثاقبة على الأخطاء التي حدثت أثناء إعداد نظام المجموعة، وكذلك تغييرات إعدادات التكوين التي قد تؤثر على أداء المجموعة وتوافرها. لمعرفة حالة إجراء البرنامج النصي، حدد زر ops في واجهة مستخدم Ambari، أو قم بالوصول إلى سجلات الحالة في حساب التخزين الافتراضي. سجلات التخزين متاحة في /STORAGE_ACCOUNT_NAME/DEFAULT_CONTAINER_NAME/custom-scriptaction-logs/CLUSTER_NAME/DATE
.
عرض سجلات حالة تنبيهات Ambari
يكتب Apache Ambari تغييرات حالة التنبيه إلى ambari-alerts.log
. المسار الكامل هو /var/log/ambari-server/ambari-alerts.log
. لتمكين التصحيح للسجل، قم بتغيير خاصية في /etc/ambari-server/conf/log4j.properties.
التغيير ثم الإدخال ضمن # Log alert state changes
من:
log4j.logger.alerts=INFO,alerts
to
log4j.logger.alerts=DEBUG,alerts
الخطوة 3: إدارة ملفات سجل تنفيذ مهمة نظام المجموعة
الخطوة التالية هي مراجعة ملفات سجل تنفيذ المهام للخدمات المختلفة. يمكن أن تشمل الخدمات Apache HBase وApache Spark وغيرها الكثير. تنتج مجموعة Hadoop عدداً كبيراً من السجلات المطولة؛ لذا فإن تحديد السجلات المفيدة (وأيها غير مفيد) يمكن أن يستغرق وقتاً طويلاً. يعد فهم نظام التسجيل أمراً مهمّاً للإدارة المستهدفة لملفات السجل. الصورة التالية هي مثال لملف السجل.
الوصول إلى ملفات سجل Hadoop
يخزن HDInsight ملفات السجل الخاصة به في كل من نظام ملفات نظام المجموعة وفي تخزين Azure. يمكنك فحص ملفات السجل في المجموعة عن طريق فتح اتصال SSH بالمجموعة وتصفح نظام الملفات، أو باستخدام بوابة Hadoop YARN Status على خادم عقدة الرأس البعيد. يمكنك فحص ملفات السجل في Azure Storage باستخدام أي من الأدوات التي يمكنها الوصول إلى البيانات وتنزيلها من Azure Storage. الأمثلة هي AzCopy وCloudXplorer وVisual Studio Server Explorer. يمكنك أيضاً استخدام PowerShell ومكتبات Azure Storage Client، أو Azure .NET SDK، للوصول إلى البيانات في تخزين Azure blob.
يدير Hadoop عمل الوظائف كـ محاولات مهمة على العقد المختلفة في المجموعة. يمكن لـ HDInsight بدء محاولات مهمة تخمينية، وإنهاء أي محاولات مهمة أخرى لم تكتمل أولاً. يؤدي هذا إلى إنشاء نشاط كبير يتم تسجيله في ملفات سجل وحدة التحكم وstderr وsyslog أثناء التنقل. بالإضافة إلى ذلك، يتم تشغيل العديد من محاولات المهام في وقت واحد، ولكن يمكن لملف السجل فقط عرض النتائج بشكل خطي.
سجلات HDInsight المكتوبة على تخزين Azure Blob
يتم تكوين مجموعات HDInsight لكتابة سجلات المهام إلى حساب تخزين Azure Blob لأي مهمة يتم إرسالها باستخدام Azure PowerShell cmdlets أو واجهات برمجة تطبيقات إرسال المهام .NET. إذا قمت بإرسال المهام من خلال SSH إلى نظام المجموعة، فسيتم تخزين معلومات تسجيل التنفيذ في جداول Azure كما تمت مناقشته في القسم السابق.
بالإضافة إلى ملفات السجل الأساسية التي تم إنشاؤها بواسطة HDInsight، فإن الخدمات المثبتة مثل YARN تنشئ أيضاً ملفات سجل تنفيذ المهام. يعتمد عدد ونوع ملفات السجل على الخدمات المثبتة. الخدمات المشتركة هي Apache HBase وApache Spark وما إلى ذلك. تحقق من ملفات تنفيذ سجل العمل لكل خدمة لفهم ملفات التسجيل الإجمالية المتاحة على نظام المجموعة الخاص بك. كل خدمة لها طرقها الفريدة في التسجيل ومواقع تخزين ملفات السجل. كمثال، تتم مناقشة تفاصيل الوصول إلى ملفات سجل الخدمة الأكثر شيوعاً (من YARN) في القسم التالي.
سجلات HDInsight التي تم إنشاؤها بواسطة YARN
تقوم YARN بتجميع السجلات عبر جميع الحاويات على عقدة عاملة وتخزين هذه السجلات كملف سجل مجمع واحد لكل عقدة عامل. يتم تخزين هذا السجل على نظام الملفات الافتراضي بعد انتهاء التطبيق. قد يستخدم تطبيقك مئات أو آلاف الحاويات، ولكن دائماً ما يتم تجميع سجلات جميع الحاويات التي يتم تشغيلها على عقدة عاملة واحدة في ملف واحد. يوجد سجل واحد فقط لكل عقدة عاملة يستخدمها تطبيقك. يتم تمكين تجميع السجل افتراضياً في الإصدار 3.0 من مجموعات HDInsight والإصدارات الأحدث. توجد السجلات المجمعة في التخزين الافتراضي للمجموعة.
/app-logs/<user>/logs/<applicationId>
السجلات المجمعة غير قابلة للقراءة مباشرة، لأنها مكتوبة TFile
بتنسيق ثنائي مفهرس بواسطة الحاوية. استخدم سجلات YARN ResourceManager
أو أدوات CLI لعرض هذه السجلات كنص عادي للتطبيقات أو الحاويات ذات الأهمية.
أدوات YARN CLI
لاستخدام أدوات YARN CLI، يجب عليك أولاً الاتصال بمجموعة HDInsight باستخدام SSH. حدد معلومات <applicationId>
و<user-who-started-the-application>
و<containerId>
و<worker-node-address>
عند تشغيل هذه الأوامر. يمكنك عرض السجلات كنص عادي باستخدام أحد الأوامر التالية:
yarn logs -applicationId <applicationId> -appOwner <user-who-started-the-application>
yarn logs -applicationId <applicationId> -appOwner <user-who-started-the-application> -containerId <containerId> -nodeAddress <worker-node-address>
واجهة مستخدم YARN Resource Manager
يتم تشغيل واجهة مستخدم YARN Resource Manager على عقدة رأس نظام المجموعة، ويتم الوصول إليها من خلال واجهة مستخدم ويب Ambari. استخدم الخطوات التالية لعرض سجلات YARN:
- في مستعرض الويب، انتقل إلى
https://CLUSTERNAME.azurehdinsight.net
. استبدل CLUSTERNAME باسم مجموعة HDInsight الخاصة بك. - من قائمة الخدمات على اليسار، حدد YARN.
- من القائمة المنسدلة ارتباطات سريعة، حدد إحدى عقد رأس نظام المجموعة ثم حدد سجلات إدارة الموارد. يتم تقديمك بقائمة من الروابط إلى سجلات YARN.
الخطوة 4: توقع أحجام وتكاليف تخزين حجم السجل
بعد الانتهاء من الخطوات السابقة، يكون لديك فهم لأنواع وأحجام ملفات السجل التي تنتجها مجموعة (مجموعات) HDInsight الخاصة بك.
بعد ذلك، قم بتحليل حجم بيانات السجل في مواقع تخزين السجلات الرئيسية خلال فترة زمنية. على سبيل المثال، يمكنك تحليل الحجم والنمو على مدى 30-60-90 يوماً. سجّل هذه المعلومات في جدول بيانات أو استخدم أدوات أخرى مثل Visual Studio أو Azure Storage Explorer أو Power Query لـ Excel. ```
لديك الآن معلومات كافية لإنشاء إستراتيجية إدارة السجل لسجلات المفاتيح. استخدم جدول البيانات (أو الأداة التي تختارها) للتنبؤ بنمو حجم السجل وتكاليف خدمة Azure من الآن فصاعداً. ضع في اعتبارك أيضاً أي متطلبات للاستبقاء بالسجل لمجموعة السجلات التي تقوم بفحصها. يمكنك الآن إعادة نشر تكاليف تخزين السجلات المستقبلية، بعد تحديد ملفات السجل التي يمكن حذفها (إن وجدت) والسجلات التي يجب استبقاؤها وأرشفتها في Azure Storage الأقل تكلفة.
الخطوة 5: تحديد نُهج وعمليات أرشيف السجل
بعد تحديد ملفات السجل التي يمكن حذفها، يمكنك ضبط معلمات التسجيل في العديد من خدمات Hadoop لحذف ملفات السجل تلقائياً بعد فترة زمنية محددة.
بالنسبة لملفات سجلات معينة، يمكنك استخدام أسلوب أرشفة ملفات السجل منخفض السعر. بالنسبة لسجلات نشاط Azure Resource Manager، يمكنك استكشاف هذا الأسلوب باستخدام مدخل Microsoft Azure. قم بإعداد أرشفة سجلات Resource Manager عن طريق تحديد رابط Activity Log في مدخل Microsoft Azure لمثيل HDInsight الخاص بك. في أعلى صفحة بحث سجل النشاط، حدد عنصر القائمة Export لفتح جزء Export activity log. املأ الاشتراك والمنطقة، وما إذا كنت تريد التصدير إلى حساب تخزين، وعدد الأيام للاستبقاء بالسجلات. في هذا الجزء نفسه، يمكنك أيضاً تحديد ما إذا كنت تريد التصدير إلى مركز أحداث أم لا.
بدلاً من ذلك، يمكنك أرشفة سجل البرنامج النصي باستخدام PowerShell.
الوصول إلى مقاييس تخزين Azure
يمكن تكوين Azure Storage لتسجيل عمليات التخزين والوصول. يمكنك استخدام هذه السجلات التفصيلية لمراقبة السعة وتخطيطها، ولمراجعة طلبات التخزين. تتضمن المعلومات المسجلة تفاصيل زمن الانتقال، ما يتيح لك مراقبة أداء الحلول الخاصة بك وضبطه. يمكنك استخدام .NET SDK لـ Hadoop لفحص ملفات السجل التي تم إنشاؤها من أجل Azure Storage الذي يحتفظ بالبيانات لمجموعة HDInsight.
التحكم في حجم وعدد فهارس النسخ الاحتياطي لملفات السجل القديمة
للتحكم في حجم وعدد ملفات السجل التي يتم استبقاؤها، قم بتعيين الخصائص التالية لـ RollingFileAppender
:
-
maxFileSize
هو الحجم الهام للملف، الذي يتم لفه. القيمة الافتراضية هي 10 ميغابايت. -
maxBackupIndex
يحدد عدد ملفات النسخ الاحتياطي التي سيتم إنشاؤها، الافتراضي 1.
تقنيات إدارة السجلات الأخرى
لتجنب نفاد مساحة القرص، يمكنك استخدام بعض أدوات نظام التشغيل مثل logrotate لإدارة معالجة ملفات السجل. يمكنك تكوين logrotate
للتشغيل على أساس يومي، وضغط ملفات السجل وإزالة القديمة. يعتمد نهجك على متطلباتك، مثل طول مدة الاستبقاء بملفات السجل على العُقد المحلية.
يمكنك أيضا التحقق مما إذا كان تسجيل DEBUG ممكنا لخدمات واحدة أو أكثر، ما يزيد بشكل كبير من حجم سجل الإخراج.
لتجميع السجلات من جميع العقد إلى موقع مركزي واحد، يمكنك إنشاء تدفق بيانات، مثل إدخال جميع إدخالات السجل في Solr.