Rsync в ведро AWS S3

26

Для сервера, на котором я размещаю веб-сайт, я хочу сделать резервную копию данных и настроек в корзину S3. Я обнаружил, что вы не можете напрямую использовать rsync для резервного копирования в корзину S3. Есть ли другой способ получить следующую команду rsync для резервного копирования данных в корзину S3?

rsync -­av ­/Data /s3bucket

Я также хочу сделать резервную копию базы данных mysql на этом сервере в корзину S3. Каков наилучший способ достичь этого?

Последний вопрос, удалось ли мне сделать резервную копию всего на S3. Каков наилучший способ восстановить сервер, если он вышел из строя или, в худшем случае, полностью уничтожен? Нужно ли самому отмечать настройки сервера и перенастраивать сервер или есть способ сделать резервную копию этого?

Барт Бергманс
источник

Ответы:

35

Для общения с s3 нужно иметь 2 вещи

  1. Учетные данные пользователя IAM, у которого есть доступ на чтение и запись к корзине s3.
  2. Клиент, такой как aws-cli для bash, boto-библиотека для python и т. Д.

если у вас есть оба, вы можете перенести любой файл с вашего компьютера на s3 и с s3 на ваш компьютер. Ниже приведен пример для aws-cli.

  1. синхронизировать все файлы в папке

    aws s3 sync source_folder s3://your_bucket_name/destination_folder/

  2. скопировать один файл в s3

    aws s3 cp source_file s3://your_bucket_name/destination_folder/

просто замените источник и назначение в команде, чтобы загрузить любой файл из s3.

для получения дополнительной информации следуйте документам AWS

Гаурав Пундир
источник
1
Примечание: вы, вероятно, захотите сначала запустить «aws configure», чтобы сохранить свои учетные данные, чтобы вам не приходилось вводить их при каждой синхронизации.
Тим Берч
1
Стоит отметить, что rsyncвычисляет контрольные суммы на стороне клиента и на стороне сервера, а затем сравнивает их, чтобы точно решить, изменился ли файл. Тогда aws s3 syncкак нет - он использует размеры файлов и метки времени. Кто-нибудь, пожалуйста, поправьте меня, если я ошибаюсь?
Lqueryvg
13

Вы можете попробовать rclone .

Настройка ( документы ):

rclone config

Синхронизация ( документы ):

rclone sync /my/local/folder s3service:bucket-name
Кит
источник
2
rcloneэто фантастическая маленькая утилита!
Андрей Одендаал
1
1+ rclone, мне показалось, что он очень прост в использовании, и разработчик кажется невероятно активным и увлекательным
adampski
Звучит неплохо, но не могли бы вы пояснить, в чем заключается преимущество по сравнению с синхронизацией aws s3?
Куци
Он отвечает требованию OP об использовании rsync. Я не использовал синхронизацию s3 или rclone с s3, поэтому я больше не знаю.
Кит