تحسين سرعة نقل الشبكة للأجهزة الظاهرية لـ Azure

تحتوي أجهزة Azure الظاهرية (VMs) على إعدادات شبكة افتراضية يمكن تحسينها بشكل أكبر لمعدل نقل الشبكة. توضح هذه المقالة كيفية تحسين معدل نقل الشبكة لأجهزة Microsoft Azure Windows وLinux الظاهرية، بما في ذلك التوزيعات الرئيسية مثل Ubuntu وRed Hat.

أجهزة Windows الظاهرية

إذا كان جهازك الظاهري الذي يعمل بنظام Windows يدعم الشبكات المتسارعة، فمكن هذه الميزة لتحقيق الإنتاجية المثلى. لمزيد من المعلومات، راجع إنشاء جهاز ظاهري يعمل بنظام Windows باستخدام الشبكات المتسارعة.

بالنسبة لجميع الأجهزة الظاهرية الأخرى التي تعمل بنظام Windows، يمكن أن يصل استخدام التحجيم الجانبي (RSS) إلى أعلى إنتاجية من الجهاز الظاهري بدون RSS. قد يتم تعطيل RSS بشكل افتراضي في Windows VM. لتحديد ما إذا كان RSS مُمكّنًا أم لا، وتمكينه إذا كان معطلًا حاليًا، أكمل الخطوات التالية:

  1. تحقق مما إذا تم تمكين RSS لمحول شبكة باستخدام الأمر Get-NetAdapterRss PowerShell. في المثال التالي، تم إرجاع الإخراج من Get-NetAdapterRss، لم يتم تمكين RSS.

    Name                    : Ethernet
    InterfaceDescription    : Microsoft Hyper-V Network Adapter
    Enabled                 : False
    
  2. لتمكين RSS، أدخل الأمر التالي:

    Get-NetAdapter | % {Enable-NetAdapterRss -Name $_.Name}
    

    لا يحتوي هذا الأمر على إخراج. يغير الأمر إعدادات NIC. يتسبب في فقدان الاتصال المؤقت لمدة دقيقة واحدة تقريبا. يظهر مربع حوار إعادة الاتصال أثناء فقدان الاتصال. عادة ما يُستعاد الاتصال بعد المحاولة الثالثة.

  3. تأكد من تمكين RSS في الجهاز الظاهري عن طريق إدخال الأمر Get-NetAdapterRss مرة أخرى. إذا نجح الأمر، فسيظهر إخراج المثال التالي:

    Name                    : Ethernet
    InterfaceDescription    : Microsoft Hyper-V Network Adapter
    Enabled                 : True
    

أجهزة Linux الظاهرية

يُمكّن RSS دائمًا بشكل افتراضي في جهاز Azure Linux ظاهري. تتضمن إصدارات Linux kernels منذ أكتوبر 2017 خيارات تحسين الشبكة الجديدة التي تُمكن جهاز Linux الظاهري من تحقيق معدل نقل أعلى للشبكة.

Ubuntu لعمليات التوزيع الجديدة

تعد Ubuntu Azure kernel هي الأكثر تحسينًا لأداء الشبكة على Azure. حاليا تأتي جميع صور Ubuntu حسب Canonical بشكل افتراضي مع تثبيت نواة Azure المحسنة.

يمكنك ببساطة استخدام الأمر أدناه للتأكد من أنك تستخدم نواة Azure التي تم تعريفها بواسطة -azure في نهاية الإصدار.

uname -r

#sample output on Azure kernel:
6.8.0-1017-azure

ترقية Ubuntu Azure kernel للأجهزة الظاهرية الموجودة

يمكنك الحصول على أداء معدل نقل كبير عن طريق الترقية إلى نواة Azure Linux. للتحقق مما إذا كان لديك kernel هذا، تحقق من إصدار kernel. يجب أن يكون نفس المثال أو أحدث منه.

#Azure kernel name ends with "-azure"
uname -r

#sample output on Azure kernel:
#4.13.0-1007-azure

إذا لم يكن جهازك الظاهري يحتوي على نواة Azure، فإن رقم الإصدار يبدأ عادة ب "4.4". إذا لم يكن لدى الجهاز الظاهري نواة Azure، فقم بتشغيل الأوامر التالية كجذر:

#run as root or preface with sudo
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get dist-upgrade -y
sudo apt-get install "linux-azure"
sudo reboot

توزيعات أخرى

يجب أن تحتوي معظم التوزيعات الحديثة على تحسينات كبيرة مع kernels أحدث من 4.19+، يمكنك التحقق من إصدار kernel الحالي والتأكد من تشغيل نواة أحدث.

الخطوات التالية