المحتويات

المقدمة

المتطلبات الأساسية

المتطلبات

المكونات المستخدمة

أنواع الأخطاء الخارجية

قراءة سجلات تتبع DD

تمكين سجلات التتبع NED

واجهة سطر الأوامر (CLI) والمنافذ العامة (DDs)

أستكشاف الأخطاء الخارجية وإصلاحها

القضايا المشتركة المحددة:

مسألة الترجمة

إصدار الأمر

مشكلة قيمة غير صالحة

الأخطاء والتحذيرات والرسائل الإعلامية من الجهاز:

القرارات

خطأ المستخدم

جهاز الشبكة

نيد-ديركس

تعارض في الخدمة

تحسينات DD ودعم TAC

المقدمة

يصف هذا وثيقة كيف أن يحلل CLI و عام نوع تتبع LED ويتعرف السبب من خطأ خارجي في cisco Crosswork NSO.

المتطلبات الأساسية

المتطلبات

- ينطبق جانب أستكشاف الأخطاء وإصلاحها في هذا المستند على جميع إصدارات برنامج تشغيل عنصر الشبكة (NED) المدعومة حاليا وإصدارات Cisco® Crosswork Network Service Orchestrator (NSO).

- لاستكشاف أخطاء NED الخارجية وإصلاحها، تحتاج إلى القدرة على تمكين سجلات التتبع NED وكذلك إمكانية الوصول إلى هذه السجلات.

- من أجل التقييم الدقيق للأخطاء الخارجية المعطلة، يوصى بمعرفة جهاز الشبكة الذي تتم إدارته من قبل NSO وواجهة برمجة التطبيقات (API) الخاصة به.

المكونات المستخدمة

- Crosswork NSO 6.4.3

- NED Cisco-iosxr-7.64.1

أنواع الأخطاء الخارجية

الخطأ الخارجي NED هي علامة على فشل الاتصال بين الجهاز و NED. وهي تحدث في ثلاث فئات عريضة:

- ال NED يستلم إستجابة من الشبكة أداة ما كان يتوقع.

- تلقت الشبكة ردا من جهاز الشبكة الذي ينتهك نموذج يانغ في الشبكة.

- لا يتلقى NED إستجابة خلال الوقت المخصص.

فئة الاستجابات غير المتوقعة هي الفئة الأكثر شيوعا إلى حد بعيد هي الأخطاء الخارجية التي يمكن أن يواجهها NED. وهو يتضمن الجهاز الذي يقوم بإرجاع رسالة خطأ أو رسالة معلومات أو أي نوع آخر من المعلومات التي لا تتطابق مع ما كان يتوقعه NSO لرؤيته المرتجع. تم تصميم NEDs لمعالجة الرسائل أو التحذيرات الإعلامية التي يمكن تجاهلها بأمان. العديد من NEDs لها إعدادات NED متاحة لتخصيص أي رسائل لتجاهلها أو أي رسائل سيتم التعامل معها كخطأ خارجي.

يمكنك أن ترى خطأ خارجي ينشئه ال NED عندما يستلم ال NED معلومات لا تطابق نموذج يانغ أثناء sync-from عملية أو compare-config عملية. والمثال النموذجي هو نموذج يانغ الذي يقبل قيمة من 0 إلى 8 لورقة معينة، ولكن في آخر نسخة من نظام التشغيل هذا، أزداد النطاق إلى 0 إلى 16. لا يقبل ال‍ NED قيمة من 16 لأنه خارج النطاق الذي جرى نمذجه. وبدلا من ذلك، يمكن رفع الخطأ عندما يتم تمييز ورقة كعلامة إلزامية في نموذج يانغ ولكن لا يتم توفيرها بواسطة الجهاز أو عندما يوفر الجهاز سلسلة عندما يتوقع NSO عددا صحيحا.

بالنسبة لواجهة سطر الأوامر (CLI) و DDs العامة، لا يتم إثارة أي خطأ خارجي إذا كان NED يستلم التكوين الذي لم يتم نمذجته في نموذج NED Yang. بدلا من ذلك، يتم تسجيل هذا كملف تتبع skipped line .

