Tutorial - إدارة أقراص Azure باستخدام Azure CLI

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

تستخدم آلات Azure الافتراضية (VMs) الأقراص لتخزين نظام التشغيل والتطبيقات والبيانات. عند إنشاء آلة افتراضية، من المهم اختيار حجم القرص وتكوين مناسب لحجم العمل المتوقع. هذا الدرس يوضح لك كيفية نشر وإدارة أقراص الأجهزة الافتراضية. يمكنك التعرف على:

  • أقراص نظام التشغيل والأقراص المؤقتة
  • أقراص البيانات
  • أنواع الأقراص وخيارات الأداء
  • أداء القرص
  • إرفاق أقراص البيانات وإعدادها
  • لقطات شاشة للأقراص

أقراص Azure الافتراضية

عند إنشاء آلة افتراضية في Azure، يتم ربط قرصين تلقائيا بالآلة الافتراضية.

قرص نظام التشغيل - يستضيف قرص نظام التشغيل نظام التشغيل (OS) نظام التشغيل ويمكن أن يصل إلى 4,095 جيبايت (GiB)، رغم أن العديد من أنظمة التشغيل مقسمة بسجلات الإقلاع الرئيسية (MBRs) بشكل افتراضي. يحد MBR من الحجم القابل للاستخدام إلى 2 تيرابايت. إذا كنت بحاجة إلى أكثر من 2 TiB، فقم بإنشاء أقراص بيانات وإرفاقها واستخدامها لتخزين البيانات. أسماء الأجهزة تختلف حسب جيل الجهاز الافتراضي ونوع وحدة التحكم في الأقراص، لذلك لا تعتمد على مسار ثابت مثل /dev/sda. تخزين الأقراص المؤقت في نظام التشغيل محسن لأداء نظام التشغيل، لذا لا تخزن بيانات التطبيق على قرص نظام التشغيل. استخدم أقراص البيانات للتطبيقات وتخزين البيانات.

Temporary disk - يستخدم التخزين المؤقت التخزين المحلي على نفس Azure المضيف مع الجهاز الافتراضي. اعتمادا على حجم وجيل الجهاز الافتراضي، قد يظهر هذا التخزين كقرص مؤقت أو قرص NVMe محلي. الأداء العالي، لكنه غير مستمر. إذا تم نقل الجهاز الافتراضي إلى مضيف جديد، يتم إزالة بيانات التخزين المؤقت. الحجم المتاح يعتمد على حجم الجهاز الافتراضي.

أقراص البيانات

لتثبيت التطبيقات وتخزين البيانات، يمكن إضافة أقراص بيانات إضافية. ينبغي استخدام أقراص بيانات في أي حالة حيث الرغبة في تخزين بيانات دائمة ومتجاوبة. يحدد حجم الجهاز الافتراضي عدد أقراص البيانات التي يمكن توصيلها بجهاز افتراضي.

أنواع أقراص الجهاز الظاهري

تقدم أقراص Azure المدارة خمسة أنواع من الأقراص:

بشكل عام، استخدم Premium SSD v2 أو Premium SSD لأعباء العمل الإنتاجية، وSSD Standard للتطوير/الاختبار والأحمال الأقل حساسية للأداء، وUltra Disks لأحمال البيانات المكثفة في الإدخال. أقراص Ultra وSSD Premium v2 هما خيارات لأقراص البيانات فقط ولا يمكن استخدامهما كأقراص نظام تشغيل. للحدود التفصيلية، وتوفر المناطق، وإرشادات الحجم، انظر Azure أنواع الأقراص المدارة.

إطلاق Azure Cloud Shell

Azure Cloud Shell هو واجهة تفاعلية مجانية يمكنك استخدامه لتشغيل الخطوات الموجودة في هذه المقالة. يحتوي على أدوات Azure الشائعة المثبتة مسبقًا والمهيئة للاستخدام مع حسابك.

لفتح Cloud Shell، اختر Try it من الزاوية العلوية اليمنى لكتلة الكود. يمكنك أيضا تشغيل Cloud Shell في تبويب متصفح منفصل على https://shell.azure.com. اختر Copy لنسخ كتلة الكود، ثم لصقها في Cloud Shell، ثم اضغط Enter لتشغيلها.

