تحسين سرعة نقل الشبكة للأجهزة الظاهرية لـ Azure
تحتوي أجهزة Azure الظاهرية (VM) على إعدادات الشبكة الافتراضية التي يمكن تحسينها بشكل أكبر لمعدل النقل للشبكة. تصف هذه المقالة كيفية تحسين معدل النقل للشبكة لأجهزة Microsoft Azure Windows و Linux الظاهرية، بما في ذلك التوزيعات الرئيسية مثل Ubuntu و CentOS و Red Hat.
جهاز ظاهري يعمل بنظام Windows
إذا كان جهاز Windows الظاهري يدعم تسريع الشبكات، فإن تمكين هذه الميزة سيكون التكوين الأمثل لمعدل النقل. بالنسبة لجميع أجهزة Windows الظاهرية الأخرى، يمكن أن يصل استخدام تغيير حجم جانب التلقي (RSS) إلى معدل نقل أقصى أعلى من الجهاز الظاهري بدون RSS. قد يُعطل RSS بشكل افتراضي في جهاز Windows ظاهري. لتحديد ما إذا كان RSS مُمكّنًا أم لا، وتمكينه إذا كان معطلًا حاليًا، أكمل الخطوات التالية:
تحقق مما إذا كان RSS مُمكّنًا لمحوّل الشبكة باستخدام الأمر PowerShell
Get-NetAdapterRss. في إخراج المثال التالي الذي تم إرجاعه منGet-NetAdapterRss، لم يتم تمكين RSS.Name : Ethernet InterfaceDescription : Microsoft Hyper-V Network Adapter Enabled : Falseلتمكين RSS، أدخل الأمر التالي:
Get-NetAdapter | % {Enable-NetAdapterRss -Name $_.Name}لا يحتوي الأمر السابق على إخراج. غيّر الأمر إعدادات NIC، ما تسبب في فقدان الاتصال مؤقتًا لمدة دقيقة واحدة تقريبًا. يظهر مربع حوار إعادة الاتصال أثناء فقدان الاتصال. عادة ما يُستعاد الاتصال بعد المحاولة الثالثة.
تأكد من تمكين 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 من خلال عرض صفحة التنزيل.
الخطوات التالية
- توزيع الأجهزة الظاهرية بالقرب من بعضها البعض للحصول على زمن انتقال منخفض باستخدام مجموعة موضع التقارب
- اطلع على النتيجة المُحسنة مع اختبار النطاق الترددي/معدل النقل لجهاز Azure الظاهري للسيناريو خاصتك.
- اقرأ حول كيفية تخصيص النطاق الترددي للأجهزة الظاهرية
- تعرف على المزيد من خلال زيارة الأسئلة المتداولة حول شبكة Azure الظاهرية (FAQ)