gsutil rsync из облачного хранилища Google в s3 висит на большом файле - PullRequest
1 голос
/ 07 мая 2019

Я испытываю зависание на файле большего размера (560 МБ) при попытке выполнить резервное копирование моего хранилища облачного хранилища Google в хранилище aws s3 с помощью следующей команды:

gsutil -m rsync -rd gs://<MyGoogleBucket>/ s3://<MyS3Bucket>/  

Я знаю, что соединение хорошее, потому что оно копирует около 150 файлов меньшего размера (9 МБ), прежде чем оно повиснет на файле большего размера без видимого сообщения об ошибке, только зависший индикатор выполнения в оболочке.

Когда я нажимаю Ctrl-C для выхода из программы, я замечаю несколько сообщений, которые говорят:

[Errno 104] Connection reset by peer

Вот моя версия gsutil:

gsutil version: 4.38
checksum: 58d3e78c61e7e0e80813a6ebc26085f6 (OK)
boto version: 2.49.0
python version: 2.7.13 (default, Sep 26 2018, 18:42:22) [GCC 6.3.0 20170516]
OS: Linux 4.9.0-8-amd64
multiprocessing available: True
using cloud sdk: True
pass cloud sdk credentials to gsutil: True
config path(s): /etc/boto.cfg, /home/USER/.boto
gsutil path: /home/USER/google-cloud-sdk/bin/gsutil
compiled crcmod: True
installed via package manager: False
editable install: False

Я пытался сделать это в своей облачной оболочке, а также на виртуальной машине Google Compute

Кто-нибудь знает исправление или решение этой проблемы? Заранее спасибо

* 1016 Натан *

Ответы [ 3 ]

0 голосов
/ 08 мая 2019

Для больших объектов в GCS используйте опцию gsutil -o.Из документов

https://cloud.google.com/storage/docs/gsutil/commands/cp

0 голосов
/ 10 мая 2019

Я начал использовать rclone, и это упростило процесс и позволило завершить копирование.Вы можете найти информацию об использовании этого инструмента здесь: https://rclone.org/docs/

-n

0 голосов
/ 08 мая 2019

Хотя еще неизвестно, действительно ли произошла ошибка, использование опции -m для параллельной обработки на gsutil rsync может повлиять на поведение при значительной синхронизации между хранилищами, особенно сетями.Это также можно найти в ссылке [1], в которой упоминается: опция

m (многопоточность), gsutil может потреблять значительную часть пропускной способности сети.В некоторых случаях это может вызвать проблемы, например, если вы запускаете большую операцию rsync по сетевому каналу, который также используется рядом других важных заданий.

Если проблема не устранена, вы можете проверитьgsutil rsync без опции -m или использовать альтернативы, упомянутые в той же ссылке [1].

[1] Throttling gsutil

...