我使用Azure CLI创建空的Azure磁盘,然后将数据上传到该磁盘。我的脚本如下
#create disk and enable upload
az disk create -g MyResourceGroup05 -n MyDisk --size-gb 10 --for-upload true
#grant write access for the disk and sas url
az disk create -g MyResourceGroup05 -n MyDisk --duration-in-seconds 3600 --access-level write
# get the required information from sas url
account=""
con=""
blob=""
sastoken=""
#upload
az storage blob upload \
--account-name $account \
--container-name $con \
--name $blob \
--sas-token $sastoken \
--file c:\test.vhd
运行命令az storage blob upload
时出现错误
<Error><Code>ApiNotSupportedForAccount</Code><Message>This API is not supported for the account
根据我的研究,如果要将本地VHD文件上传到Azure托管磁盘,则可以使用AzCopy V10来实现它。有关更多详细信息,请参阅document
az disk create -n mydiskname -g resourcegroupname -l westus2 --for-upload --upload-size-bytes 34359738880 --sku premium_LRS
az disk grant-access -n mydiskname -g resourcegroupname --access-level Write --duration-in-seconds 86400
AzCopy.exe copy "c:\test.vhd" "sas-URI" --blob-type PageBlob
az disk revoke-access -n mydiskname -g resourcegroupname