أخيرا، عندما لا يتلقى NED الاستجابة المتوقعة من الجهاز خلال الوقت المحدد، يظهر خطأ خارجي. يمكن أن يحدث ذلك لأن الجهاز غير مستجيب ولم يرسل إستجابة، ولكنه يمكن أن يحدث أيضا عندما لا يتعرف على الاستجابة من الجهاز من قبل NED.

قراءة سجلات تتبع DD

سجلات التتبع هي أفضل السجلات المتوفرة لاستكشاف الأخطاء الخارجية وإصلاحها.

تمكين سجلات التتبع NED

تم تمكين سجلات تتبع NED من واجهة سطر الأوامر ل NSO.

ncs_cli -C -u admin

admin@ncs# configure

admin@ncs(config)# devices device dev-1 ned-settings [ned-id] logging level debug

admin@ncs(config)# devices device dev-1 trace raw

admin@ncs(config)# commit

admin@ncs(config)# devices device dev-1 disconnect

admin@ncs(config)# devices clear-trace

admin@ncs(config)# devices device dev-1 compare-config

بالنسبة [ned-id] ، أستخدم معرف الإطار للجهاز الذي تستهدفه باستخدام الأمر.

تحذير: يعمل الأمر clear-trace على مسح البيانات الخاصة بجميع سجلات التتبع NED الموجودة حاليا في دليل السجل. إذا كانت لديك سجلات تتبع تريد الاحتفاظ بها لهذا الجهاز أو أي أجهزة أخرى يجب أرشفتها قبل تشغيل هذا الأمر. في إصدارات NSO الحالية، يمكنك تنفيذ التتبع الواضح لجهاز واحد.

ملاحظة: في حالة عدم العثور على "تصحيح أخطاء مستوى التسجيل [ned-id]"، يمكنك تخطي هذا الأمر.

تقوم هذه الأوامر بمسح أي بيانات قديمة من ملف التتبع وإعدادها باستخدام التكوين الحالي على الجهاز. عند هذه النقطة، يمكنك نسخ المشكلة التي تم العثور عليها باستخدام ncs_cli خدمة NSO الخاصة بك. إذا واجهت الخطأ أثناء عملية الالتزام، فيجب التقاط مخرجات واجهة سطر الأوامر commit dry-run ولمرجع commit dry-run outformat native مستقبلي.

في ملف NED README، يمكنك العثور على فصل يحمل عنوان "كيفية الإبلاغ عن المشاكل التي تم تحديدها وطلبات الميزات" للحصول على إرشادات أكثر تفصيلا.

واجهة سطر الأوامر (CLI) والمنافذ العامة (DDs)

يتم تقسيم آثار LED لواجهة سطر الأوامر (CLI) و DDs العامة في مراحل منفصلة والتي تكون مفيدة لاستكشاف الأخطاء وإصلاحها. أهم المراحل التي يجب فهمها لأغراض أستكشاف الأخطاء الخارجية وإصلاحها هي مرحلتي العرض والتحضير.

يتم إستدعاء SHOW phase عندما يقوم NSO بقراءة المعلومات من جهاز الشبكة. فهو جزء من sync-from العمليات compare-config . أثناء هذه الخطوة، يقوم NSO بتوجيه الجهاز باستخدام أمر مثل show running-config قبل قراءة الاستجابة وتحليلها من الجهاز. يتم توجيه الرسائل الصادرة، التي يتم إرسالها من NSO إلى الجهاز، مع *** output الرسائل الواردة، التي يتم إرسالها بواسطة الجهاز إلى NSO، ابدأ ب *** input.

ملاحظة: تتضمن الأخطاء الخارجية أثناء عملية SHOW قيما غير مقبولة تحت نموذج يانغ الحالي، ومشاكل المهلة.

