Kopia zapasowa, która pełznie przez VPN, zachęca do oczywistego eksperymentu: odłączyć tunel i zmierzyć ponownie. Ten eksperyment często odpowiada na inne pytanie, bo zadanie mogło liczyć skróty plików albo czekać na ponowną próbę zamiast przenosić bajty. Najpierw rozdziel fazy, a skarga zamieni się w konkretny test z konkretnym oczekiwanym wynikiem. Trasa staje się kandydatem dopiero wtedy, gdy wolna jest właśnie faza przesyłania.

W której fazie jest zadanie, gdy wydaje się wolne

Narzędzia do kopii zapasowych przechodzą przez fazy: odnajdywanie plików, ich odczyt i liczenie skrótów, kompresję, szyfrowanie, wysyłanie i weryfikację. Każda faza ma własne wąskie gardło, a tylko niektóre w ogóle dotykają sieci. Narzędzie, które nie zgłasza jeszcze żadnej fazy, mówi ci, że nie skończyło skanowania.

Zadanie, które spędza dwadzieścia minut na przygotowaniu miliona małych plików, nie przyspieszy, gdy tunel stanie się szybszy. Zadanie, które wysyca łącze wysyłania, to problem pojemności z innym rozwiązaniem. Czytaj dane o postępie, gdy trwa opóźnienie, zanotuj fazę i zapisz znacznik czasu, bo faza w chwili skargi jest jedyną, która ma znaczenie. Małe pliki zachowują się też inaczej niż jeden duży obiekt, bo dominują podróże w obie strony na plik, a przesyłanie nigdy nie osiąga stabilnego tempa. Porównuj to, co porównywalne, zanim wyciągniesz wnioski o tunelu.

Publiczny punkt końcowy i prywatny NAS zawodzą inaczej

Publiczna usługa kopii zapasowych ma własne uwierzytelnione połączenie aplikacji, a tunel to jeden przeskok na dłuższej drodze. Prywatny NAS zwykle zależy od tego tunelu, aby zapewnić podstawowy dostęp do twojej sieci. Ta różnica decyduje, czy odłączenie jest prawidłową linią bazową, czy testem niczego.

W przypadku publicznym to samo zadanie inną trasą może być uczciwym porównaniem, gdy pozwala na to polityka. W przypadku prywatnym usunięcie tunelu nie zostawia żadnej trasy do serwera, więc wynik opisuje ścieżkę, którą usunąłeś, a nie tę, której używasz.

DestinationWhat the tunnel providesValid baseline
Public backup serviceOne hop among severalThe same job over another route
Private NASThe only path to the serverNone that removes the tunnel
Self-hosted gatewayPath plus split-DNS policyOnly if the policy is unchanged

Zatrzymanie to inna awaria niż wolne przesyłanie

Trzecia kolumna tej tabeli decyduje, czy test stabilności można w ogóle przeprowadzić, bo linia bazowa usuwająca tunel ma sens tylko tam, gdzie istnieje inna droga. Mając użyteczną linię bazową, patrz na kształt awarii, a nie na jej średnie tempo. Niski, ale stały wysył może wskazywać na pojemność, podczas gdy zadanie, które się zatrzymuje i restartuje, wskazuje na przerwanie, uwierzytelnianie albo jeden kłopotliwy plik. Te dwa przypadki dają prawie identyczne skargi i zupełnie różne naprawy.

Ponowienia zniekształcają każdy pomiar, bo bajtów w sieci może być więcej niż ilość, która naprawdę się zmieniła. Przeczytaj zachowanie wznawiania, zanim ponownie przerwiesz zadanie, aby zobaczyć, co się stanie, bo dzielone wznawialne wysyłki odzyskują się tanio, a restart całego pliku nie. Tunel, który co kilka minut łączy się ponownie, też wygląda na problem z przepustowością, gdy w rzeczywistości jest problemem stabilności. MTU ścieżki to pogarsza, bo tunel zmniejszający użyteczny ładunek zatrzymuje duże segmenty, a małe przechodzą.

journalctl -u wg-quick@wg0 -n 50 --no-pager
ss -tin dst :443
ping -M do -s 1400 -c 3 backup.example.com

Jedna wysyłka może zagłodzić wszystkie inne strumienie

Wysyłka, która wypełnia łącze wysyłania, czyni połączenia i przeglądanie nieodpowiadającymi, a kopia zapasowa rzadko jest jedyną rzeczą, która się o nią ubiega. Drugi klient synchronizacji sam daje ten sam objaw. Zanim obwinisz tunel, sprawdź, co jeszcze wysyła.

Użyj harmonogramu lub limitu przepustowości, który narzędzie dokumentuje, zamiast walczyć o szczytową przepustowość; zostawienie miejsca na pracę interaktywną zwykle jest warte więcej niż ostatnie procenty. Potem sprawdź, czego limit naprawdę dotyczy, bo niektóre narzędzia ograniczają na plik, inne na całe uruchomienie, a jeszcze inne całkowicie ignorują narzut małych plików. Limit, który nie pasuje do obciążenia, niczego nie zmienia. Rozdzielone tunelowanie też zasługuje tu na podejrzenie, bo wyłączenie programu startowego z tunelu nie wyłącza usługi pomocniczej, która wykonuje wysyłkę. Rclone na przykład publikuje zarówno limity przesyłania, jak i zachowanie ponowień w swojej dokumentacji, co czyni go użytecznym punktem odniesienia dla tego, czym limit powinien sterować.

Zakończ odtwarzaniem, a nie testem prędkości

Ukończona wysyłka nie jest kopią zapasową, dopóki nic się z niej nie odtworzy. Potwierdź, że oczekiwana wersja istnieje, a następnie odtwórz reprezentatywny plik procedurą opisaną przez narzędzie. Przechowuj informacje o odtwarzaniu gdzie indziej niż na maszynie lub w profilu, które możesz utracić, i nigdy nie wyrzucaj działającej kopii tylko po to, by eksperyment pozostał uporządkowany.

restic snapshots --latest 3
restic restore latest --target /tmp/restore-check --include /etc/hosts

Powtórz zarówno przesyłanie, jak i odtwarzanie po zmianie sieci, aby poprawa służyła kopii zapasowej, a nie tylko szybszemu przenoszeniu danych. To drugie uruchomienie zamyka zgłoszenie. Szybsze przesyłanie z niesprawdzonym odtwarzaniem to wolniejszy sposób pozostania bez ochrony.

Powiązane artykuły