توفير جهاز ظاهري Linux باستخدام Azure CLI

مكتمل

يمكنك تثبيت Azure CLI محليا على أنظمة تشغيل Linux وmacOS وWindows. تعتمد تفاصيل التثبيت على نظام التشغيل وفي حالة Linux، أيضا على التوزيع.

إشعار

لمزيد من المعلومات حول خيارات تثبيت Linux، راجع تثبيت Azure CLI على Linux.

لاستخدام Azure CLI بشكل تفاعلي، قم بتشغيل shell متوفر داخل نظام التشغيل الخاص بك، مثل cmd.exe في Windows، أو Bash في Linux أو macOS، ثم قم بإصدار أمر في موجه الأوامر. لأتمتة المهام المتكررة، قم بتجميع أوامر CLI في برنامج نصي shell باستخدام بناء جملة البرنامج النصي shell الذي اخترته، ثم قم بتشغيل البرنامج النصي.

إذا كنت ترغب في تجنب تثبيت Azure CLI، يمكنك استخدام Azure Cloud Shell. Azure Cloud Shell هي واجهة تفاعلية مصادق عليها يمكنك استخدامها لإدارة موارد Azure من مستعرض ويب. يمكن ل Azure Cloud Shell تشغيل Bash وAzure PowerShell، ويحتوي على الإصدار الحالي من Azure CLI المثبت مسبقا بالفعل. للوصول إلى Azure Cloud Shell، افتح رابط Azure Cloud Shell في مستعرض ويب أو قم بتشغيله من مدخل Microsoft Azure عن طريق تحديد أيقونة Azure Cloud Shell بجوار مربع نص البحث العام.

Screenshot showing the Azure Cloud Shell icon in the Azure portal.

يوفر Azure Cloud Shell فائدة المصادقة المضمنة، والتي تستخدم بيانات الاعتماد التي تقدمها عند الوصول إلى اشتراك Azure الخاص بك من مستعرض الويب الخاص بك. هذا يلغي الحاجة إلى تشغيل az login الأمر في بداية كل جلسة عمل، وهو أمر مطلوب عند تشغيل Azure CLI محليا.

توزيع جهاز Linux الظاهري باستخدام Azure CLI

تتضمن عملية توفير جهاز Azure الظاهري الذي يعمل بنظام Linux باستخدام Azure CLI عادة التسلسل التالي من الخطوات عالية المستوى:

  • تحديد صورة جهاز ظاهري مناسبة.
  • تحديد حجم الجهاز الظاهري المناسب.
  • قم بإنشاء مجموعة موارد.
  • إنشاء شبكة ظاهرية وتكوينها.
  • إنشاء جهاز Azure الظاهري.

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

إشعار

للحصول على معلومات حول تنفيذ الشبكات الظاهرية باستخدام Azure CLI، راجع التشغيل السريع: استخدام Azure CLI لإنشاء شبكة ظاهرية.

تحديد صورة الجهاز الظاهري المناسبة

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

لسرد مناطق Azure المتوفرة في اشتراكك، قم بتشغيل الأمر التالي من جلسة عمل Bash في جزء Azure Cloud Shell:

az account list-locations --output table

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

لتحديد الصورة المناسبة، ستحتاج إلى تحديد الناشر والعرض وsku. لتضييق قائمة الخيارات المتوفرة، قم بإدراج الناشرين غير التابعين ل Microsoft للمنطقة التي حددتها سابقا عن طريق تشغيل الأمر التالي:

az vm image list-publishers --location eastus --query [].name --output tsv | grep -v "Microsoft" | more

إشعار

القائمة واسعة جدا، لذلك يجب عليك التأكد من تقييد الإخراج إلى المخزن المؤقت لجلسة العمل المتوفرة.

افترض أنك اخترت Canonical. بعد ذلك، حدد العروض المتوفرة من هذا الناشر عن طريق تشغيل الأمر التالي:

az vm image list-offers --location eastus --publisher Canonical --query [].name --output tsv

افترض أنك اخترت 0001-com-ubuntu-server-jammy. بعد ذلك، قم بتشغيل الأمر التالي لتحديد وحدات SKU المتوفرة مع هذا العرض عن طريق تشغيل الأمر التالي:

az vm image list-skus --location eastus --publisher Canonical --offer 0001-com-ubuntu-server-focal --query [].name --output tsv

إشعار

قام Canonical مؤخرا بتغيير أسماء العروض. قبل Ubuntu 20.04، كان UbuntuServerاسم العرض . بالنسبة إلى Ubuntu 20.04، يكون اسم العرض هو 0001-com-ubuntu-server-focal، وبالنسبة إلى Ubuntu 22.04، فهو 0001-com-ubuntu-server-jammy.

