المقدمة
يصف هذا المستند تلميحات أستكشاف المشكلات وإصلاحها العامة لجمع معلومات إضافية حول مشكلة تسريب الذاكرة.
المتطلبات الأساسية
المتطلبات
توصي Cisco بأن تكون لديك معرفة أساسية بالمواضيع التالية:
- معرفة أساسية ب Cisco IOS® XE
- المعرفة الأساسية في مدير الحدث المضمن
المكونات المستخدمة
لا يقتصر هذا المستند على إصدارات برامج ومكونات مادية معينة. وهو يطبق على أي توجيه cisco IOS XE منصة مثل ASR1000، ISR4000، ISR1000، CAT8000 أو Cat8000v.
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.
معلومات أساسية
في هذا وثيقة، أنت يستطيع وجدت سجل مقياس سرعة المشتركة أن الأداة يلد في حالة إستعمال عال للذاكرة.
كما يمكنك أن ترى كيف يمكنك الاستفادة من ميزة "مدير الأحداث المضمنة" لمساعدة TAC في مراقبة المواقف التي ينفذ فيها موجه IOS XE بشكل متكرر من الذاكرة والحصول على بيانات بشأنها.
ليس الغرض من هذا المستند شرح أي إجراءات لاستكشاف الأخطاء وإصلاحها بشكل مكثف، إذا كانت متاحة، ولكن يتم توفير المراجع فقط إلى أدلة أستكشاف الأخطاء وإصلاحها بشكل أكثر تعمقا.
أعراض نفاد الذاكرة لموجهات IOS XE
عند التعامل مع مشاكل إرتفاع مستوى إستخدام الذاكرة، عادة ما ترى رسالة سجل تشير إلى أنه تم الوصول إلى حد التحذير الذي يبلغ 85٪. تختلف هذه القيمة حسب الإصدار. يتم إنشاء سجلات مختلفة حسب المكان الذي وجد فيه النظام المشكلة:
مشاكل TCAM:
CPP_FM-3-CPP_FM_TCAM_WARNING
IOS (مستوى التحكم):
SYS-2-Mallocfail
SYS-2-ChunkexpansionFail
SYS-4-ChunkblExceed
QFP (مستوى البيانات):
QFPOOR-4-LOWRSRC_PERCENT_WARN
Qfpoor-4-top_exmem_user
CPPexmem-3-NOMEM
CPPexmem-3-topuser
نظام الملفات المؤقتة (TMPFS):
platform-3- element_tmpfs_warning
سجل النظام العام (يلزم العزل):
platform-4-element_warning
platform-3-element_critical
ملاحظة: تتوفر تحسينات السجل من الإصدار 16.12 والإصدارات الأحدث.
إحتياجات مركز المساعدة الفنية من المعلومات للفرز الأولي
ساعة العرض
show version
إظهار موارد منصة العمل
show platform software status control-processor brief
إظهار ذاكرة العملية المفروزة
إظهار إحصائيات الذاكرة
إظهار إجماليات عمليات تخصيص الذاكرة
إظهار النظام الأساسي لذاكرة العملية المفروزة
show logging
- في حالة إعادة تحميل غير متوقع بسبب انخفاض حالة الذاكرة:
تقرير أساسي عن الملفات/الأنظمة
- رسم بياني لاستخدام الذاكرة مع مرور الوقت.
يعد إرفاق تقنية عرض أمرا مرغوبا، وهو أمر مفيد ل TAC، ويمكنك الاستفادة من الأتمتة التي طورها TAC لمساعدتك في العثور على المشكلات بشكل أسرع.
دائما ما تكون الشروط التي تؤدي إلى إستخدام الذاكرة بدرجة كبيرة مرتبطة بالبرامج. ومع ذلك، لا تكون كل مثيلات إستخدام الذاكرة العالي غير متوقعة. من المهم أخذ DRAM المتاحة والمزيج من الميزات التي تعمل على الجهاز في الاعتبار.
أستكشاف أخطاء معدل الاستفادة القصوى من الذاكرة وإصلاحها يعتبر أكثر سلاسة وفعالية، ومع تفاعل TAC أفضل إذا كنت تستخدم تقنية Radkit. توفر هذه الأداة، التي تم تطويرها من قبل Cisco، TAC طريقة آمنة للغاية وسهلة للوصول إلى الأجهزة التي تحددها في شبكتك. لمزيد من المعلومات، تفضل بزيارة الموقع: Cisco RADKit
ملاحظة: تأكد من تشغيل إصدار مدعوم. ابحث عن مستند "نهاية البيع" و"نهاية العمر" للإصدار. إذا لزم الأمر، فانتقل إلى إصدار يكون حاليا ضمن إصدارات صيانة البرامج. وإلا، يمكن أن يكون TAC محدودا على خيارات أستكشاف الأخطاء وإصلاحها والحل.
للحصول على وثيقة كاملة حول أستكشاف أخطاء الذاكرة وإصلاحها، يمكنك الرجوع إلى الأدلة التالية:
على ISR4K: دليل أستكشاف أخطاء الذاكرة وإصلاحها ل ISRs السلسلة Cisco 4000 Series.
في ASR1K: دليل أستكشاف أخطاء ذاكرة الموجه ASR 1000 Series وإصلاحها.
فهم الاستخدام الفائق للذاكرة
في موجهات Cisco IOS XE، تعد DRAM أحد أهم الموارد التي تدعم الوظائف الأساسية. يتم إستخدام DRAM لتخزين أنواع البيانات المختلفة والعمليات/الميزات المعلومات التي تعد أساسية لكل من عمليات مستوى التحكم ومستوى البيانات.
تتضمن الاستخدامات الرئيسية لذاكرة DRAM في موجهات IOS XE ما يلي:
ذاكرة IOS (بنيات مستوى التحكم): يخزن المعلومات المتعلقة بالعمليات المرتبطة بمستوى التحكم للجهاز، مثل: معلومات/بروتوكولات التوجيه وبنية إدارة الشبكة وتكوينات النظام ومعلومات الميزة.
ذاكرة QFP (بنيات مستوى البيانات): يقوم بتخزين كل شيء حول عمليات QFP التي تتم معالجتها بواسطة التعليمات البرمجية الدقيقة، مثل الهياكل الأساسية للميزات المخزنة في QFP وإرشادات التعليمات البرمجية الدقيقة وإرشادات إعادة التوجيه.
نظام الملفات المؤقت (TMPFS): نظرا لأنه يتم تركيبه في ذاكرة DRAM وتتم إدارته بواسطة برنامج IOS، فإن بروتوكول TMPFS يعمل كمنطقة تخزين للوصول السريع للملفات التي تحتاجها العمليات. في حالة إستمرار هذه الملفات، يتم نقلها إلى القرص الثابت/ذاكرة التمهيد المؤقتة. إنه يعمل على تحسين أداء النظام من خلال تقليل الوقت المستغرق في القراءة/الكتابة للبيانات المؤقتة.
العمليات العامة التي يتم تشغيلها على نواة لينوكس: ونظرا لأن IOS XE يعمل على نواة قائمة على بيئة لينوكس، فإن DRAM تدعم أيضا مختلف عمليات الأنظمة التي تعمل على هذه العناصر الأساسية.
يشير معدل الاستخدام المرتفع للذاكرة الذي يزيد عن 85٪ بشكل نموذجي إلى إستهلاك كبير لذاكرة DRAM، والذي يمكن أن يؤثر على أداء الموجه. يمكن أن يكون هذا الاستخدام المرتفع نتيجة لمتطلبات مشروعة، مثل تخزين جداول توجيه شاملة أو تمكين الميزات كثيفة الموارد. ومع ذلك، يمكن أن تشير أيضا إلى مشكلات مثل إدارة الذاكرة غير الفعالة من خلال ميزات معينة أو تسريبات ذاكرة، حيث لا يتم إعادة الذاكرة إلى النظام بعد الاستخدام بشكل صحيح.
من خلال مراقبة إستخدام الذاكرة عبر ذاكرة IOS وذاكرة QFP و TMPFS وعمليات Linux العامة، يمكنك أنت و TAC تحديد المشاكل المحتملة مبكرا.
IM لمراقبة إستخدام الذاكرة
لاستكشاف أخطاء الذاكرة وإصلاحها، يحتاج TAC إلى تجميع مجموعة من الأوامر على مدار فترة من الوقت لتحديد العملية المسيئة. في بعض الأحيان، بعد تحديد عملية المسؤول، يلزم أوامر خاصة إضافية، مما يجعل أستكشاف أخطاء الذاكرة وإصلاحها أحد أكثر أنواع أستكشاف الأخطاء وإصلاحها استهلاكا للوقت.
ولتسهيل عملية أستكشاف الأخطاء وإصلاحها، يمكنك إستخدام ميزة EEM لمراقبة المعلومات وتجميعها تلقائيا. هناك اعتباران أساسيان لكتابة نص الحوار: المشغل والأوامر التي سيتم تجميعها.
المشغلات
النمط. يمكنك إستخدام نمط أعراض القسم لموجهات Cisco IOS XE التي نفدت الذاكرة عليها. يبدو التنسيق كما يلي:
Event Syslog Pattern <pattern> RateLimit 300 MaxRun 180
أحد الاعتبارات أثناء إستخدام نمط كمشغل، هو أن السجل يتم إنشاؤه بمجرد الوصول إلى عتبة التحذير، وفقا لمعدل إستهلاك الذاكرة، عند محاولة القيام بذلك يدويا، ليس لديك أو لديك أو لديك TAC الوقت الكافي لاستكشاف الأخطاء وإصلاحها بشكل أكثر تفصيلا.
مؤقت Cron. مثال على مؤقت cron يتم تنشيطه كل 30 دقيقة:
اسم cron لمؤقت الأحداث HalfHour إدخال cron "*\30 * * * *"
إحدى مميزات مؤقت cron عبر نمط هو أنك لا تحتاج إلى الانتظار حتى تنفذ تقريبا موارد الذاكرة الخاصة بالجهاز لجمع المعلومات. حسب معدل إستهلاك الذاكرة، فمن خلال المراقبة والمعلومات المناسبة، يمكن ل TAC تحديد العملية غير المقصودة قبل الوصول إلى حد التحذير.
ملاحظة: يتم إستخدام خياري الحد الأدنى المسموح به والحد الأقصى للإخراج لضمان تجميع مجموعة المخرجات بالكامل. كما أنها تساعد على تجنب حدوث ضجيج إضافي أو تنشيط الإدخال والإخراج (IM) في الحالات التي تظهر فيها عدة سجلات في فترة زمنية قصيرة.
أمثلة EEM مع الأوامر العامة للفرز الأولي:
configure terminal
event manager applet TAC_EEM authorization bypass
event syslog pattern " PLATFORM-4-ELEMENT_WARNING" ratelimit 300 maxrun 180
action 0.1 cli command "enable"
action 0.2 cli command "term exec prompt timestamp"
action 0.3 cli command "term length 0"
action 0.4 cli command "show process memory platform sorted | append bootflash:TAC_EEM.txt"
action 0.5 cli command "show processes memory platform sorted location chassis 1 R0 | append bootflash:TAC_EEM.txt"
action 0.9 cli command "show platform resources | append bootflash:TAC_EEM.txt"
action 1.0 cli command "show platform software status control-processor brief | append bootflash:TAC_EEM.txt"
action 1.1 cli command "show clock | append bootflash:TAC_EEM.txt"
action 1.3 cli command "show platform software process memory chassis active r0 all sorted | append bootflash:TAC_EEM.txt"
action 1.5 cli command "show process memory platform accounting | append bootflash:TAC_EEM.txt"
المراقبة يوميا باستخدام مؤقت cron:
configure terminal
event manager applet TAC_EEM2 authorization bypass
event timer cron name DAYLY cron-entry "0 0 * * *"
action 0.1 cli command "enable"
action 0.2 cli command "term exec prompt timestamp"
action 0.3 cli command "term length 0"
action 0.4 cli command "show process memory platform sorted | append bootflash:TAC_EEM2.txt"
action 0.5 cli command "show processes memory platform sorted location chassis 1 R0 | append bootflash:TAC_EEM2.txt"
action 0.6 cli command "show processes memory platform sorted location chassis 2 R0 | append bootflash:TAC_EEM2.txt"
action 0.9 cli command "show platform resources | append bootflash:TAC_EEM2.txt"
action 1.0 cli command "show platform software status control-processor brief | append bootflash:TAC_EEM2.txt"
action 1.1 cli command "show log | append bootflash:TAC_EEM2.txt"
action 1.2 cli command "show clock | append bootflash:TAC_EEM2.txt"
action 1.3 cli command "show platform software process memory chassis active r0 all sorted | append bootflash:TAC_EEM2.txt"
action 1.5 cli command "show process memory platform accounting | append bootflash:TAC_EEM2.txt"
للحصول على قائمة أكثر شمولا من الأوامر، يرجى الرجوع إلى الأدلة من القسم للحصول على معلومات حول إحتياجات TAC للفرز الأولي.
ملف أساسي
عندما يصل إستخدام الذاكرة إلى مستوى حرج، فمن المحتمل أن يفرض نظام التشغيل حدوث عطل من أجل التعافي من هذه الحالة، مما يؤدي إلى إنشاء تقرير نظام يحتوي على ملف أساسي.
الملف الأساسي هو تفريغ الذاكرة بالكامل لعملية معينة تعرضت للفشل في وقت معين. هذا الملف الأساسي ضروري ل TAC لمعاينة الذاكرة وتحليل التعليمات البرمجية المصدر لفهم الظروف والأسباب المحتملة لإعادة تحميل/تعطل العملية بشكل غير متوقع.
يساعد الملف الأساسي مطوري TAC على العثور على السبب الأساسي للمشكلة، وتصحيح الأخطاء، وإصلاح المشكلة.
ملاحظة: على الرغم من أن مطوري TAC والمنشئين يجاهدون للحصول على سبب جذري، هناك أوقات كان عطل فيها نتيجة لحدث شبكة، أو مسألة توقيت تجعل من المستحيل تقريبا إعادة إنتاجها في المختبر.
لمزيد من المعلومات حول عمليات إعادة التحميل غير المتوقعة وكيفية إسترداد ملف أساسي، راجع أستكشاف أخطاء إعادة التحميل غير المتوقعة وإصلاحها في الأنظمة الأساسية Cisco IOS® مع TAC.