استخدام Azure CLI لإنشاء جهاز ظاهري يعمل بنظام التشغيل Windows أو Linux باستخدام الشبكات المتسارعة

تنبيه

تشير هذه المقالة إلى CentOS، وهو توزيع Linux يقترب من حالة نهاية العمر الافتراضي (EOL). يرجى مراعاة استخدامك والتخطيط وفقا لذلك. لمزيد من المعلومات، راجع إرشادات نهاية العمر الافتراضي CentOS.

توضح هذه المقالة كيفية إنشاء جهاز ظاهري Linux أو Windows (VM) مع تمكين Accelerated Networking (AccelNet) باستخدام واجهة سطر الأوامر Azure CLI. تتناول المقالة أيضا كيفية تمكين الشبكات المسرعة وإدارتها على الأجهزة الظاهرية الموجودة.

يمكنك أيضا إنشاء جهاز ظاهري مع تمكين الشبكات المتسارعة باستخدام مدخل Microsoft Azure. لمزيد من المعلومات حول استخدام مدخل Microsoft Azure لإدارة الشبكات المتسارعة على الأجهزة الظاهرية، راجع إدارة الشبكات المسرعة من خلال المدخل.

لاستخدام Azure PowerShell لإنشاء جهاز ظاهري يعمل بنظام Windows مع تمكين الشبكات المتسارعة، راجع استخدام Azure PowerShell لإنشاء جهاز ظاهري يعمل بنظام Linux مع الشبكات المتسارعة.

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

إنشاء جهاز ظاهري باستخدام الشبكات المتسارعة

في الأمثلة التالية، يمكنك استبدال معلمات المثال مثل <myResourceGroup>و <myNic>و <myVm> بالقيم الخاصة بك.

إنشاء شبكة ظاهرية

  1. استخدم az group create لإنشاء مجموعة موارد لاحتواء الموارد. تأكد من تحديد منطقة Windows أو Linux مدعومة كما هو موضح في Windows وLinux Accelerated Networking.

    az group create --name <myResourceGroup> --location <myAzureRegion>
    
  2. استخدم az network vnet create لإنشاء شبكة ظاهرية مع شبكة فرعية واحدة في مجموعة الموارد:

    az network vnet create \
      --resource-group <myResourceGroup> \
      --name <myVnet> \
      --address-prefix 192.168.0.0/16 \
      --subnet-name <mySubnet> \
      --subnet-prefix 192.168.1.0/24
    

إنشاء مجموعة أمان الشبكة

  1. استخدم az network nsg create لإنشاء مجموعة أمان شبكة (NSG).

    az network nsg create \
      --resource-group <myResourceGroup> \
      --name <myNsg>
    
  2. تحتوي NSG على العديد من القواعد الافتراضية، واحدة منها تعطل جميع الوصول الوارد من الإنترنت. استخدم az network nsg rule create لفتح منفذ للسماح ببروتوكول سطح المكتب البعيد (RDP) أو وصول shell الآمن (SSH) إلى الجهاز الظاهري.

    az network nsg rule create \
      --resource-group <myResourceGroup> \
      --nsg-name <myNsg> \
      --name Allow-RDP-Internet \
      --access Allow \
      --protocol Tcp \
      --direction Inbound \
      --priority 100 \
      --source-address-prefix Internet \
      --source-port-range "*" \
      --destination-address-prefix "*" \
      --destination-port-range 3389
    

