2016-08-06 2 views
0

КОНТЕКСТРаздача большой файл N виртуальных машин с AzCopy

Моя цель состоит в том, чтобы обновить 20 Dev среды со свежими базами данных, и сделать это максимально быстро и надежно, насколько это возможно. Мы генерируем BAK, бросаем его в хранилище файлов, а затем пытаемся (плохо) довести его до всех ящиков, прежде чем я удалю триггер для запуска старого/монтирования нового во всех ящиках.

ПОПЫТКА

Сейчас я следующий как Powershell Workflow:

Write-Output "Beginning workflow." 
foreach -parallel ($dir in $destinations) 
{ 
    $targetFile = "$dir\$sourcePattern" 
    Write-Output "Checking: $targetFile" 
    InlineScript{ 
     $fileExists = Test-Path $Using:targetFile 
     if ($fileExists -eq $false){ 
      Write-Output "Copying to: $using:targetFile" 
      &"$Using:AzCopyPath" /Source:"$Using:sourceDirectory" /Dest:$Using:dir /SourceKey:$Using:sourceKey /Pattern:"$Using:sourcePattern" /Z:$journalPath 
      Write-Output "Copied to: " $Using:targetFile 
     } else{ 
      Write-Output "Already copied: " $Using:targetFile 
     } 

Это прекрасно работает для небольших текстовых файлов, но для создания резервных копий баз данных ~ 400-гигабайтных, он не работает так набухает, потому что хост-машина полностью перегружена.

Какой самый разумный способ использовать AZCopy для автоматического копирования большого файла на ~ 20 машин в автоматическом и параллельном режиме?

+0

Это не большой архитектуры. Согласно вашему описанию, вы будете нажимать ~ 8 ТБ данных. Вам нужно рассмотреть другие варианты - например, торрент или загрузку на учетную запись Azure. –

+0

Являются ли цели Azure VM? Думали ли вы об использовании файлов Azure и просто сопоставлении акций? – CtrlDot

+0

@SamAxe файл находится в лазурном хранилище. – RobVious

ответ

1

Просьба уточнить, что «главная машина полностью перегружена». Возможно, что вы можете нажимать ограничения масштаба на долю файла Azure или другие ограничения на учетные записи хранилища. Целевая пропускная способность для одного файлового ресурса составляет до 60 МБ/с, поэтому, пожалуйста, убедитесь, что вы не превышаете этот предел. Если вы нажмете этот предел, вы можете рассмотреть возможность размещения содержимого в нескольких файлах. См. Ограничения производительности для учетных записей файлов и хранилища в следующей статье MSDN: https://azure.microsoft.com/en-us/documentation/articles/storage-scalability-targets/. Также проверьте, чтобы ваша учетная запись хранилища и Azure VM были в том же регионе, чтобы уменьшить латентность сети.

Спасибо, Аун

Смежные вопросы