تصدير/نسخ قرص مدار إلى حساب تخزين باستخدام Azure CLI

يقوم هذا البرنامج النصي بتصدير VHD الأساسي لقرص مدار إلى حساب تخزين في نفس المنطقة أو منطقة مختلفة. يقوم أولا بإنشاء SAS URI للقرص المدار ثم يستخدمه لنسخ VHD إلى حساب تخزين. استخدم هذا البرنامج النصي لنسخ الأقراص المدارة إلى منطقة أخرى للتوسع الإقليمي. إذا كنت ترغب في نشر ملف VHD لقرص مدار في Azure Marketplace، فيمكنك استخدام هذا البرنامج النصي لنسخ ملف VHD إلى حساب تخزين ثم إنشاء عنوان SAS URI لمحرك VHD المنسوخ لنشره في Marketplace.

لتشغيل هذا النموذج، يرجى تثبيت أحدث إصدار من Azure CLI . للبدء، يرجى تشغيل az login لإنشاء اتصال مع Azure.

كُتبت نماذج Azure CLI للواجهة bash. لتشغيل هذا النموذج في Windows PowerShell أو موجه الأوامر، يلزم تغيير عناصر البرنامج النصي.

في حال لم يكن لديك اشتراك في Azure، قم بإنشاءحساب مجاني قبل البدء.

نموذج البرنامج النصي

# Verified per Raman Kumar as of 2/23/2022

# <FullScript>
#Provide the subscription Id where managed disk is created
subscriptionId="<subscriptionId>"

#Provide the name of your resource group where managed disk is created
resourceGroupName=myResourceGroupName

#Provide the managed disk name 
diskName=myDiskName

#Provide Shared Access Signature (SAS) expiry duration in seconds e.g. 3600.
#Know more about SAS here: https://docs.microsoft.com/en-us/azure/storage/storage-dotnet-shared-access-signature-part-1
sasExpiryDuration=3600

#Provide storage account name where you want to copy the underlying VHD file of the managed disk. 
storageAccountName=mystorageaccountname

#Name of the storage container where the downloaded VHD will be stored
storageContainerName=mystoragecontainername

#Provide the key of the storage account where you want to copy the VHD 
storageAccountKey=mystorageaccountkey

#Provide the name of the destination VHD file to which the VHD of the managed disk will be copied.
destinationVHDFileName=myvhdfilename.vhd

az account set --subscription $subscriptionId

sas=$(az disk grant-access --resource-group $resourceGroupName --name $diskName --duration-in-seconds $sasExpiryDuration --query [accessSas] -o tsv)

az storage blob copy start --destination-blob $destinationVHDFileName --destination-container $storageContainerName --account-name $storageAccountName --account-key $storageAccountKey --source-uri $sas
# </FullScript>

شرح البرنامج النصي

يستخدم هذا البرنامج النصي الأوامر التالية لإنشاء SAS URI لقرص مدار وينسخ VHD الأساسي إلى حساب تخزين باستخدام SAS URI. يرتبط كل أمر في الجدول بأمر وثائق معينة.

الأمر ملاحظات
az disk grant-access إنشاء SAS للقراءة فقط والذي يتم استخدامه لنسخ ملف VHD الأساسي إلى حساب تخزين أو تنزيله إلى محلي
az تخزين blob copy start نسخ نقطة بشكل غير متزامن من حساب تخزين إلى آخر

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

إنشاء قرص مدار من VHD

إنشاء جهاز ظاهري من قرص مدار

لمزيد من المعلومات عن Azure CLI، راجع وثائق Azure CLI.

يمكن العثور على عينات إضافية من البرنامج النصي CLI للأجهزة الظاهرية والأقراص المدارة في وثائق Azure Linux VM.