لنشر Azure VM باستخدام صورة معينة، تحتاج إلى تحديد قيمة الخاصية الخاصة به Urn . تتكون هذه القيمة من الناشر والعرض وSKU ورقم الإصدار اختياريا الذي يعرف الصورة بشكل فريد. يمكنك أيضا تعيين رقم الإصدار إلى الأحدث، والذي يعين أحدث إصدار من التوزيع. لعرض قيمة الخاصية Urn لكافة صور Ubuntu 22_04-lts في منطقة شرق الولايات المتحدة، قم بتشغيل الأمر التالي:

az vm image list --location eastus --publisher Canonical --offer 0001-com-ubuntu-server-jammy --sku 22_04-lts --all --output table

إشعار

يمكنك استخدام الخاصية UrnAlias لنهج أبسط (على الرغم من أنه أقل مرونة) لتعيين صورة لاستخدامها أثناء النشر. تتوفر هذه الخاصية بسهولة للصور الأكثر شيوعا، ويمكنك استرداد قيمها عن طريق تشغيل az vm image list --output table الأمر Azure CLI. على سبيل المثال، UrnAliasUbuntu2204 يتوافق مع الصورة Canonical:0001-com-ubuntu-server-jammy:22_04-lts-gen2:latest.

تحديد حجم الجهاز الظاهري المناسب

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

az vm list-sizes --location eastus --output table

حدد حجم الجهاز الظاهري المناسب لتوزيع العينة من القائمة ولاحظ القيمة في عمود الاسم. ستحتاج إلى إدخال الاسم بالتنسيق المتطابق عند تشغيل أمر Azure CLI الذي يبدأ توفير Azure VM. افترض أنك اخترت Standard_F4s.

هام

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

إنشاء مجموعة موارد

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

az group create --name rg_lnx-cli --location eastus

يجب أن يشبه إخراج الأمر المثال التالي:

{
  "id": "/subscriptions/fd7edadd-187f-41dd-a5df-f80bad63c167/resourceGroups/sample-RG",
  "location": "eastus",
  "managedBy": null,
  "name": "rg_lnx-cli",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null,
  "type": "Microsoft.Resources/resourceGroups"
}

إنشاء جهاز Azure ظاهري

لإنشاء جهاز ظاهري، استخدم az vm create الأمر . يدعم هذا الأمر مجموعة واسعة من المعلمات، بما في ذلك صورة نظام التشغيل وحجم القرص وبيانات الاعتماد الإدارية. في المثال التالي، az vm create يقوم الأمر بتشغيل نشر Azure VM المسمى sample-cli-vm0، والذي يستضيف أحدث إصدار Ubuntu 22_04-lts-gen2 SKU. تقوم عملية التوفير بتكوين حساب مستخدم إداري يسمى azureuser مع المصادقة استنادا إلى زوج مفاتيح SSH. يتم إنشاء المفتاح الخاص والعام وتخزينه محليا في موقعه الافتراضي (~/.ssh) للسماح بوصول SSH إلى جهاز Azure الظاهري. استخدم مثال التعليمات البرمجية التالي لإنشاء Azure VM:

az vm create \
    --resource-group rg_lnx-cli \
    --name lnx-cli-vm \
    --image Canonical:0001-com-ubuntu-server-jammy:22_04-lts-gen2:latest \
    --size Standard_F4s \
    --admin-username azureuser \
    --generate-ssh-keys

إشعار

المعلمة --size اختيارية. إذا قررت استبعاده، فسيعتمد الحجم الناتج على الصورة التي اخترتها.

سيبدأ تشغيل Azure VM بعد ذلك بوقت قصير، وعادة في غضون بضع دقائق. سيتضمن إخراج أمر Azure CLI معلومات بتنسيق JSON حول Azure VM المنشور حديثا:

{
  "fqdns": "",
  "id": "/subscriptions/fd7edadd-187f-0000-0000-000000000000/resourceGroups/rg_lnx-cli/providers/Microsoft.Compute/virtualMachines/lnx-cli-vm",
  "location": "eastus",
  "macAddress": "00-0D-3A-8C-C6-AE",
  "powerState": "VM running",
  "privateIpAddress": "10.0.0.4",
  "publicIpAddress": "20.51.149.212",
  "resourceGroup": "rg_lnx-cli",
  "zones": ""
}

عند هذه النقطة، ستتمكن من الاتصال بجهاز Azure الظاهري عن طريق تشغيل الأمر التالي (بعد استبدال <العنصر النائب public_ip_address> بعنوان IP الذي حددته في الإخراج الذي تم إنشاؤه بواسطة Azure CLI) من الكمبيوتر حيث يتم تخزين المفتاح الخاص:

ssh azureuser@<public_ip_address>