Start-AzureStorageBlobCopy не может скопировать VHD - PullRequest
0 голосов
/ 10 сентября 2018

Вот код:

$sas = Grant-AzureRmDiskAccess -ResourceGroupName $diskResourceGroup -DiskName $diskName -DurationInSecond 3600 -Access Read

$storageAccountKey = (Get-AzureRmStorageAccountKey -Name $storageAccount -ResourceGroupName $storageAccountResourceGroup)[0].Value
$destContext = New-AzureStorageContext -StorageAccountName $storageAccount -StorageAccountKey  $storageAccountKey

$checkContainer = Get-AzureStorageContainer -prefix $blobContainerName -Context $destContext

Start-AzureStorageBlobCopy -AbsoluteUri $sas.AccessSAS -DestContainer $blobContainerName -DestContext $destContext -DestBlob $blobName -Force
Get-AzureStorageBlobCopyState -Container $blobContainerName -Blob $blobName -Context $destContext -WaitForComplete

Я копирую диск данных объемом 256 ГБ в блоб для упражнений по аварийному восстановлению, и он завершается неудачно со следующим журналом:

[18:44:22][Step 7/12] Start Copy of VM to storage [18:44:23][Step 7/12] [18:44:23][Step 7/12] ICloudBlob : Microsoft.WindowsAzure.Storage.Blob.CloudPageBlob [18:44:23][Step 7/12] BlobType : PageBlob [18:44:23][Step 7/12] Length : -1 [18:44:23][Step 7/12] ContentType : [18:44:23][Step 7/12] LastModified : 9/8/2018 10:44:22 PM +00:00 [18:44:23][Step 7/12] SnapshotTime : [18:44:23][Step 7/12] ContinuationToken : [18:44:23][Step 7/12] Context : Microsoft.WindowsAzure.Commands.Storage.AzureStorageContext [18:44:23][Step 7/12] Name : some-data-disk.vhd [18:44:23][Step 7/12] [19:43:50][Step 7/12] [19:43:50][Step 7/12] CopyId : 36d3af59-ce10-4e7c-9b98-cb7ab50d1bb7 [19:43:50][Step 7/12] CompletionTime : 9/8/2018 11:43:49 PM +00:00 [19:43:50][Step 7/12] Status : Failed [19:43:50][Step 7/12] Source : https://md-zdj0tc3ldgbq.blob.core.windows.net/px2lhh4 [19:43:50][Step 7/12] e75-b63db649096c&sig=NsbVUO5+LQoUnIvCFMKJcKYSJ9DlI7m/ [19:43:50][Step 7/12] BytesCopied : 75310645760 [19:43:50][Step 7/12] TotalBytes : 274877907456 [19:43:50][Step 7/12] StatusDescription : 403 AuthenticationFailed "Copy failed when reading [19:43:50][Step 7/12] the source."

Создает 0-байтовый двоичный объект, который нельзя использовать.Это раньше работало.У кого-нибудь есть понимание этой ошибки.Разве я не должен этим заниматься?Есть ли способ лучше?Спасибо!

Ответы [ 2 ]

0 голосов
/ 19 октября 2018

Я полагаю, что загрузка не удалась из-за того, что файл доступен только в течение 3600 секунд:
$sas = Grant-AzureRmDiskAccess -ResourceGroupName $diskResourceGroup -DiskName $diskName -DurationInSecond 3600 -Access Read

Изменение времени, в течение которого файл доступен для чтения, должно решить вашу проблему.

0 голосов
/ 12 сентября 2018

Но в зависимости от объема резервной копии данных этот сценарий должен занять 4 часа для резервного копирования моего диска. Есть ли лучший / более быстрый метод?

В этом случае вы можете попытаться использовать Azcopy для копирования больших двоичных объектов в хранилище BLOB-объектов. Для очень больших объемов данных вы также можете Импорт / экспорт Azure .

FAQ по перемещению данных в официальном документе:

Можно ли переносить виртуальные жесткие диски из одного региона в другой без копирования?

...