0

環境

私の目標は、20 の開発環境を新しいデータベースで更新し、できるだけ迅速かつ確実に更新することです。BAK を生成し、それをファイル ストレージに投入してから、すべてのボックスで古いアンマウント/新しいマウントをリモートでトリガーする前に、すべてのボックスに (不十分に) ダウンさせようとします。

試み

現在、Powershellワークフローとして次のものがあります。

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 GB のデータベース バックアップの場合、ホスト マシンが完全に圧倒されるため、うまく機能しません。

AZCopy を使用して大きなファイルを最大 20 台のマシンに自動化および並列化してコピーする最も賢明な方法は何ですか?

4

1 に答える 1

1

「ホストマシンが完全に圧倒されます。」 について詳しく説明してください。Azure ファイル共有のスケール制限またはストレージ アカウントのその他の制限に達している可能性があります。1 つのファイル共有のターゲット スループットは最大 60 MB/秒であるため、その制限を超えないようにしてください。その制限に達している場合は、コンテンツを複数のファイル共有に配置することを検討してください。ファイル アカウントとストレージ アカウントのパフォーマンス スケール制限については、MSDN の記事https://azure.microsoft.com/en-us/documentation/articles/storage-scalability-targets/を参照してください。また、ネットワークの待機時間を短縮するために、ストレージ アカウントと Azure VM が同じリージョンにあることを確認してください。

ありがとう、アウン

于 2016-08-07T20:01:37.710 に答える