تصدير/نسخ اللقطات المدارة إلى حساب تخزين في منطقة مختلفة باستخدام CLI
يقوم هذا البرنامج النصي بتصدير لقطة مدارة إلى حساب تخزين في منطقة مختلفة. يقوم أولاً بإنشاء معرف موارد منتظم (URI) SAS لللقطة ثم يستخدمه لنسخه إلى حساب تخزين في منطقة مختلفة. استخدم هذا البرنامج النصي للحفاظ على النسخ الاحتياطي للأقراص المدارة في مناطق مختلفة للتعافي من الكوارث.
إذا لم يكن لديك اشتراك في Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.
المتطلبات الأساسية
استخدم بيئة Bash في Azure Cloud Shell. لمزيد من المعلومات، راجع التشغيل السريع ل Bash في Azure Cloud Shell.
إذا كنت تفضل تشغيل أوامر مرجع CLI محلياً قم بتثبيت CLI Azure. إذا كنت تعمل على نظام تشغيل Windows أو macOS، ففكر في تشغيل Azure CLI في حاوية Docker. لمزيد من المعلومات، راجع كيفية تشغيل Azure CLI في حاوية Docker.
إذا كنت تستخدم تثبيت محلي، يُرجى تسجيل الدخول إلى Azure CLI مستخدمًا أمر az login. لإنهاء عملية المصادقة، اتبع الخطوات المعروضة في جهازك. للحصول على خيارات أخرى لتسجيل دخول، راجع تسجيل الدخول باستخدام Azure CLI.
عندما يُطلب منك، قم بتثبيت ملحق Azure CLI عند الاستخدام لأول مرة. لمزيد من المعلومات بشأن الامتدادات، راجع استخدام امتدادات مع Azure CLI.
يُرجى تشغيل إصدار az للوصول إلى الإصدار والمكتبات التابعة التي تم تثبيتها. للتحديث لآخر إصدار، يُرجى تشغيل تحديث az.
نموذج البرنامج النصي
إطلاق Azure Cloud Shell
Azure Cloud Shell هو shell تفاعلية مجانية التي يمكنك استخدامها لتشغيل الخطوات في هذه المقالة. يحتوي على أدوات Azure الشائعة المثبتة مسبقًا والمهيئة للاستخدام مع حسابك.
لفتح Cloud Shell، ما عليك سوى تحديد جربه من الزاوية اليمنى العليا من مجموعة التعليمات البرمجية. يمكنك أيضًا تشغيل Cloud Shell في علامة تبويب مستعرض منفصلة بالانتقال إلى https://shell.azure.com.
عند فتح Cloud Shell، تحقق من تحديد Bash لبيئتك. ستستخدم الجلسات اللاحقة Azure CLI في بيئة Bash، حدد نسخ لنسخ كتل التعليمات البرمجية، وألصقها في Cloud Shell، واضغط على Enter لتشغيلها.
تسجيل الدخول إلى Azure
يُصادق Cloud Shell تلقائياً بموجب الحساب الأولي الذي سُجل الدخول به. استخدم البرنامج النصي التالي لتسجيل الدخول باستخدام اشتراك مختلف، واستبدال subscriptionId بمعرف اشتراك Azure الخاص بك.
إذا لم يكن لديك اشتراك في Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.
subscription="subscriptionId" # Set Azure subscription ID here
az account set -s $subscription # ...or use 'az login'
لمزيد من المعلومات، راجع تعيين الاشتراك النشط أو تسجيل الدخول بشكل تفاعلي.
تشغيل البرنامج النصي
#Provide the subscription Id where snapshot is created
subscriptionId="<subscriptionId>"
#Provide the name of your resource group where snapshot is created
resourceGroupName=myResourceGroupName
#Provide the snapshot name
snapshotName=mySnapshotName
#Provide Shared Access Signature (SAS) expiry duration in seconds e.g. 3600.
#Know more about SAS here: https://docs.microsoft.com/azure/storage/storage-dotnet-shared-access-signature-part-1
sasExpiryDuration=3600
#Provide storage account name where you want to copy the snapshot.
storageAccountName=mystorageaccountname
#Name of the storage container where the downloaded snapshot will be stored
storageContainerName=mystoragecontainername
#Provide the key of the storage account where you want to copy snapshot.
storageAccountKey=mystorageaccountkey
#Provide the name of the VHD file to which snapshot will be copied.
destinationVHDFileName=myvhdfilename
az account set --subscription $subscriptionId
sas=$(az snapshot grant-access --resource-group $resourceGroupName --name $snapshotName --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
تنظيف الموارد
قم بتشغيل الأمر التالي لإزالة مجموعة الموارد، VM، وجميع الموارد ذات الصلة.
az group delete --name myResourceGroupName
نموذج مرجع
يستخدم هذا البرنامج النصي الأوامر التالية لإنشاء SAS URI للقطة مدارة وينسخ اللقطة إلى حساب تخزين باستخدام SAS URI. يرتبط كل أمر في الجدول بأمر وثائق معينة.
الأمر | ملاحظات |
---|---|
az snapshot grant-access | ينشئ SAS للقراءة فقط والذي يتم استخدامه لنسخ ملف VHD الأساسي إلى حساب تخزين أو تنزيله إلى موقع محلي |
az storage blob copy start | نسخ كائن ثنائي كبير الحجم بشكل غير متزامن من أحد حسابات التخزين إلى آخر |
الخطوات التالية
لمزيد من المعلومات عن Azure CLI، راجع وثائق Azure CLI.
يمكن العثور على نماذج إضافية من برنامج CLI النصي للأجهزة الظاهرية والأقراص المُدارة الموجودة في وثائق Azure Linux VM.