استخدام صورة Azure Marketplace لإنشاء صورة جهاز ظاهري لوحدة معالجة الرسومات Azure Stack Edge Pro

تنبيه

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

ينطبق على: نعم ل Pro GPU SKUAzure Stack Edge Pro - GPUنعم ل Pro 2 SKUAzure Stack Edge Pro 2نعم ل Pro R SKUAzure Stack Edge Pro Rنعم ل Mini R SKUAzure Stack Edge Mini R

لنشر الأجهزة الظاهرية على جهاز Azure Stack Edge Pro GPU، تحتاج إلى إنشاء صورة جهاز ظاهري يمكنك استخدامها لإنشاء أجهزة ظاهرية. توضح هذه المقالة الخطوات المطلوبة لإنشاء صورة جهاز ظاهري بدءا من صورة Azure Marketplace. يمكنك بعد ذلك استخدام صورة الجهاز الظاهري هذه لنشر الأجهزة الظاهرية على جهاز Azure Stack Edge Pro GPU.

سير عمل صورة الجهاز الظاهري

تصف الخطوات التالية سير عمل صورة الجهاز الظاهري باستخدام سير عمل Azure Marketplace:

  1. الاتصال ب Azure Cloud Shell أو عميل مع تثبيت Azure CLI.
  2. ابحث في Azure Marketplace وحدد الصورة المفضلة لديك.
  3. إنشاء قرص مدار جديد من صورة Marketplace.
  4. تصدير VHD من القرص المدار إلى حساب Azure Storage.
  5. تنظيف القرص المدار.

لمزيد من المعلومات، انتقل إلى نشر جهاز ظاهري على جهاز Azure Stack Edge Pro باستخدام Azure PowerShell.

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

قبل أن تتمكن من استخدام صور Azure Marketplace ل Azure Stack Edge، تأكد من اتصالك ب Azure بأي من الطرق التالية.

البحث عن صور Azure Marketplace

حدد صورة Azure Marketplace معينة ترغب في استخدامها. يستضيف Azure Marketplace الآلاف من صور الجهاز الظاهري.

للعثور على بعض صور Marketplace الأكثر استخداما التي تطابق معايير البحث، قم بتشغيل الأمر التالي.

az vm image list --all [--publisher <Publisher>] [--offer <Offer>] [--sku <SKU>]

تعد العلامات الثلاث الأخيرة اختيارية ولكن باستثناءها ترجع قائمة طويلة.

بعض أمثلة الاستعلامات هي:

#Returns all images of type "Windows Server"
az vm image list --all --publisher "MicrosoftWindowsserver" --offer "WindowsServer"

#Returns all Windows Server 2019 Datacenter images from West US published by Microsoft
az vm image list --all --location "westus" --publisher "MicrosoftWindowsserver" --offer "WindowsServer" --sku "2019-Datacenter"

#Returns all VM images from a publisher
az vm image list --all --publisher "Canonical"

فيما يلي مثال على الإخراج عند الاستعلام عن صور VM لناشر معين وعرض وSKU.

PS /home/user> az vm image list --all --publisher "Canonical" --offer "UbuntuServer" --sku "12.04.4-LTS"
[
  {
    "offer": "UbuntuServer",
    "publisher": "Canonical",
    "sku": "12.04.4-LTS",
    "urn": "Canonical:UbuntuServer:12.04.4-LTS:12.04.201402270",
    "version": "12.04.201402270"
  },
  {
    "offer": "UbuntuServer",
    "publisher": "Canonical",
    "sku": "12.04.4-LTS",
    "urn": "Canonical:UbuntuServer:12.04.4-LTS:12.04.201404080",
    "version": "12.04.201404080"
  },
  {
    "offer": "UbuntuServer",
    "publisher": "Canonical",
    "sku": "12.04.4-LTS",
    "urn": "Canonical:UbuntuServer:12.04.4-LTS:12.04.201404280",
    "version": "12.04.201404280"
  },
  {
    "offer": "UbuntuServer",
    "publisher": "Canonical",
    "sku": "12.04.4-LTS",
    "urn": "Canonical:UbuntuServer:12.04.4-LTS:12.04.201405140",
    "version": "12.04.201405140"
  },
  {
    "offer": "UbuntuServer",
    "publisher": "Canonical",
    "sku": "12.04.4-LTS",
    "urn": "Canonical:UbuntuServer:12.04.4-LTS:12.04.201406060",
    "version": "12.04.201406060"
  },
  {
    "offer": "UbuntuServer",
    "publisher": "Canonical",
    "sku": "12.04.4-LTS",
    "urn": "Canonical:UbuntuServer:12.04.4-LTS:12.04.201406190",
    "version": "12.04.201406190"
  },
  {
    "offer": "UbuntuServer",
    "publisher": "Canonical",
    "sku": "12.04.4-LTS",
    "urn": "Canonical:UbuntuServer:12.04.4-LTS:12.04.201407020",
    "version": "12.04.201407020"
  },
  {
    "offer": "UbuntuServer",
    "publisher": "Canonical",
    "sku": "12.04.4-LTS",
    "urn": "Canonical:UbuntuServer:12.04.4-LTS:12.04.201407170",
    "version": "12.04.201407170"
  }
]
PS /home/user>

