Rsync do wiadra AWS S3


26

W przypadku serwera prowadzę witrynę internetową, na której chcę wykonać kopię zapasową danych i ustawień w segmencie S3. Dowiedziałem się, że nie można bezpośrednio używać rsync do tworzenia kopii zapasowych w segmencie S3. Czy istnieje inny sposób uzyskania następującego polecenia rsync w celu utworzenia kopii zapasowej danych w segmencie S3?

rsync -­av ­/Data /s3bucket

Chcę również wykonać kopię zapasową bazy danych mysql na tym serwerze do segmentu S3. Jaki jest najlepszy sposób na osiągnięcie tego?

Ostatnie pytanie, czy udało mi się wykonać kopię zapasową wszystkiego na S3. Jaki jest najlepszy sposób przywrócenia serwera, jeśli ulegnie awarii lub w najgorszym przypadku zostanie całkowicie wyczyszczony? Czy muszę osobiście zanotować ustawienia serwera i ponownie skonfigurować serwer, czy jest też sposób na wykonanie kopii zapasowej?

Odpowiedzi:


35

Aby komunikować się z s3, musisz mieć 2 rzeczy

  1. Poświadczenia użytkownika IAM, który ma dostęp do odczytu i zapisu w segmencie s3.
  2. Klient taki jak aws-cli dla bash, biblioteka boto dla Pythona itp.

gdy masz oba, możesz przenieść dowolny plik z komputera na s3 i z s3 na swój komputer. Poniżej znajduje się przykład aws-cli.

  1. aby zsynchronizować wszystkie pliki w folderze

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

  2. aby skopiować jeden plik do s3

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

wystarczy zastąpić źródło i miejsce docelowe w poleceniu, aby pobrać dowolny plik z s3.

Aby uzyskać więcej informacji, postępuj zgodnie z dokumentami aws


1
Uwaga: prawdopodobnie będziesz chciał najpierw uruchomić „aws config”, aby zapisać swoje poświadczenia, abyś nie musiał wprowadzać ich przy każdej synchronizacji.
Tim Burch,

1
Warto zauważyć, że rsyncoblicza sumy kontrolne, po stronie klienta i serwera, a następnie porównuje je, aby dokładnie zdecydować, czy plik się zmienił. Chociaż aws s3 syncnie - wykorzystuje rozmiary plików i znaczniki czasu. Niech ktoś mnie poprawi, jeśli się mylę?
Lqueryvg

13

Możesz spróbować rclone .

Konfiguracja ( dokumenty ):

rclone config

Synchronizacja ( dokumenty ):

rclone sync /my/local/folder s3service:bucket-name

2
rcloneto fantastyczne małe narzędzie!
Andrew Odendaal,

1
1+ rclone, uważam, że v. Jest łatwy w użyciu, a programista wydaje się niezwykle aktywny i angażujący
adampski

Brzmi nieźle, ale czy możesz rozwinąć przewagę nad aws s3 sync?
Kutzi

Spełnia wymagania OP dotyczące używania rsync. Nie korzystałem z synchronizacji s3 ani rclone z s3, więc nie wiem więcej.
Keith
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.