يتم إستدعاء مرحلة التحضير كجزء من commit العمليات. أثناء هذه المرحلة، يرسل NSO الإرشادات إلى الجهاز. في بداية مرحلة التحضير، يطبع NED قائمة بالتغييرات التي يعتزم NSO إجراؤها على ملف التتبع. بعد هذا الملخص الأولي، يرسل NSO الإرشادات إلى الجهاز. بالنسبة لأجهزة معينة، يرسل NSO الأوامر بشكل مجمع، بينما يتم إرسال هذه الأوامر واحدا تلو الآخر للأجهزة الأخرى. يمكن تغيير هذا السلوك باستخدام إعدادات الطبقة السفلى ذات الصلة ل TEDs التي تدعمها. على سبيل المثال، يحتوي Cisco-iosxr-cli NED على إعداد NED "write number-of-lines-to-send-in-chunk <1-1000> (default 100)"

لواجهة سطر الأوامر (CLI) التي تم وضعها، من الشائع رؤية الأوامر التي تم إرسالها بواسطة NSO كإخراج تم إرجاعه كإدخال. وذلك لأن الأمر يظهر في واجهة المستخدم المستندة إلى النص للجهاز، ولأن NSO يعتبر كل النص الذي يظهر في واجهة المستخدم هذه كإدخال. يمكن أن يبدو مثال حيث يرسل NSO الأوامر واحدا تلو الآخر:

*** output 1-Jan-2024::09:56:00.928 user: admin/425 thandle 7428 hostname NSO1 device test-device ***

interface GigabitEthernet 0/0/0/2.34280485 l2transport

*** input 1-Jan-2024::09:56:00.929 user: admin/425 thandle 7428 hostname NSO1 device test-device ***

interface GigabitEthernet 0/0/0/2.34280485 l2transport

ملاحظة: تتضمن الأخطاء الخارجية أثناء عملية التحضير أي رسائل مرتجعة من قبل الجهاز لا تلائم توقعات NSO مثل الأخطاء أو التحذيرات أو الرسائل الإعلامية.

أستكشاف الأخطاء الخارجية وإصلاحها

عند أستكشاف الأخطاء الخارجية وإصلاحها لواجهة سطر الأوامر (CLI) و NEDs العامة: قم بتمكين التتبع وإعادة إنتاج المشكلة وفحص أحدث مرحلة SHOW أو PREPARE اعتمادا على العمليات التي أدت إلى حدوث الخطأ.

فيما يتعلق بإحدى المشاكل التي يشتكي فيها NSO من قيمة معينة يتم توفيرها بواسطة الجهاز:

- ما هو الجزء من التكوين الذي اشتكى منه NSO؟

- هل التكوين المشترك بواسطة الجهاز صحيح لهذا النموذج وإصدار الجهاز؟

- هل أنت على علم بأي نماذج أو إصدارات أجهزة أخرى تستخدم هذا الجهاز NED والتي تحتوي على متطلبات إدخال أكثر تقييدا؟

بالنسبة لأي إصدار يتسبب فيه NSO في حدوث خطأ خارجي يتضمن مهلة:

- ما هو الأمر الأخير الذي تم إرساله بواسطة NSO قبل المهلة؟

- ما الذي ينتظره NSO قبل المتابعة؟

قد يكون من الصعب تحديد ما الذي ينتظره مكتب الأمن القومي. بعض ال‍ NED عند زيادة الاتساع تطبع التعبير regex الذي يبحثون عنه. في بعض الحالات، تظهر الرسالة التي كان NSO يبحث عنها في ملف التتبع، لكن NSO لم يتعرف عليها ولا يزال ينتظر.

فيما يتعلق بمسألة يثير فيها NSO خطأ خارجيا بسبب إستجابة غير متوقعة:

- ما هي الاستجابة المحددة التي يوفرها الجهاز؟

- ما الأمر الذي تم إرساله بواسطة NSO والذي أدى إلى تشغيل الاستجابة؟

- هل من المتوقع أن يكون الرد بناء على ما أرسلته NSO؟

- هل يمكن تجاهل الاستجابة من الجهاز بشكل آمن أم يجب أن تقوم بإجهاض الالتزام؟

- هل أرسل NSO الأوامر الصحيحة بالترتيب الصحيح؟

القضايا المشتركة المحددة:

مسألة الترجمة

تحدث مشكلة في الترجمة عندما يكون لدى NSO النية الصحيحة ولكن الأوامر التي يرسلها إلى الجهاز غير صحيحة تماما. يمكن أن يحدث ذلك عندما يحتوي إصدار جهاز مختلف أو نموذج يستخدم نفس NED على بناء مختلف قليلا. إذا كنت تستخدم إصدار أقدم من NED، يرجى التحقق مما إذا كان نفس السلوك لا يزال موجودا في الإصدار الأخير من NED. بالإضافة إلى ذلك، يرجى التحقق من وجود أي إعدادات خاطئة متوفرة في ملف README-NED-Settings.md المضمن في NED لمعرفة ما إذا كانت أي إعدادات تسمح لك بتخصيص هذا السلوك. إن الأخير NED بعد يتلقى الإصدار و ال يعين يتلقى ما من طريقة أن يحله، رجاء افتح حالة مع TAC. توفير:

- إصدار NSO

- باستخدام أحدث NED، يلتقط تتبع NED عملية compare-config تليها commit عملية ترسل الأمر غير الصحيح.

- الأمر الذي يقوم NED بإرساله حاليا

- الأمر الصحيح، يفضل أن يتم عرضه كمثال على واجهة سطر الأوامر (CLI) الحقيقية الخاصة بالجهاز

- الإصدار والنموذج للجهاز الذي به المشكلة

- أي إصدار آخر ونموذج للأجهزة في شبكتك باستخدام هذا NED حيث يكون سلوك NED الحالي صحيحا.

إصدار الأمر

تحدث مشكلة في الطلب عندما يرسل NED الأوامر الصحيحة بالترتيب الخاطئ. بالنسبة لبعض الأجهزة وحمولات التكوين المحددة، يكون الأمر مهما. إذا كنت تستخدم إصدار أقدم من NED، يرجى التحقق مما إذا كان نفس السلوك لا يزال موجودا في الإصدار الأخير من NED. بالإضافة إلى ذلك، يرجى التحقق من وجود أي إعدادات خاطئة متوفرة في ملف README-NED-Settings.md المضمن في NED لمعرفة ما إذا كانت أي إعدادات تسمح لك بتخصيص هذا السلوك. إن الأخير NED بعد يتلقى الإصدار و ال يعين يتلقى ما من طريقة أن يحله، رجاء افتح حالة مع TAC. توفير:

- إصدار NSO

- إستخدام أحدث NED وبدون إستخدام خدمة: تتبع NED يلتقط compare-config عملية تليها commit عملية ترسل الأمر غير الصحيح.

- إخراج الالتزام commit dry-run outformat native  الخاطئ. هذا يبدي أنت الترتيب في أي ال NED حاليا يرسل الأمر.

- الترتيب الصحيح، يفضل أن يتم عرضه كمثال على واجهة سطر الأوامر (CLI) الفعلية للجهاز

- أي متطلبات أساسية أخرى ذات صلة بمتطلب الطلب هذا

ملاحظة: في حالات نادرة، لا تستطيع Cisco معالجة متطلبات الطلب من خلال NED وفي هذه الحالة يمكنك تنفيذ سير عمل متعدد الالتزامات أو إنشاء تقرير خطأ مع المورد المناسب.

مشكلة قيمة غير صالحة

تحدث مشكلة قيمة غير صحيحة عندما يسمح NSO بتعيين نطاق مختلف من القيم عن ما يقبله الجهاز أو ل NSO لعدم السماح بالنطاق الكامل الذي يسمح به الجهاز. على سبيل المثال، يسمح لك NSO بتعريف قيمة بين 0-15، ولكن الجهاز يقبل القيم 0-8 فقط. يمكن أن يحدث ذلك عندما يتم تصميم NED مع وضع نموذج جهاز معين وإصداره في الاعتبار ولكن الأجهزة الأخرى تحمل توقعات مختلفة. إذا كنت تستخدم إصدار أقدم من NED، يرجى التحقق مما إذا كان نفس السلوك لا يزال موجودا في الإصدار الأخير من NED. بالإضافة إلى ذلك، يرجى التحقق من وجود أي إعدادات خاطئة متوفرة في ملف README-NED-Settings.md المضمن في NED لمعرفة ما إذا كانت أي إعدادات تسمح لك بتخصيص هذا السلوك. إن الأخير NED بعد يتلقى الإصدار و ال يعين يتلقى ما من طريقة أن يحله، رجاء افتح حالة مع TAC. توفير:

- إصدار NSO

- بالنسبة إلى NSO، يتم السماح بالبيانات غير المقبولة من قبل الجهاز، باستخدام أحدث NED: تتبع DD يلتقط compare-config عملية يتبعها commit إرسال قيمة يتم رفضها بواسطة الجهاز.

- بالنسبة إلى NSO التي لديها تفسير أكثر صرامة للبيانات مما يسمح به الجهاز، وذلك باستخدام أحدث NED: يلتقط تتبع NED عملية sync-from بعد تكوين البيانات على الجهاز الذي لا يقبله NSO حاليا.

- نطاق القيمة الصحيح

- الإصدار والنموذج للجهاز الذي به المشكلة

- أي إصدار آخر ونموذج للأجهزة في شبكتك باستخدام هذا NED حيث يكون سلوك NED الحالي صحيحا.

الأخطاء والتحذيرات والرسائل الإعلامية من الجهاز:

عند إستجابة الجهاز لأوامر NSO باستخدام رسالة خطأ أو رسالة أخرى، قد يؤدي ذلك إلى تشغيل خطأ خارجي في NSO. تحتوي NSO NEDs على قائمة داخلية لتعبيرات regex يمكنها تجاهلها بأمان، بالإضافة إلى التعبيرات التي تؤدي إلى حدوث خطأ. تتضمن العديد من NEDs إعدادات NED التي تتيح لك تخصيص هذه القوائم بدون الحاجة إلى تحسين NED. على سبيل المثال: يعرض الأمر cisco-iosxr-cli NED ned-setting write config-warning.

إذا لم يكن لأحدث NED مثل هذا الخيار، فيرجى فتح حالة باستخدام TAC. توفير:

- إصدار NSO

- تتبع DD يلتقط compare-config عملية تليها العملية التي ينتج عنها الخطأ

- طلب لتغيير القوائم الداخلية و/أو طلبات لإضافة دعم لخيار إعداد جديد لتخصيص القائمة بنفسك

- الرسالة المحددة التي يرسلها الجهاز والتي تتسبب في حدوث المشكلة

القرارات

خطأ المستخدم

إذا قمت بتحديد أن الأوامر التي تم إرسالها بواسطة NSO غير صحيحة، فتأكد من أن الإدخال الخاص بك إلى NSO وأن حزم الخدمات الخاصة بك قد قامت بإنشاء التغييرات الصحيحة. تحقق مما إذا كان إخراج التغييرات التي تريد commit dry-run إجراؤها مطابقا أم لا وما إذا كان إخراج الأمر commit dry-run outformat native يظهر الأوامر الصحيحة ويطلب إنشاء هذه التغييرات أم لا. إذا كان التشغيل الجاف يتوقع تغييرات غير متوقعة، فيجب التحقق من صحة مدخلاتك إلى NSO أو رمز الخدمة الخاص بك. إذا كان التشغيل الجاف صحيحا ولكن الأوامر التي يتم إرسالها إلى NSO غير صحيحة، فتحقق من الترجمة وطلب حلول المشكلة.

جهاز الشبكة

في بعض الحالات، يكون الخطأ الخارجي هو نتيجة التكوين أو الإعدادات أو حتى خطأ على جهاز الشبكة نفسه مثل عدم حصول المستخدم على التخويل الصحيح أو وجود جهاز يقيد عمليات معينة. قم بتقييم ما إذا كان يمكن تغيير التكوين أو إعدادات الجهاز للسماح ل NSO بالعمل بشكل أفضل مع الجهاز.

نيد-ديركس