في هذا المثال، سنحدد Windows Server 2019 Datacenter Core، الإصدار 2019.0.20190410. سنحدد هذه الصورة من خلال رقم المورد العالمي ("URN").

قائمة صور السوق

صور Marketplace شائعة الاستخدام

فيما يلي قائمة بعناوين URL لبعض الصور الأكثر استخداما. إذا كنت تريد فقط أحدث إصدار من نظام تشغيل معين، يمكن استبدال رقم الإصدار ب "الأحدث" في URN. على سبيل المثال، "MicrosoftWindowsServer:WindowsServer:2019-Datacenter:Latest".

نظام التشغيل وحدة حفظ المخزون SKU إصدار URN
Windows Server مركز بيانات 2019 17763.1879.2104091832 MicrosoftWindowsServer:WindowsServer:2019-Datacenter:17763.1879.2104091832
Windows Server مركز بيانات 2019 (قرص صغير بسعة 30 غيغابايت) 17763.1879.2104091832 MicrosoftWindowsServer:WindowsServer:2019-Datacenter-smalldisk:17763.1879.2104091832
Windows Server 2019 Datacenter Core 17763.1879.2104091832 MicrosoftWindowsServer:WindowsServer:2019-Datacenter-Core:17763.1879.2104091832
Windows Server 2019 Datacenter Core (قرص صغير بسعة 30 غيغابايت) 17763.1879.2104091832 MicrosoftWindowsServer:WindowsServer:2019-Datacenter-Core-smalldisk:17763.1879.2104091832
تطبيق لسطح المكتب لـ Windows Windows 10 20H2 Pro 19042.928.2104091209 MicrosoftWindowsDesktop:Windows-10:20h2-pro:19042.928.2104091209
Ubuntu Server Canonical Ubuntu Server 18.04 LTS 18.04.202002180 Canonical:UbuntuServer:18.04-LTS:18.04.202002180
Ubuntu Server Canonical Ubuntu Server 16.04 LTS 16.04.202104160 Canonical:UbuntuServer:16.04-LTS:16.04.202104160

إنشاء قرص مدار جديد من صورة Marketplace

إنشاء قرص مدار من Azure من صورة Marketplace التي اخترتها.

  1. تعيين بعض المعلمات.

    $urn = <URN of the Marketplace image> #Example: “MicrosoftWindowsServer:WindowsServer:2019-Datacenter:Latest”
    $diskName = <disk name> #Name for new disk to be created
    $diskRG = <resource group> #Resource group that contains the new disk
    
  2. إنشاء القرص وإنشاء عنوان URL للوصول إلى SAS.

    az disk create -g $diskRG -n $diskName --image-reference $urn
    $sas = az disk grant-access --duration-in-seconds 36000 --access-level Read --name $diskName --resource-group $diskRG
    $diskAccessSAS = ($sas | ConvertFrom-Json)[0].accessSas
    

فيما يلي مثال على ذلك:

PS /home/user> $urn = “MicrosoftWindowsServer:WindowsServer:2019-Datacenter:Latest”
PS /home/user> $diskName = "newmanageddisk1"
PS /home/user> $diskRG = "newrgmd1"
PS /home/user> az disk create -g $diskRG -n $diskName --image-reference $urn
{
  "burstingEnabled": null,
  "creationData": {
    "createOption": "FromImage",
    "galleryImageReference": null,
    "imageReference": {
      "id": "/Subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/Providers/Microsoft.Compute/Locations/eastus/Publishers/MicrosoftWindowsServer/ArtifactTypes/VMImage/Offers/WindowsServer/Skus/2019-Datacenter/Versions/17763.1935.2105080716",
      "lun": null
    },
    "logicalSectorSize": null,
    "sourceResourceId": null,
    "sourceUniqueId": null,
    "sourceUri": null,
    "storageAccountId": null,
    "uploadSizeBytes": null
  },
  "diskAccessId": null,
  "diskIopsReadOnly": null,
  "diskIopsReadWrite": 500,
  "diskMBpsReadOnly": null,
  "diskMBpsReadWrite": 100,
  "diskSizeBytes": 136367308800,
  "diskSizeGb": 127,
  "diskState": "Unattached",
  "encryption": {
    "diskEncryptionSetId": null,
    "type": "EncryptionAtRestWithPlatformKey"
  },
  "encryptionSettingsCollection": null,
  "extendedLocation": null,
  "hyperVGeneration": "V1",
  "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/newrgmd1/providers/Microsoft.Compute/disks/NewManagedDisk1",
  "location": "eastus",
  "managedBy": null,
  "managedByExtended": null,
  "maxShares": null,
  "name": "NewManagedDisk1",
  "networkAccessPolicy": "AllowAll",
  "osType": "Windows",
  "propertyUpdatesInProgress": null,
  "provisioningState": "Succeeded",
  "purchasePlan": null,
  "resourceGroup": "newrgmd1",
  "securityProfile": null,
  "shareInfo": null,
  "sku": {
    "name": "Premium_LRS",
    "tier": "Premium"
  },
  "supportsHibernation": null,
  "tags": {},
  "tier": "P10",
  "timeCreated": "2021-06-08T00:39:34.205982+00:00",
  "type": "Microsoft.Compute/disks",
  "uniqueId": "1a649ad4-3b95-471e-89ef-1d2ed1f51525",
  "zones": null
}

