المقدمة
يصف هذا وثيقة الحل لمثيلات جلسة العمل التي تنتقل إلى حالة التحذير نظرا لارتفاع acsmgr_icsr_frwk_instance_chkpt_falied()
إستخدام العملية.
وصف المشكلة
النظام الأساسي ASR5500
الإصدار: 21.27.4 و 21.19.10
مثيلات مدير جلسة العمل في حالة التحذير بسبب إستهلاك الذاكرة المرتفع على acsmgr_icsr_frwk_instance_chkpt_falied()
وظيفة عندما يكون إسترداد جلسة العمل معطلا:
[local]ASR5500# show task resources | grep -v good
task cputime memory files sessions
cpu facility inst used allc used alloc used allc used allc S status
----------------------- ----------- ------------- --------- ------------- ------
1/0 sessmgr 13 26% 100% 930.8M 900.0M 37 500 4643 12000 I warn
1/0 sessmgr 36 32% 100% 938.8M 900.0M 39 500 5155 12000 I warn
1/0 sessmgr 53 29% 100% 937.8M 900.0M 40 500 4916 12000 I warn
1/0 sessmgr 56 29% 100% 930.2M 900.0M 41 500 4649 12000 I warn
1/0 sessmgr 83 35% 100% 970.2M 900.0M 40 500 5382 12000 I warn
1/0 sessmgr 90 24% 100% 931.3M 900.0M 42 500 4621 12000 I warn
1/0 sessmgr 130 28% 100% 935.0M 900.0M 40 500 4907 12000 I warn
1/0 sessmgr 141 26% 100% 936.7M 900.0M 37 500 4917 12000 I warn
1/0 sessmgr 145 23% 100% 933.9M 900.0M 39 500 4883 12000 I warn
1/0 sessmgr 174 26% 100% 927.4M 900.0M 37 500 4620 12000 I warn
1/0 sessmgr 188 31% 100% 963.0M 900.0M 40 500 5305 12000 I warn
1/0 sessmgr 223 26% 100% 933.5M 900.0M 38 500 4631 12000 I warn
Aggregate consumption per proc:
-------- ------------------------------------------ -------------- -------------- -------------- --------- ---------
| Nr | Process | Similar | Total Bytes | Human Bytes | Percent | % Acum |
======== ========================================== ============== ============== ============== ========= =========
| 1 | acsmgr_icsr_frwk_instance_chkpt_falied() | 757 | 108301860 | 103.3 MB | 13.95% | 13.95% |
| 2 | egtpc_allocate_peer_rec() | 89 | 77599472 | 74.0 MB | 10.00% | 23.95% |
| 3 | sn_slist_dnode_alloc() | 471 | 64427392 | 61.4 MB | 8.30% | 32.25% |
| 4 | sessmgr_allocate_callline() | 156 | 48601944 | 46.4 MB | 6.26% | 38.51% |
| 5 | sn_aaa_buffer_alloc_more_type() | 45 | 34836120 | 33.2 MB | 4.49% | 43.00% |
[local]ASR5500# show task resources | grep -v good
Session Recovery Status:
Overall Status : Not Enabled
Last Status Update : 8 seconds ago
تحليل
لعزل ما إذا كان المقدار الكبير من إجمالي المشتركين يؤدي إلى تشغيل العملية acsmgr_icsr_frwk_instance_chkpt_falied()
ليتم الاستخدام الزائد، يتم تنفيذ إستدعاء إستدعاء إستدعاء إستدعاء إستدعاء إستدعاء إستدعاء إستدعاء إستدعاء إستدعاء إستدعاء إستخدام الذاكرة لم يقل:
[local]ASR5500> show task resources facility sessmgr instance 10
task cputime memory files sessions
cpu facility inst used allc used alloc used allc used allc S status
----------------------- ----------- ------------- --------- ------------- ------
8/0 sessmgr 10 20% 100% 981.8M 900.0M 43 500 4142 12000 I warn
Total 1 20.20% 981.8M 43 4142
[local]ASR5500> task sessmgr instance 10 busy-out
[local]ASR5500> show task resources facility sessmgr instance 10
task cputime memory files sessions
cpu facility inst used allc used alloc used allc used allc S status
----------------------- ----------- ------------- --------- ------------- ------
8/0 sessmgr 10 19% 100% 979.7M 900.0M 42 500 3946 12000 B warn
Total 1 19.35% 979.7M 42 3946
[local]ASR5500> task sessmgr instance 10 enable
[local]ASR5500> show task resources facility sessmgr instance 10
task cputime memory files sessions
cpu facility inst used allc used alloc used allc used allc S status
----------------------- ----------- ------------- --------- ------------- ------
8/0 sessmgr 10 17% 100% 979.8M 900.0M 40 500 4141 12000 I warn
Total 1 17.33% 979.8M 40 4141
من السجلات، عندما يتم تنفيذ الخروج المشغول على أحد مثيلات جلسة العمل المتأثرة، فإنها تقلل عدد جلسات العمل المستخدمة، لكن تخصيص الذاكرة المستخدم يبقى مرتفعا ويظهر أن يؤدي إلى أن يكون مثيل جلسة العمل في حالة التحذير.
في مزيد من التحقيق، acsmgr_icsr_frwk_instance_chkpt_falied()
يتم إستدعاء الدالة أثناء معالجة معلومات نقطة التفتيش. هناك عمليات إضافة/تحديث/حذف للقائمة في هذه الوظيفة التي لا تعمل كما هو متوقع عند تعطيل إسترداد جلسة العمل وهذا هو سبب زيادة إستهلاك الذاكرة. يتم تراكم الذاكرة المستخدمة هنا في هذا السيناريو بمرور الوقت. يحدث هذا السلوك فقط في السيناريو الذي require session recovery
غير مكون. الذاكرة المتراكمة المراد معالجتها acsmgr_icsr_frwk_instance_chkpt_falied()
لا تتحرر عندما require session recovery
) وهو ما قد يتسبب في هذه المذكرات.
الحل
طبقت جلسة إستعادة in order to حللت هذا إصدار.
الإجراء
الخطوة 1. في موجه أمر وضع EXEC، تحقق من تمكين ميزة إسترداد جلسة العمل عبر جلسة العمل ومن إستخدام الميزات لتراخيص على النظام مع show license info
erasecat4000_flash:. إذا تم تعطيل الحالة الحالية لميزة "إسترداد جلسة العمل"، فلن تتمكن من تمكين هذه الميزة حتى يتم تثبيت مفتاح ترخيص في النظام.
الخطوة 2. استعملت هذا تشكيل مثال أن يمكن جلسة إستعادة.
configure
require session recovery
end
لا تصبح هذه الميزة نافذة المفعول إلا بعد إعادة تشغيل النظام.
الخطوة 3. احفظ التكوين الخاص بك كما هو موضح في التحقق من التكوين وحفظه.
الخطوة 4. قم بإعادة تشغيل النظام باستخدام reload
erasecat4000_flash:. هذه هي المطالبة التي تظهر:
تأكيد رغبتك في إعادة تشغيل النظام وإدخاله Yes
.
يقوم النظام، عند إعادة تشغيله، بتمكين إسترداد جلسة العمل وإنشاء كافة المهام "وضع الاستعداد" المتطابقة، وإجراء عمليات حجز بطاقة معالجة الحزم، والعمليات الأخرى تلقائيا.
الخطوة 5. بعد إعادة تشغيل النظام، يجب عليك التحقق من إستعداد النظام لدعم هذه الميزة كما هو موضح في حالة إسترداد جلسة عمل العرض. يمكن للمستخدمين الأكثر تقدما إختيار إدراج require session recovery
قم بتنفيذ الأمر في ملف تكوين موجود بالفعل باستخدام محرر نصي أو وسائل أخرى، ثم قم بتطبيق ملف التكوين يدويا. يرجى توخي الحذر عند القيام بذلك، لضمان وضع هذا الأمر بين الأسطر القليلة الأولى من أي ملف تكوين موجود بالفعل، ويجب أن يظهر قبل إنشاء أي سياق غير محلي.