Chciałbym użyć funkcji wysyłania / odbierania btrfs do przesyłania kopii zapasowych migawek przez raczej powolne (początkowe ziarno około 50-100 GB, przepustowość w górę ~ 1-2 MB / s) i zawodne (codzienne wymuszone przerwanie na obu końcach).
Widzę następujące wymagania:
- szyfrowany transfer (zwykle uzyskiwany przy użyciu tunelu SSH)
- odporność na przerwane połączenia
Wygląda na to, że ZFS jest w stanie automatycznie wznowić przerwane transfery , podobnie jak robi to rsync. Czy dotyczy to również BTRFS? Wyślij / odbierz wiki strona nie jest przydatna w odniesieniu do transferów przerwana. Jeśli btrfs wznowi przerwane transfery, wszystko, co musiałbym zrobić, to użyć tunelu SSH i wznowić je w przypadku przerwania.
Jeśli nie, musiałbym użyć między nimi bufora, aby upewnić się, że połączenie btrfs przeżywa przerwania, lub zbliżyć oba serwery do inicjowania (co będzie problemem w odniesieniu do dodanych plików, które przewyższają codzienną transmisję pojemności i wysyłanie migawek).
Co muszę wziąć pod uwagę przy przesyłaniu materiału siewnego i migawek?
„wyślij” do pliku lub przez potok. „otrzymuj” z plikiem lub potokiem na drugim końcu. Przy wątpliwym połączeniu najlepiej byłoby zrobić z plikami i transportem takim jak rsync.
źródło
Oprócz
buttersink
wznowienia S3btrbk
obsługuje:Edycja: Od tego czasu dowiedziałem się, że przenoszenie pojedynczych migawek nie jest wznawiane
btrbk
, ale poradzi sobie z celem tworzenia kopii zapasowej w trybie offline (ponowne uruchomienie przesyłania przerwanej migawki).źródło
btrbk
i w jaki sposób implementuje wznawianie przesyłania, chociaż nieco nie podoba mi się wybór języka programowania - ale wydaje się, że implementuje on właściwie zestaw funkcji, których potrzebuję.