إنشاء الأقراص وإرفاقها

يمكن إنشاء وربط أقراص البيانات عند وقت إنشاء الجهاز الافتراضي أو بجهاز افتراضي موجود.

إرفاق القرص عند إنشاء الآلة الافتراضية

أنشئ مجموعة موارد باستخدام الأمر az group create.

az group create --name myResourceGroupDisk --location eastus

أنشئ آلة افتراضية باستخدام أمر az vm create . المثال التالي ينشئ آلة افتراضية باسم myVM، ويضيف حساب مستخدم باسم azureuser، ويولد مفاتيح SSH إذا لم تكن موجودة بالفعل. يحدد هذا --data-disk-sizes-gb الوسيط أقراص بيانات إضافية لإنشاء وإلحاق. لإنشاء وربط أكثر من قرص، استخدم قائمة محددة بمساحة لأحجام الأقراص. في المثال التالي، يتم إنشاء آلة افتراضية باستخدام قرصين للبيانات، كلاهما بسعة 128 جيجابايت. نظرا لأن حجم الأقراص هو 128 جيجابايت، فإن كلا الأقراص مهيأتان كأقراص P10، والتي توفر أقصى 500 IOPS لكل قرص.

az vm create \
  --resource-group myResourceGroupDisk \
  --name myVM \
  --image Ubuntu2204 \
  --size Standard_DS2_v2 \
  --admin-username azureuser \
  --generate-ssh-keys \
  --data-disk-sizes-gb 128 128

ربط القرص بالجهاز الافتراضي الحالي

لإنشاء وربط قرص جديد بجهاز افتراضي موجود، استخدم أمر az vm disk attachment . المثال التالي ينشئ قرصا مميزا بحجم 128 جيجابايت، ويربطه بالآلة الافتراضية التي تم إنشاؤها في الخطوة الأخيرة.

az vm disk attach \
    --resource-group myResourceGroupDisk \
    --vm-name myVM \
    --name myDataDisk \
    --size-gb 128 \
    --sku Premium_LRS \
    --new

تحضير أقراص البيانات

بمجرد توصيل قرص بالآلة الافتراضية، يحتاج نظام التشغيل إلى تكوين لاستخدام القرص. المثال التالي يوضح كيفية تكوين قرص يدويا. يمكن أيضا أتمتة هذه العملية باستخدام cloud-init، وهو ما يتم تغطيته في درس لاحق.

أنشئ اتصال SSH مع الآلة الافتراضية. استبدل عنوان IP النموذجي بعنوان IP العام للآلة الافتراضية.

ssh azureuser@10.101.10.10

قسم القرص باستخدام parted.

sudo parted /dev/sdc --script mklabel gpt mkpart xfspart xfs 0% 100%

اكتب نظام ملفات على القسم باستخدام mkfs الأمر. استخدمها partprobe لجعل نظام التشغيل على علم بالتغيير.

sudo mkfs.xfs /dev/sdc1
sudo partprobe /dev/sdc1

قم بتركيب القرص الجديد بحيث يكون متاحا في نظام التشغيل.

sudo mkdir /datadrive && sudo mount /dev/sdc1 /datadrive

يمكن الآن الوصول إلى القرص عبر /datadrive نقطة التركيب، والتي يمكن التحقق منها بتشغيل df -h الأمر.

df -h | grep -i "sd"

يظهر الإخراج القرص الجديد المثبت على /datadrive.

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        29G  2.0G   27G   7% /
/dev/sda15      105M  3.6M  101M   4% /boot/efi
/dev/sdb1        14G   41M   13G   1% /mnt
/dev/sdc1        50G   52M   47G   1% /datadrive

لضمان إعادة تركيب القرص بعد إعادة التشغيل، يجب إضافته إلى ملف /etc/fstab . للقيام بذلك، احصل على UUID للقرص مع الأداة blkid .

sudo -i blkid