PS /home/user> $sas = az disk grant-access --duration-in-seconds 36000 --access-level Read --name $diskName --resource-group $diskRG
PS /home/user>  $diskAccessSAS = ($sas | ConvertFrom-Json)[0].accessSas
PS /home/user>

تصدير VHD من القرص المدار إلى Azure Storage

تقوم هذه الخطوة بتصدير VHD من القرص المدار إلى حساب تخزين Azure blob المفضل لديك. يمكن بعد ذلك استخدام VHD هذا لإنشاء صور VM على Azure Stack Edge.

  1. تعيين حساب التخزين الوجهة حيث يتم نسخ VHD.

    $storageAccountName = <destination storage account name>
    $containerName = <destination container name>
    $destBlobName = <blobname.vhd> #Blob that will be created, including .vhd extension
    $storageAccountKey = <storage account key>
    
  2. انسخ VHD إلى حساب التخزين الوجهة.

    $destContext = New-AzureStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountKey
    Start-AzureStorageBlobCopy -AbsoluteUri $diskAccessSAS -DestContainer $containerName -DestContext $destContext -DestBlob $destBlobName
    

    تستغرق نسخة VHD عدة دقائق لإكمالها. تأكد من اكتمال النسخة قبل المتابعة عن طريق تشغيل الأمر التالي. يعرض حقل الحالة "نجاح" عند اكتماله.

    Get-AzureStorageBlobCopyState –Container $containerName –Context $destContext -Blob $destBlobName
    

فيما يلي مثال على ذلك:

PS /home/user> $storageAccountName = "edgeazurevmeus"
PS /home/user> $containerName = "azurevmmp"
PS /home/user> $destBlobName = "newblobmp.vhd"
PS /home/user> $storageAccountKey = "n9sCytWLdTBz0F4Sco9SkPGWp6BJBtf7BJBk79msf1PfxJGQdqSfu6TboZWZ10xyZdc4y+Att08cC9B79jB0YA=="

PS /home/user> $destContext = New-AzureStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountKey
PS /home/user> Start-AzureStorageBlobCopy -AbsoluteUri $diskAccessSAS -DestContainer $containerName -DestContext $destContext -DestBlob $destBlobName

   AccountName: edgeazurevmeus, ContainerName: azurevmmp

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------
newblobmp.vhd        PageBlob  -1                                             2021-06-08 00:50:10Z                                         False

PS /home/user> Get-AzureStorageBlobCopyState –Container $containerName –Context $destContext -Blob $destBlobName

CopyId                  : 24a1e3f5-886a-490d-9dd7-562bb4acff58
CompletionTime          :
Status                  : Pending
Source                  : https://md-lfn221fppr2c.blob.core.windows.net/d4tb2hp5ff2q/abcd?sv=2018-03-28&sr=b&si=4f588db1-9aac-44d9-9607-35497cc08a7f
BytesCopied             : 696254464
TotalBytes              : 136367309312
StatusDescription       :
DestinationSnapshotTime :

PS /home/user> Get-AzureStorageBlobCopyState –Container $containerName –Context $destContext -Blob $destBlobName

CopyId                  : 24a1e3f5-886a-490d-9dd7-562bb4acff58
CompletionTime          : 6/8/2021 12:57:26 AM +00:00
Status                  : Success
Source                  : https://md-lfn221fppr2c.blob.core.windows.net/d4tb2hp5ff2q/abcd?sv=2018-03-28&sr=b&si=4f588db1-9aac-44d9-9607-35497cc08a7f
BytesCopied             : 136367309312
TotalBytes              : 136367309312
StatusDescription       :
DestinationSnapshotTime :

نظف القرص المُدار

لحذف القرص المدار الذي أنشأته، اتبع الخطوات التالية:

az disk revoke-access --name $diskName --resource-group $diskRG
az disk delete --name $diskName --resource-group $diskRG --yes

يستغرق الحذف بضع دقائق لإكماله.

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

نشر الأجهزة الظاهرية على جهاز Azure Stack Edge Pro GPU.