المقدمة
يصف هذا المستند مشكلة إعادة ترتيب بطاقة واجهة الشبكة (NIC) على العديد من مهايئات بطاقة الواجهة الظاهرية (VIC) من الجيل الثالث من الفئة C. يتم ملاحظة تغير السلوك بالرجوع إلى وضع بطاقة واجهة الشبكة الظاهرية (VNIC)/ مهايئ الناقل المضيف الظاهري (vHBA)، وطلب الجهاز، وتعداد اتصال مكونات الأجهزة الطرفية (PCI)، والمساهمة في مشكلات إعادة ترتيب PCI تظهر من أنظمة التشغيل المختلفة (OS).
معلومات أساسية
يرجع السبب في هذه المشكلة إلى:
- إضافة/حذف بطاقات واجهة الشبكة (NICs)
- إعادة تشغيل الخادم
- ترقية الخادم
تحدث هذه المشكلة بسبب تعداد NIC الذي يحدث بعد تطبيق BIOS أو البرامج الثابتة أو ترقية الحزم أو إضافة NIC جديدة.
يتم تكوين المحولات الظاهرية (vSwitches) التي توفر اتصال الشبكة إلى العالم الخارجي استنادا إلى أسماء وحدة تحكم واجهة شبكة الجهاز الظاهري (VMNIC). إذا تمت إعادة تسمية جميع بطاقات واجهة الشبكة (NICs)، فإن حزم توجيه vSwitches إلى الواجهات التي لم تعد موجودة.
يتبع Unified Computing System Manager (UCSM) خوارزمية موازنة الأحمال القياسية عند تعامله مع منافذ المضيف VIC13XX.
لاحظ ما يلي:
- يتم توزيع إجمالي عدد بطاقات واجهة الشبكة (NICs) بالتناسب على نسبة السعة النسبية لها.
- يحاول النظام وضع المزيد من بطاقات واجهة الشبكة (NIC) على بطاقة المهايئ ذات سعة أكبر لبطاقة واجهة الشبكة (vNIC) وبطاقات واجهة شبكة (vNIC) أقل على بطاقة المهايئ ذات السعة الأقل. ونتيجة لذلك، يقوم النظام بتعيين الوضع الفعلي لبطاقات واجهة الشبكة (NICs) بشكل مناسب، والتي يتم تعيينها بدورها لبطاقة المهايئ Peripheral Component Interconnect (PCIe) المخصصة. يحدث هذا الوضع بالترتيب الفعلي.
- في حالة إعداد البطاقات الفرعية المختلطة، ما دامت جميع بطاقات المهايئات تدعم الإمكانيات المطلوبة، تضمن خوارزمية توزيع الأحمال وضع بطاقة واجهة شبكة (vNIC) واحدة على الأقل وبطاقة مهايئ الناقل المضيف واحد على كل بطاقة من بطاقات المهايئات.
تأثير نظام التشغيل VMWare
يتم تحديد علاقة ترقيم PCI إلى VMNIC في وقت التمهيد ويتم إدخالها تلقائيا في ملف esx.conf الموجود في /etc/vmWare/للاستمرار. يقوم مضيف ESX/ESXi أولا بمسح رقم المقطع، ثم رقم الناقل، ورقم الفتحة، وأخيرا رقم الدالة. يضمن هذا أمر أن ميناء على ال نفسه multi-port NIC يكون عددت بشكل تسلسلي.
عند تثبيت ESXi/ESX، يكون ترتيب VMNIC تسلسليا. هذا يتغير مع مرور الوقت بما أن NICs أزلت وآخر nicS أضفت. ويؤدي ذلك إلى ترتيب VMNIC غير مرغوب فيه وغير متزامن مع اصطلاح التسمية على الأجهزة المضيفة الأخرى ESX/ESXi.
لا يتبع ESXi دائما ترتيب عناوين PCI عندما يقوم بتعداد أجهزة VMNIC و vHBA. في التركيب المبدئي، يتبع عنوان PCI. ومع ذلك، عند إزالة الأجهزة وإضافتها، هناك خوارزمية معينة تتعامل مع الأمر. قد يتسبب ذلك في أن تصبح أوامر VNIC/vHBA غير صحيحة أو غير متزامنة بين ملف تعريف الخدمة ونظام التشغيل.
ارجع إلى VMware KB: http://kb.vmware.com/kb/2019871
قام ESXi 5.5 و 6.0 بتغيير خوارزمية الترتيب الخاصة به، على الرغم من إستمرار هذه الأعراض. ارجع إلى: http://kb.vmware.com/kb/ 2091560
قرار
عند التثبيت الأولي، يحاول نظام الاسم الجديد تعيين الأسماء بترتيب يمكن التنبؤ به من خلال موقع فعلي. وبعد ذلك، يحافظ على ثبات اسم الجهاز حتى عبر إضافة أو إزالة أجهزة أخرى إلى النظام. في وقت التثبيت، عادة ما تتلقى الأجهزة المدمجة على اللوحة الأم للنظام أقل الأسماء تعدادا، بالترتيب الذي يتم فيه ترقيم منافذ مخرجاتها على حالة النظام، بينما تتلقى الأجهزة الموجودة في الفتحات القابلة للتوصيل ثاني أعلى الأسماء تعدادا، بالترتيب الذي يتم فيه ترقيم الفتحات على الحالة. يجب على القارئ ملاحظة أن هذه العملية تتجاهل الأجهزة التي لا يوجد برنامج تشغيل لها.
الحل
يمكن حل المشكلة بواسطة هذه الحلول:
الخطوة 1. إعادة تثبيت ESXi.
الخطوة 2. قم بتصحيح إعادة الترتيب يدويا من طبقة ESXi الآمنة (SSH).
الخطوة 3. إنشاء سياسة وضع vNIC/vHBA في UCSM.
الخطوة 2. تصحيح إعادة الترتيب يدويا من ESXi SSH :
1. الحصول على تخطيط عنوان MAC من واجهة المستخدم الرسومية (GUI) ل UCSM للخادم كما هو موضح في الصورة:
2. الحصول على تخطيط عنوان MAC من واجهة سطر الأوامر ESXi.
[root@ucs-116:~] esxcli network nic list
3. تحقق ما إذا كانت عناوين MAC من UCSM تتطابق مع إخراج قائمة بطاقات واجهة الشبكة (NIC) الخاصة بشبكة esxcli.
في هذا الإخراج، لا تتطابق عناوين MAC، تم تبديل VMNIC2 وVMNIC4. وهذا يرجع إلى مشكلة إعادة طلب ناقل PCI.
4. تحقق من طلب ناقل PCI على eXCLI.
localcli --plugin-dir /usr/lib/vmware/esxcli/int/ deviceInternal alias list | grep -i vmnic | sort -k3
تم إستبدال طلب ناقل PCI بين VMNIC2 وVMNIC4.
5. لاحظ رقم ناقل PCI، واستخدم هذه الأوامر لإصلاح إعادة الترتيب:
localcli --plugin-dir /usr/lib/vmware/esxcli/int/ deviceInternal alias store --alias
vmnic2 --bus-address s00000000:05.00 --bus-type pci
localcli --plugin-dir /usr/lib/vmware/esxcli/int/ deviceInternal alias store --alias
vmnic4 --bus-address s00000000:07.00 --bus-type pci
6. قم بإعادة التمهيد وبمجرد ظهور المضيف، تحقق من ترتيب PCI وقائمة بطاقات واجهة الشبكة:
لقد قمت بتصحيح إعادة ترتيب PCI بنجاح.
الخطوة 3. إنشاء سياسة وضع vNIC/vHBA في UCSM
في UCSM، انتقل إلى ملف تعريف الخدمة > الشبكة > تعديل موضع بطاقة واجهة الشبكة (vNIC)/مهايئ الناقل المضيف (vHBA).
1. أثناء التثبيت الأولي: انتقل إلى تعديل نهج وضع بطاقة واجهة الشبكة (vNIC)/بطاقة HBA كما هو موضح في الصورة.
2. الآن ترى منفذ مضيف المسؤول على أنه أي. هذا يكون a round-robin تعيين، أن يضع vnic0 على مضيف ميناء 1، و vnic1 على مضيف ميناء 2. إذا كنت ترغب في إضافة بطاقتي واجهة شبكة (vNICs) إضافيتين إلى ملف تعريف الخدمة، فعليك أولا مطابقة المنفذ المضيف المعين لبطاقات واجهة الشبكة (vNICs) الموجودة بالفعل:
3. بعد ذلك، أضف أي بطاقات واجهة شبكة (NICs) جديدة إلى المنفذ المضيف 2 فقط. سيحتفظ هذا بعنوان PCI الخاص ببطاقات واجهة الشبكة (NICs) الموجودة مسبقا، ولن يتسبب في أي إعادة تعيين:
ملاحظة: لديك الآن بطاقة واجهة شبكة (NIC) واحدة على المنفذ المضيف 1 و 3 بطاقات واجهة شبكة (NIC) على المنفذ المضيف 2. ونقطة موازنة الحمل هي بحيث يتم توزيع الحمل والنطاق الترددي بالتساوي. إذا كان لديك حمل أعلى على منفذ مضيف واحد، فقد يؤدي ذلك إلى تأثير الأداء/النطاق الترددي. إذا كان يجب إنشاء أكثر من بطاقتي واجهة شبكة (NIC) إضافيتين، فيوصى بتخطيط إعادة تثبيت نظام التشغيل لإبقاء منافذ المضيف موزعة بشكل متساو.
معيبونا
- CSCut78943 - VIC1340/1380 مع أمر وضع خاطئ vNIC و vHBA.
- CSCuv19605 - يعجز أن يثبت Host-Port ل vNICs عندما يستعمل أنت موصولية سياسة.
وقد سجل عيب في التعزيز. يجب على مثبت HX إنشاء سياسة وضع vNIC/vHBA لتجنب إعادة طلب PCI NIC.
ملاحظة: قد ينتج عن التعديلات على سياسة وضع vCON، إما VCON أو Admin Host Port تغييرات مختلفة في تعداد PCIe. يتم تعداد بطاقات واجهة الشبكة (NICs) الخاصة بالطراز vCON1 vNICs قبل بطاقات واجهة الشبكة الخاصة بالطراز vCON2.