إنشاء واجهة شبكة باستخدام الشبكات المسرّعة

  1. استخدم az network public-ip create لإنشاء عنوان IP عام. لا يحتاج الجهاز الظاهري إلى عنوان IP عام إذا لم تتمكن من الوصول إليه من الإنترنت، ولكنك تحتاج إلى عنوان IP العام لإكمال خطوات هذه المقالة.

    az network public-ip create \
      --name <myPublicIp> \
      --resource-group <myResourceGroup>
    
  2. استخدم az network nic create لإنشاء واجهة شبكة (NIC) مع تمكين Accelerated Networking. ينشئ المثال التالي NIC في الشبكة الفرعية للشبكة الظاهرية، ويربط NSG ب NIC.

    az network nic create \
     --resource-group <myResourceGroup> \
      --name <myNic> \
      --vnet-name <myVnet> \
      --subnet <mySubnet> \
      --accelerated-networking true \
      --public-ip-address <myPublicIp> \
      --network-security-group <myNsg>
    

إنشاء جهاز ظاهري وإرفاق بطاقات NIC

استخدم az vm create لإنشاء الجهاز الظاهري، واستخدم --nics الخيار لإرفاق NIC الذي أنشأته. تأكد من تحديد حجم الجهاز الظاهري وتوزيعه المدرج في Windows وLinux Accelerated Networking. للحصول على قائمة بجميع أحجام وخصائص الجهاز الظاهري، راجع أحجام الأجهزة الظاهرية في Azure.

ينشئ المثال التالي جهازا ظاهريا لمركز بيانات Windows Server 2019 بحجم يدعم الشبكات المتسارعة، Standard_DS4_v2.

az vm create \
  --resource-group <myResourceGroup> \
  --name <myVm> \
  --image Win2019Datacenter \
  --size Standard_DS4_v2 \
  --admin-username <myAdminUser> \
  --admin-password <myAdminPassword> \
  --nics <myNic>

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

{
  "fqdns": "",
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm",
  "location": "centralus",
  "macAddress": "00-0D-3A-23-9A-49",
  "powerState": "VM running",
  "privateIpAddress": "192.168.0.4",
  "publicIpAddress": "40.68.254.142",
  "resourceGroup": "myResourceGroup"
}

تأكد من تمكين الشبكات المسرّعة

بمجرد إنشاء الجهاز الظاهري في Azure، اتصل بالجهاز الظاهري وتأكد من تثبيت وحدة تحكم Ethernet في Windows.

  1. في مدخل Microsoft Azure، ابحث عن الأجهزة الظاهرية وحددها.

  2. في صفحة الأجهزة الظاهرية، حدد الجهاز الظاهري الجديد.

  3. في صفحة نظرة عامة على الجهاز الظاهري، حدد الاتصال.

  4. في شاشة الاتصال، حدد RDP الأصلي.

  5. في شاشة RDP الأصلية، حدد تنزيل ملف RDP.

  6. افتح ملف RDP الذي تم تنزيله، ثم سجل الدخول باستخدام بيانات الاعتماد التي أدخلتها عند إنشاء الجهاز الظاهري.

  7. على الجهاز الظاهري البعيد، انقر بزر الماوس الأيمن فوق بدء وحدد إدارة الأجهزة.

  8. في الإطار إدارة الأجهزة، قم بتوسيع عقدة محولات الشبكة.

  9. تأكد من ظهور محول Ethernet الظاهري Mellanox الاتصال X-4 Lx، كما هو موضح في الصورة التالية:

    Mellanox الاتصال X-3 Virtual Function Ethernet Adapter، محول شبكة اتصال جديد للشبكات المتسارعة، إدارة الأجهزة

    يؤكد وجود المحول تمكين الشبكات المتسارعة لجهازك الظاهري.

إشعار

إذا فشل محول Mellanox في البدء، افتح موجه أوامر مسؤول على الجهاز الظاهري البعيد وأدخل الأمر التالي:

netsh int tcp set global rss = enabled

التعامل مع الربط الديناميكي وإلغاء الوظيفة الظاهرية

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

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

لمزيد من المعلومات حول متطلبات ربط التطبيق، راجع كيفية عمل الشبكات المتسارعة في أجهزة Linux و FreeBSD الظاهرية.