يحتوي كل NED على نطاق من الإعدادات المحددة لتساعدك على تخصيص طريقة تفاعل NSO مع الجهاز. تم توثيق إعدادات NED في ملف README-NED-settings.md داخل NED وتميل إلى الاختلاف من NED إلى NED. يحتوي Cisco-iosxr-cli NED على خيارات لتغيير طريقة حساب NSO للمجموع الاختباري للجهاز، وعدد الأوامر التي يتم إرسالها بشكل مجمع، وتخصيص الأوامر الإضافية للحقن استنادا إلى مشغلات معينة أو ما إذا كان يجب على NED تجميع بيانات التكوين باستخدام "show running-config"  أو من خلال كتابة التكوين إلى ملف على الجهاز ونقل الملف باستخدام SFTP والتي يمكن أن تكون مفيدة للتكوينات الكبيرة.

تعارض في الخدمة

يحدث تعارض في NED-Service عند وجود سلوك إشكالي عند تغيير التكوين أو حذفه باستخدام حزمة خدمة ولكنه لا يظهر عندما يتم إجراء تغييرات التكوين نفسها دون إستخدام حزمة الخدمة. يمكن أن يظهر هذا النوع من السلوك كتكوين غير متوقع تتم إضافته أو إزالته، مما يؤدي إلى حدوث أخطاء خارجية من الجهاز. وعادة ما يكون هذا نتيجة لملكية الخدمة على أجزاء من التكوين. يمكن أن تتجاوز التغييرات في تكوين NSO CDB الناتجة عن حزمة الخدمة المنطق NED الذي من شأنه أن يحمي عادة من التغييرات غير الصحيحة. إذا كنت تشك في أنك واجهت هذا السلوك، فيرجى التحقق من ذلك من خلال محاولة إجراء تغييرات التكوين نفسها دون إستخدام حزمة الخدمة.

يرجى الرجوع إلى المقالة فهم ملكية خدمة NSO لمعرفة المزيد حول ملكية الخدمة والحلول المحتملة.

تحسينات DD ودعم TAC

إن لا يتوفر أي خيار آخر أنت يستطيع فتحت تذكرة مع cisco TAC وطلب أن يتم تحديث ال NED ليلائم إحتياجاتك.

تم بناء NSO DDs التي توفرها Cisco على أساس حالات الاستخدام الخاصة بك. لا تحاول Cisco بشكل استباقي تغطية جميع نماذج الأجهزة والإصدارات المحتملة، ولكن يتم تحديث TED باستمرار لتلبية إحتياجات الشبكة المتطورة والنوافذ الجديدة. يمكنك العثور على ملخص لنطاق دعم NED الذي يوفره مطورو NSO في Crosswork هنا

ملاحظة: في حين تبذل Cisco قصارى جهدها للحفاظ على بيئة إختبار داخلية واسعة، فإننا غير قادرين على الحفاظ على بيئة تغطي كل طراز وإصدار لمجموعة كبيرة من الموردين. وعلى هذا النحو، يمكننا أن نطلب مساعدتك في توفير الوصول إلى جهاز يمثل السلوك محل المشكلة.

عندما يفتح حالة مع cisco TAC ل cisco يزود NED، يزود:

- إصدار NSO

- تم تعيين تتبع NED إلى تصحيح أخطاء مستوى التسجيل

- يجب أن يلتقط تتبع DD إما عملية compare-config أو sync-from عملية

- يجب أن يحتوي تتبع NED على المشكلة المعينة التي تريد المساعدة معها

- أي معلومات عن أجهزة أخرى أو أجهزة تعرض أيضا مشكلة

- أي معلومات حول أجهزة مماثلة على نفس الجهاز NED لا تظهر مشكلة

ملاحظة: لا تدعم Cisco NetConf NEDs التي تم إنشاؤها باستخدام أداة NSO NED خارج نطاق أي مشاكل متعلقة بالأداة نفسها.

تلميح: استعملت تكنولوجيا ل TEDs يزود ب Crosswork NSO Developer: NMS (خدمات إدارة الشبكة والتكنولوجيا الفرعية: Network Service Orchestrator (NSO) - NED