مشاركة عبر


تعرف على Azure-VM-Utils

ينطبق على: ✔️ أجهزة Linux الظاهرية ✔️ مجموعات مقياس مرنة

توفر حزمة azure-vm-utils الأدوات المساعدة الأساسية وقواعد udev لتحسين تجربة Linux على أجهزة Azure الظاهرية. تعمل هذه الحزمة على دمج أدوات إدارة الأجهزة لواجهة نظام الكمبيوتر الصغير (SCSI) والذاكرة غير المتطايرة Express (NVMe) ومحول شبكة Microsoft Azure (MANA) وأجهزة Mellanox، مما يجعل تحديد القرص وإدارته أكثر موثوقية واتساقا عبر تكوينات الجهاز الظاهري المختلفة.

قواعد NVMe udev

تستخدم وحدات SKU الأحدث للأجهزة الظاهرية (VMs) على Azure واجهة NVMe لإدارة الأقراص. تقوم الأجهزة الظاهرية المزودة بواجهات NVMe بتفسير الأقراص وتقديمها بشكل مختلف عن الأجهزة الظاهرية التي تستخدم واجهات SCSI. لمعرفة التفاصيل، يرجى الاطلاع على تحويل SCSI إلى NVMe.

تدمج قواعد NVMe udev في هذه الحزمة الأدوات الهامة وقواعد udev لإنشاء ارتباطات رمزية مستقرة ويمكن التنبؤ بها لأقراص Azure. توفر هذه الحزمة طريقة سهلة وموثوقة لتحديد الأقراص ، مما يجعل الأتمتة واستكشاف الأخطاء وإصلاحها والإدارة أكثر بساطة.

يتضمن WALinuxAgent حاليا قواعد udev لتوفير العديد من الارتباطات الرمزية لأقراص SCSI:

  • /dev/disk/azure/resource
  • /dev/disk/azure/root
  • /dev/disk/azure/scsi0/lun<lun>
  • /dev/disk/azure/scsi1/lun<lun>

يتم توسيع القواعد الموجودة في WALinuxAgent باستخدام azure-vm-utils لإضافة دعم تعريف لأجهزة NVMe.

يتم توفير الارتباطات الرمزية التالية لجميع المثيلات التي تحتوي على أقراص NVMe:

  • /dev/disk/azure/data/by-lun/<lun>
  • /dev/disk/azure/local/by-serial/<serial>
  • /dev/disk/azure/os

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

  • /dev/disk/azure/local/by-index/<index>
  • /dev/disk/azure/local/by-name/<name>

التوافق مع SCSI

لضمان التوافق مع الإصدارات السابقة للأقراص التي تستخدم وحدات تحكم SCSI، يدعم azure-vm-utils الارتباطات التالية:

  • /dev/disk/azure/os
  • /dev/disk/azure/resource

إشعار

تأتي بعض أحجام الأجهزة الظاهرية مع كل من قرص NVMe المؤقت بالإضافة إلى قرص مؤقت SCSI.

دعم توزيع Linux

تتضمن التوزيعات والإصدارات التالية حاليا az-vm-utils في صور سوق Azure الرسمية:

Distribution Version
ف يدورا 42
كينفولك / فلاتكار 4152.2.3
Azure Linux 2.0
الكنسي / أوبونتو 22.04, 24.04, 25.04

التثبيت

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

تثبيت يدوي

بالنسبة للتوزيعات التي لا يتم فيها تثبيت azure-vm-utils مسبقا، قم بإنشائه وتثبيته يدويا:

# Clone the repository
git clone https://github.com/Azure/azure-vm-utils.git
cd azure-vm-utils

# Build the package
cmake .
make

# Install (requires root privileges)
sudo make install

الأدوات المساعدة

azure-nvme-id

تساعد الأداة azure-nvme-id المساعدة في تحديد أجهزة Azure NVMe وخصائصها. هذه الأداة مفيدة لاستكشاف الأخطاء وإصلاحها والبرمجة النصية.

لتشغيل الأداة المساعدة:

sudo azure-nvme-id

للتشغيل في وضع udev (عادة ما تستخدم قواعد udev):

DEVNAME=/dev/nvme0n1 azure-nvme-id --udev

بعد تثبيت azure-vm-utils، يمكنك استخدام الارتباطات الرمزية التي يمكن التنبؤ بها لعمليات القرص بدلا من الاعتماد على أسماء الأجهزة التي قد تتغير بين عمليات إعادة التشغيل.

Examples

سرد جميع الارتباطات الرمزية لقرص Azure:

find /dev/disk/azure/ -type l

الوصول إلى قرص نظام التشغيل:

ls -la /dev/disk/azure/os

الوصول إلى أقراص البيانات عن طريق LUN:

ls -la /dev/disk/azure/data/by-lun/

الوصول إلى أقراص NVMe المحلية حسب الرقم التسلسلي:

ls -la /dev/disk/azure/local/by-serial/

Verification

للتحقق من أن azure-vm-utils يعمل بشكل صحيح على الجهاز الظاهري:

  1. تحقق مما إذا كانت الحزمة مثبتة:

    # For RPM-based systems
    rpm -qa azure-vm-utils
    
    # For DEB-based systems
    dpkg -l azure-vm-utils
    
  2. تحقق من وجود قواعد udev:

    ls -al /usr/lib/udev/rules.d/10-azure-unmanaged-sriov.rules
    ls -al /usr/lib/udev/rules.d/80-azure-disk.rules
    
  3. تحقق من وجود ارتباطات رمزية لقرص Azure:

    find /dev/disk/azure -type l