للتأكد من أن صورتك أو تطبيقاتك المخصصة تدعم بشكل صحيح الربط الديناميكي وإبطال الوظائف الظاهرية، يمكن اختبار الوظيفة على أي خادم Windows Hyper-V. استخدم Windows Server محلي يقوم بتشغيل Hyper-V في التكوين التالي:

  • تأكد من أن لديك محول شبكة فعلي يدعم SR-IOV.
  • يتم إنشاء مفتاح ظاهري خارجي أعلى محول SR-IOV هذا مع تحديد "تمكين ظاهرية الإدخال/الإخراج أحادية الجذر (SR-IOV)".
  • يتم إنشاء/نشر جهاز ظاهري يقوم بتشغيل صورة نظام التشغيل أو التطبيق الخاص بك.
  • محولات الشبكة لهذا الجهاز الظاهري، ضمن تسريع الأجهزة، تم تحديد "تمكين SR-IOV".

بمجرد التحقق من أن الجهاز الظاهري والتطبيق يستفيدان من محول شبكة باستخدام SR-IOV، يمكنك تعديل أوامر المثال التالية للتبديل بين إيقاف تشغيل/تشغيل SR-IOV من أجل إبطال الوظيفة الظاهرية وإضافتها والتي تحاكي ما يحدث أثناء خدمة مضيف Azure:

# Get the virtual network adapter to test
$vmNic = Get-VMNetworkAdapter -VMName "myvm" | where {$_.MacAddress -eq "001122334455"}

# Enable SR-IOV on a virtual network adapter
Set-VMNetworkAdapter $vmNic -IovWeight 100 -IovQueuePairsRequested 1

# Disable SR-IOV on a virtual network adapter
Set-VMNetworkAdapter $vmNic -IovWeight 0

إدارة الشبكات المتسارعة على الأجهزة الظاهرية الموجودة

من الممكن تمكين الشبكات المتسارعة على جهاز ظاهري موجود. يجب أن يفي الجهاز الظاهري بالمتطلبات التالية لدعم الشبكات المتسارعة:

  • حجم مدعوم للشبكات المتسارعة.

  • صورة Azure Marketplace المدعومة وإصدار kernel ل Linux.

  • تم إيقافه أو إلغاء تخصيصه قبل أن تتمكن من تمكين الشبكات المتسارعة على أي NIC. ينطبق هذا المطلب على جميع الأجهزة الظاهرية الفردية أو الأجهزة الظاهرية في مجموعة توفر أو مجموعات مقياس الجهاز الظاهري Azure.

تمكين الشبكات المتسارعة على الأجهزة الظاهرية الفردية أو الأجهزة الظاهرية في مجموعات التوفر

  1. أولا، قم بإيقاف الجهاز الظاهري وإلغاء تخصيصه، أو جميع الأجهزة الظاهرية في مجموعة التوفر.

    az vm deallocate \
      --resource-group <myResourceGroup> \
      --name <myVm>
    

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

  2. بمجرد إيقاف الجهاز الظاهري، قم بتمكين الشبكات المتسارعة على NIC للجهاز الظاهري الخاص بك.

    az network nic update \
      --name <myNic> \
      --resource-group <myResourceGroup> \
      --accelerated-networking true
    
  3. أعد تشغيل الجهاز الظاهري أو جميع الأجهزة الظاهرية في مجموعة التوفر، وتأكد من تمكين الشبكات المسرعة.

    az vm start --resource-group <myResourceGroup> \
      --name <myVm>
    

تمكين الشبكات المتسارعة على مجموعات مقياس الجهاز الظاهري

