المقدمة
يصف هذا المستند ميزة "التعامل مع التأكيد الرائع"، المقدمة في الإصدار 21.5.0 من StarOS.
المتطلبات الأساسية
المتطلبات
توصي Cisco بأن تكون لديك معرفة بالمواضيع التالية:
- ستار أو إس
- عقدة دعم GPRS الخدمة (SGSN)
المكونات المستخدمة
تستند المعلومات الواردة في هذا المستند إلى StarOS R21.5 والإصدارات الأحدث.
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.
معلومات أساسية
يمكن العثور على الميزة في الوثائق الرسمية هنا: دليل SGSN-Admin.
يتيح إطار عمل معالجة التأكيد الرائع معالجة جلسات عمل المشترك بطريقة تتسم بالسلاسة، والتي يتم الوصول إلى حالة التأكيد فيها وقت تنفيذ الاستدعاء. ويتم تحقيق ذلك دون التأثير على جلسات المشتركين الآخرين في نفس المعالجة.
عادة، عند الوصول إلى حالة التأكيد، تقوم معالجة مدير الجلسة (SessMgr) بإعادة تشغيل واسترداد جميع جلسات عمل المشترك من مدير AAA (AAAMgr). يتم نقل جلسات عمل المشترك المسترجعة إلى حالة الخمول.
عند تمكين معالجة التأكيد الجميل، لن يتم إعادة تشغيل معالج SessMgr. بدلا من ذلك، يقوم معالج SessMgr باستعادة جلسة المشترك المتأثر فقط من AAMgr ويمسح جلسة المشترك الموجودة على SessMgr. يتم نقل جلسات عمل المشترك المسترجعة إلى حالة الخمول. في وقت إجراء الاسترداد، يتم إسقاط جميع الرسائل الموجهة إلى المشترك. بعد الاسترداد، سيستمر المشترك في معالجة الرسائل الموجهة نحوه. باستخدام هذا الإجراء، تظل جلسات عمل المشترك التي تبقى في SessMgr غير متأثرة.
المشكلة
هناك بعض الحالات الجانبية و/أو حالات التصادم التي يكون فيها إصلاح السبب الجذري معقدا أو يكون السبب الجذري غير معروف. وفي هذه الحالات، يتم اتباع نهج التأكيد المرن لتجنب إعادة تشغيل إدارة الجلسة الكاملة.
الحل
مع التأكيد الجميل، يمكنك تنظيف الجلسة 1 واستعادتها التي تصل إلى حالة التأكيد الجميلة.
لا يوجد أي تأثير على أي جلسة أخرى في نفس الجلسة.
لن يكون هناك أي ملائمة SNMP أو syslog لإعادة التشغيل بشكل رائع.
ولن تكون هناك أي خسارة لمؤشر الأداء الرئيسي في حالة التأكيد على نحو مريح. لن يتم إعادة تشغيل المهمة نفسها.
ومع ذلك، يتم التعامل مع التأكيدات الراقية مثل أي عطل آخر، مما يعني أنك ستحصل على إدخال في قائمة الأعطال.
كيفية التعرف على تأكيد ناعم من محرك الأقراص في الحالة الصلبة:
- عملية تفريغ الحالة التي بدأها النظام مع مركز. - سوف تظهر تحت خرج "show crash" قبل المكدس
- المعالج المعطل إما أن يبدأه المستخدم أو أن وضعه غير مؤثر - سيتم رؤيته بعد المكدس أسفل إخراج وحدة المعالجة المركزية "debug console"
- PID 7939 المرفق تجاوز الفشل 5132->94 - تحت "تصحيح الأخطاء وحدة المعالجة المركزية" لن يتم تسجيل/مشاهدة في حالة التأكيد الرائع
التكوين
يمكن تكوين التعامل مع التأكيد على نحو يتسم بالسلاسة على النحو التالي:
configure
debug controlled-assert s4sgsn
[ disable | enable ] core-generation
limit-per-assert assert_value
[ no ] test file-name file_name line-number line_num [ sequence-number seq_num ]
end
لاحظ ما يلي:
-
التأكيد المتحكم فيه: تكوين إطار التأكيد المتحكم به.
-
s4sgsn: يشكل S4-SGSN المتحكم به التأكيد.
-
الجيل الأساسي: يقوم بتكوين الجيل الأساسي للتأكيد المتحكم فيه. الافتراضي: ممكن.
-
حد لكل تأكيد: تكوين الحد لكل تأكيد للتأكيد المتحكم به. الافتراضي: 5.
-
إختبار file-name file_name line-number line_num [ sequence-number seq_num ]: تكوين معالجة إختبار التأكيد المتحكم به.
-
يقوم file-name file_name: بتكوين اسم الملف حيث يلزم تأكيد التحكم. يجب أن يكون file_name سلسلة أبجدية رقمية من 1 إلى 254 حرفا.
-
يقوم line-number line_num: بتكوين رقم السطر حيث يلزم تأكيد التحكم. يجب أن يكون line_num عددا صحيحا من 1 إلى 4294967295.
-
يقوم sequence-number seq_num: بتكوين الرقم التسلسلي حيث يكون تأكيد التحكم مطلوبا. يجب أن يكون seq_num عددا صحيحا من 1 إلى 100. الافتراضي: 1.
-
تعطيل: تعطيل الإجراء المحدد لإطار عمل التأكيد المتحكم فيه.
-
تمكين: تمكين الإجراء المحدد لإطار التأكيد المتحكم فيه.
-
لا: يزيل تكوين الاختبار المحدد المرتبط بإطار التأكيد المتحكم به.
مثال
********************* CRASH #93 ***********************
SW Version : 21.5.19
Similar Crash Count : 8
Time of First Crash : 2019-May-21+06:57:14
Fatal Signal 6: Aborted
PC: [ffffe430/X] __kernel_vsyscall()
Note: System-initiated state dump w/core. <<< This note indicates a graceful assert.
Process: card=10 cpu=0 arch=X pid=11573 cpu=~16% argv0=sessmgr
Crash time: 2019-May-23+06:00:13 UTC
Recent errno: 11 Resource temporarily unavailable
Build_number: 71813
التحقق من الصحة
استخدم هذا القسم لتأكيد عمل التكوين بشكل صحيح.
مثال على الحصول على حالات التأكيد المتحكم بها لجميع الاختبارات النشطة:
# zcat ssd_s4sgn.log.gz | sed -n -e '/\*\{7\} show session subsystem facility sessmgr all debug-info /,/\*\{7\}/p' | sed -e '/^SessMgr: /,/^Controlled Assert Stats/{/^SessMgr: /!{/^Controlled Assert Stats/!d}}' | grep -E "SessMgr: Instance [0-9]{1,3}$" -A 10
مثال الإخراج:
SessMgr: Instance 135
Controlled Assert Stats
Module Name :SGW_DRV
Assert Count:0
Count File:Line Last Assert hit time(in sec)
Module Name :S4_SGSN
Assert Count:1
Count File:Line Last Assert hit time(in sec)
1 sess/sgsn/sgsn-app/s4_sm/s4_smn_egtpc.c:3164 2019/01/30 09:28:11 UTC
سيتم إعادة تعيين هذه المعلومات (العدد ورقم السطر) إذا تم إستخدام الأمر لإعادة التشغيل لأي عطل آخر. بعد الوصول إلى الحد الأقصى لعدد المرات (الافتراضي 5)، لن يتم إنشاء الأساسي.
استكشاف الأخطاء وإصلاحها
لا تتوفر حاليًا معلومات محددة لاستكشاف الأخطاء وإصلاحها لهذا التكوين.