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

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

جهاز ظاهري يعمل بنظام Windows

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

  1. تحقق مما إذا كان RSS مُمكّنًا لمحوّل الشبكة باستخدام الأمر PowerShell Get-NetAdapterRss. في إخراج المثال التالي الذي تم إرجاعه من 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. للحصول على أحدث التحسينات، ثبّت أولًا أحدث إصدار مدعوم من 18.04-LTS، كما يلي:

"Publisher": "Canonical",
"Offer": "UbuntuServer",
"Sku": "18.04-LTS",
"Version": "latest"

بعد اكتمال الإنشاء، أدخل الأوامر التالية للحصول على آخر التحديثات. تعمل هذه الخطوات أيضًا مع الأجهزة الظاهرية التي تُشغّل حاليًا Ubuntu Azure kernel.

#run as root or preface with sudo
apt-get -y update
apt-get -y upgrade
apt-get -y dist-upgrade

قد تكون مجموعة الأوامر الاختيارية التالية مفيدة لعمليات توزيع Ubuntu الحالية التي تحتوي بالفعل على Azure kernel ولكنها فشلت في إجراء مزيد من التحديثات مع الأخطاء.

#optional steps may be helpful in existing deployments with the Azure kernel
#run as root or preface with sudo
apt-get -f install
apt-get --fix-missing install
apt-get clean
apt-get -y update
apt-get -y upgrade
apt-get -y dist-upgrade

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

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

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

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

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

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

CentOS

للحصول على أحدث التحسينات، يُفضل إنشاء جهاز ظاهري بأحدث إصدار مدعوم عن طريق تحديد المعلمات التالية:

"Publisher": "OpenLogic",
"Offer": "CentOS",
"Sku": "7.7",
"Version": "latest"

يمكن أن تستفيد الأجهزة الظاهرية الجديدة والحالية من تثبيت أحدث خدمات تكامل Linux (LIS). تحسين معدل النقل في LIS، بدءًا من 4.2.2-2، على الرغم من أن الإصدارات الأحدث تحتوي على مزيد من التحسينات. أدخل الأوامر التالية لتثبيت أحدث LIS:

sudo yum update
sudo reboot
sudo yum install microsoft-hyper-v

Red Hat

للحصول على التحسينات، يُفضل إنشاء جهاز ظاهري بأحدث إصدار مدعوم عن طريق تحديد المعلمات التالية:

"Publisher": "RedHat"
"Offer": "RHEL"
"Sku": "7-RAW"
"Version": "latest"

يمكن أن تستفيد الأجهزة الظاهرية الجديدة والحالية من تثبيت أحدث خدمات تكامل Linux (LIS). تحسين معدل النقل في LIS، بدءًا من 4.2. أدخل الأوامر التالية لتنزيل LIS وتثبيته:

wget https://aka.ms/lis
tar xvf lis
cd LISISO
sudo ./install.sh #or upgrade.sh if prior LIS was previously installed

تعرف على المزيد حول الإصدار 4.2 من خدمات تكامل Linux لـ Hyper-V من خلال عرض صفحة التنزيل.

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