تختلف مجموعات مقياس الجهاز الظاهري ل Azure قليلا، ولكنها تتبع نفس سير العمل.

  1. أولاً، أوقف الأجهزة الظاهرية:

    az vmss deallocate \
      --name <myVmss> \
      --resource-group <myResourceGroup>
    
  2. بمجرد إيقاف الأجهزة الظاهرية، قم بتحديث خاصية Accelerated Networking ضمن واجهة الشبكة.

    az vmss update --name <myVmss> \
      --resource-group <myResourceGroup> \
      --set virtualMachineProfile.networkProfile.networkInterfaceConfigurations[0].enableAcceleratedNetworking=true
    
  3. تحتوي مجموعات مقياس الجهاز الظاهري على نهج ترقية يطبق التحديثات باستخدام الإعدادات التلقائية أو المتداولة أو اليدوية. تعين الإرشادات التالية النهج إلى تلقائي بحيث تلتقط مجموعات مقياس الجهاز الظاهري التغييرات مباشرة بعد إعادة التشغيل.

    az vmss update \
      --name <myVmss> \
      --resource-group <myResourceGroup> \
      --set upgradePolicy.mode="automatic"
    
  4. وأخيرا، أعد تشغيل مجموعات مقياس الجهاز الظاهري.

    az vmss start \
      --name <myVmss> \
      --resource-group <myResourceGroup>
    

بمجرد إعادة التشغيل وانتهاء الترقيات، يظهر VF داخل الأجهزة الظاهرية التي تستخدم نظام التشغيل وحجم الجهاز الظاهري المدعومين.

تغيير حجم الأجهزة الظاهرية الحالية باستخدام الشبكات المتسارعة

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

  1. قم بإيقاف وإلغاء تخصيص الجهاز الظاهري أو جميع الأجهزة الظاهرية في مجموعة التوفر أو مجموعات مقياس الجهاز الظاهري.

  2. تعطيل الشبكات المسرعة على NIC للجهاز الظاهري أو جميع الأجهزة الظاهرية في مجموعة التوفر أو مجموعات مقياس الجهاز الظاهري.

  3. انقل الجهاز الظاهري أو الأجهزة الظاهرية إلى حجم جديد لا يدعم الشبكات المتسارعة، ثم أعد تشغيلها.

إدارة الشبكات المسرعة من خلال المدخل

عند إنشاء جهاز ظاهري في مدخل Microsoft Azure، يمكنك تحديد خانة الاختيار Enable accelerated networking في علامة التبويب Networking من شاشة Create a virtual machine .

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

إشعار

  • يمكنك تمكين الشبكات المسرعة أثناء إنشاء الجهاز الظاهري للمدخل فقط لأنظمة التشغيل المدعومة من Azure Marketplace. لإنشاء وتمكين الشبكات المتسارعة لجهاز ظاهري باستخدام صورة نظام تشغيل مخصصة، يجب استخدام Azure CLI أو PowerShell.

  • يظهر إعداد Accelerated Networking في المدخل الحالة المحددة من قبل المستخدم. يسمح Accelerated Networking باختيار Disabled في المدخل حتى إذا كان حجم الجهاز الظاهري يتطلب الشبكات المسرعة. تمكن أحجام الأجهزة الظاهرية التي تتطلب الشبكات المسرعة الشبكات المتسارعة في وقت التشغيل بغض النظر عن إعداد المستخدم في المدخل.

لتمكين أو تعطيل الشبكات المسرعة لجهاز ظاهري موجود من خلال مدخل Microsoft Azure:

  1. من صفحة مدخل Azure للجهاز الظاهري، حدد Networking من القائمة اليسرى.

  2. في صفحة Networking ، حدد واجهة الشبكة.

  3. في أعلى صفحة NIC Overview، حدد Edit accelerated networking.

  4. حدد تلقائي أو ممكن أو معطل، ثم حدد حفظ.

لتأكيد ما إذا كان يتم تمكين الشبكات المتسارعة لجهاز ظاهري موجود:

  1. من صفحة المدخل للجهاز الظاهري، حدد Networking من القائمة اليسرى.

  2. في صفحة Networking ، حدد واجهة الشبكة.

  3. في صفحة نظرة عامة على واجهة الشبكة، ضمن Essentials، لاحظ ما إذا تم تعيين الشبكات المسرعة إلى ممكن أو معطل.

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