في هذه الحالة، يعرض الإخراج معرف المستخدم المستخدم المستخدم داخل المحرك /dev/sdc1 (UUID).

/dev/sdc1: UUID="33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e" TYPE="xfs"

Note

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

افتح الملف /etc/fstab في محرر النصوص كما يلي:

sudo nano /etc/fstab

أضف سطرا مشابها للما يلي إلى ملف /etc/fstab ، واستبدل قيمة UUID بقيمة UUID الخاصة بك.

UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e   /datadrive  xfs    defaults,nofail   1  2

عندما تنتهي من تحرير الملف، استخدم Ctrl+O ذلك لكتابة الملف والخروج Ctrl+X من المحرر.

الآن بعد أن تم تكوين القرص، أغلق جلسة SSH.

exit

خذ لقطة قرصية

عندما تلتقط لقطة قرص، يقوم Azure بإنشاء نسخة للقراءة فقط في نقطة الزمن من القرص. لقطات ال AVM في Azure مفيدة لحفظ حالة الجهاز الافتراضي بسرعة قبل إجراء تغييرات في الإعدادات. في حال حدوث مشكلة أو خطأ، يمكنك استعادة جهاز افتراضي باستخدام لقطة (snapshot). عندما يكون لدى الجهاز الافتراضي أكثر من قرص، يتم أخذ لقطة لكل قرص بشكل مستقل. لأخذ نسخ احتياطية متوافقة مع التطبيق، فكر في إيقاف الجهاز الافتراضي قبل التقاط لقطات القرص. بدلا من ذلك، استخدم النسخ الاحتياطي في Azure، الذي يدعم النسخ الاحتياطي التلقائي أثناء تشغيل الجهاز الافتراضي.

إنشاء لقطة

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

osdiskid=$(az vm show \
   -g myResourceGroupDisk \
   -n myVM \
   --query "storageProfile.osDisk.managedDisk.id" \
   -o tsv)

الآن بعد أن حصلت على معرف، استخدم az snapshot create لإنشاء لقطة للقرص.

az snapshot create \
    --resource-group myResourceGroupDisk \
    --source "$osdiskid" \
    --name osDisk-backup

إنشاء قرص من لقطة

يمكن بعد ذلك تحويل هذه اللقطة إلى قرص باستخدام az disk create، والذي يمكن استخدامه لإعادة إنشاء الجهاز الافتراضي.

az disk create \
   --resource-group myResourceGroupDisk \
   --name mySnapshotDisk \
   --source osDisk-backup

استعادة الآلة الافتراضية من اللقطة

لإظهار استعادة الآلة الافتراضية، قم بحذف الآلة الافتراضية الموجودة باستخدام az vm delete.

az vm delete \
--resource-group myResourceGroupDisk \
--name myVM

أنشئ آلة افتراضية جديدة من قرص اللقطات.

az vm create \
    --resource-group myResourceGroupDisk \
    --name myVM \
    --attach-os-disk mySnapshotDisk \
    --os-type linux

إعادة توصيل قرص البيانات

جميع أقراص البيانات يجب إعادة توصيلها بالآلة الافتراضية.

ابحث عن اسم قرص البيانات باستخدام أمر قائمة الأقراص az . يضع هذا المثال اسم القرص في متغير يسمى datadisk، والذي يستخدم في الخطوة التالية.

datadisk=$(az disk list \
   -g myResourceGroupDisk \
   --query "[?contains(name,'myVM')].[id]" \
   -o tsv)

استخدم أمر az vm disk attach لتوصيل القرص.

az vm disk attach \
   --resource-group myResourceGroupDisk \
   --vm-name myVM \
   --name $datadisk

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

في هذا الدرس، تعلمت عن مواضيع أقراص الآلات الافتراضية مثل:

  • أقراص نظام التشغيل والأقراص المؤقتة
  • أقراص البيانات
  • أنواع الأقراص وخيارات الأداء
  • أداء القرص
  • إرفاق أقراص البيانات وإعدادها
  • لقطات شاشة للأقراص

تقدم إلى الدرس التالي لتتعلم كيفية أتمتة تكوين الأجهزة الافتراضية.