0

Я пытаюсь загрузить 2.6 GB iso в Azure China Storage, используя AZCopy с моей машины здесь, в США. Я поделился файлом с коллегой в Китае, и у них не было проблемы. Вот команда, которая работает около 30 минут, а затем сработает. Я знаю, что есть «Великий брандмауэр Китая», но я не уверен, как обойти эту проблему.Azure China Storage - Ошибка загрузки AZCopy

C:\Program Files (x86)\Microsoft SDKs\Azure\AzCopy> .\AzCopy.exe 
    /Source:C:\DevTrees\MyProject\Layout-Copy\Binaries\Iso\Full 
    /Dest:https://xdiso.blob.core.chinacloudapi.cn/iso 
    /DestKey:<my-key-here> 
+1

Какое сообщение об ошибке вы получаете, если таковые имеются? –

+0

Клиент не смог завершить операцию в течение указанного таймаута. Закончено 0 всего 1 файла (ов). [2015/09/16 10:31:58] Резюме с перепиской: ----------------- Всего файлов, пересылаемых: 1 Успешно переведен: 0 Передача пропущена: 0 Передача не удалась: 1 Истекшее время: 00.00: 29: 15 – rharrison33

+0

Я должен указать, что я также пытался использовать командлеты PowerShell, которые позволяют указывать таймауты клиента и сервера, но я думаю, что это скорее общее сообщение, потому что я получал то же самое сообщение об ошибке с таймаутом 120000 секунд. – rharrison33

ответ

1

Поскольку вы испытываете тайм-аут, вы можете попробовать AZCopy с в режиме повторного дисководе, как это:

C:\Program Files (x86)\Microsoft SDKs\Azure\AzCopy> .\AzCopy.exe 
    /Source:<path-to-my-source-data> 
    /Dest:<path-to-my-storage> 
    /DestKey:<my-key-here> 
    /Z:<path-to-my-journal-file> 

Путь к файлу журнала произволен. Например, вы можете разместить его до C:\temp\azcopy.log, если хотите.

Предположим, что прерывание происходит при копировании файла, и 90% файла уже было перенесено на Azure. Затем при перезапуске мы переносим оставшиеся 10% файла.

Для получения дополнительной информации, типа .\AzCopy.exe /?:Z найти следующую информацию:

Указывает папку журнала для возобновления операции. AzCopy всегда поддерживает возобновление, если операция была прервана.

Если этот параметр не указан или указан без пути к папке, затем AzCopy создаст файл журнала в папку по умолчанию, которое% LocalAppData% \ Microsoft \ Azure \ AzCopy.

Каждый раз, когда вы выдаете команду AzCopy, она проверяет, существует ли файл журнала в папке по умолчанию или существует ли он в папке , указанной вами с помощью этой опции. Если файл журнала не существует в любом месте, AzCopy рассматривает операцию как новый и генерирует новый файл журнала .

Если файл журнала существует, AzCopy проверяет, соответствует ли введенная вами строка команды командной строке в файле журнала.

Если две командные строки совпадают, AzCopy возобновляет незавершенную операцию . Если они не совпадают, вам будет предложено либо перезаписать файл журнала, чтобы начать новую операцию, либо отменить текущую операцию .

Файл журнала удаляется после успешного завершения операции .

Обратите внимание, что возобновление операции из файла журнала, созданного , предыдущей версии AzCopy не поддерживается.

Вы также можете узнать больше здесь: http://blogs.msdn.com/b/windowsazurestorage/archive/2013/09/07/azcopy-transfer-data-with-re-startable-mode-and-sas-token.aspx

+0

Это сработало! Я выдаю команду 3 раза. Он потерпел неудачу в первых двух, но был успешным с третьей попытки! Спасибо! – rharrison33

3

сеть между лазурным сервером и локальной машиной должен быть очень медленным, и AzCopy использования по умолчанию 8 * основные темы, чтобы сделать передачу данных, которые могут быть слишком агрессивный для медленной сети.

Я предлагаю вам уменьшить номер резьбы с помощью параметра «/ NC:», вы можете установить его как меньшее число как «/ NC: 2» или «/ NC: 5» и посмотреть, будет ли передача быть более стабильным.

BTW, когда проблема с повторением тайм-аута повторится снова, пожалуйста, возобновите работу с той же командной строкой AzCopy, что вы всегда можете добиться прогресса с помощью возобновления, а не начинать с начала.