| Termin | Definicja |
|---|---|
| snapshot serwera | Snapshot serwera to migawka jego stanu, umożliwiająca szybkie przywrócenie konfiguracji sprzed zmiany. Snapshot serwera jako migawka stanu systemuSnapshot serwera jest zapisem stanu wybranych danych, woluminu, systemu plików albo maszyny wirtualnej w określonym momencie. Migawka zachowuje informacje potrzebne do odtworzenia zawartości i struktury objętej nią przestrzeni, dlatego po wykonaniu zmiany można wrócić do wcześniejszego punktu. Zakres snapshotu zależy od zastosowanego mechanizmu. Może on obejmować pojedynczy wolumin, zestaw dysków, system plików lub całą maszynę wirtualną wraz z jej konfiguracją. W wielu implementacjach snapshot nie jest drugim, niezależnym plikiem zawierającym pełną kopię danych. System przechowuje stan początkowy oraz rejestr bloków zmienionych po utworzeniu migawki. Stosowana jest między innymi technika copy-on-write: przed nadpisaniem bloku jego poprzednia zawartość zostaje zachowana w obszarze powiązanym ze snapshotem. Inne rozwiązania wykorzystują redirect-on-write, zapisując zmienione bloki w nowym miejscu i pozostawiając oryginalne dane bez modyfikacji. Sposób działania wpływa na wydajność, wymagane miejsce i możliwość usunięcia migawki. Jak powstaje i jak działa przywracanieUtworzenie snapshotu zwykle rozpoczyna się od zarejestrowania punktu odniesienia, a następnie zamrożenia lub uporządkowania metadanych objętych ochroną. W środowisku serwerowym proces może być wykonywany na poziomie macierzy, systemu plików, menedżera woluminów albo hypervisora. Sama migawka często powstaje szybko, ponieważ nie musi od razu kopiować każdego bloku. Kopiowanie lub porządkowanie danych może odbywać się później, zależnie od konkretnej platformy. Przywrócenie snapshotu powoduje odtworzenie wcześniejszego układu bloków lub podłączenie wcześniejszego obrazu jako osobnego woluminu. Operacja może zastąpić bieżące dane, utworzyć nowy wolumin z zawartością migawki albo pozwolić na odzyskanie pojedynczych plików. Wybór zależy od funkcji użytego systemu. Trzeba także uwzględnić zależności między woluminami: przywrócenie tylko jednego dysku w systemie wykorzystującym kilka dysków może pozostawić dane w stanie niespójnym. Spójność danych i ograniczenia migawkiSnapshot wykonany bez koordynacji z działającymi aplikacjami jest zazwyczaj spójny awaryjnie, a nie aplikacyjnie. Oznacza to, że po odtworzeniu system może znajdować się w stanie podobnym do nagłego odcięcia zasilania. System plików może przeprowadzić procedurę odzyskiwania, lecz aplikacja korzystająca z buforów, dzienników lub kilku powiązanych plików może wymagać dodatkowego sprawdzenia. Aby uzyskać spójność aplikacyjną, mechanizm migawki musi współpracować z konkretną aplikacją albo jej usługi powinny zostać prawidłowo zatrzymane i opróżnić bufory zapisu. Snapshot nie zastępuje pełnoprawnej kopii zapasowej. Jeżeli migawki znajdują się na tej samej macierzy lub w tym samym systemie przechowywania co dane źródłowe, awaria urządzenia, uszkodzenie kontrolera, błąd administratora albo zaszyfrowanie dostępnych woluminów może objąć zarówno dane, jak i migawki. Migawki zużywają również dodatkową przestrzeń, która rośnie wraz z liczbą zmian po ich utworzeniu. Długi łańcuch zależnych snapshotów może zwiększać obciążenie operacji wejścia-wyjścia i utrudniać zarządzanie, dlatego należy kontrolować retencję oraz dostępne miejsce. Weryfikacja migawki przed użyciem awaryjnymPrzed wykorzystaniem snapshotu do odtworzenia serwera warto potwierdzić jego czas utworzenia, zakres danych, status zakończenia operacji i dostępność wymaganej przestrzeni. Istotne jest także sprawdzenie, czy migawka obejmuje wszystkie zależne woluminy oraz konfigurację potrzebną do uruchomienia systemu. Sam fakt widoczności snapshotu w konsoli administracyjnej nie dowodzi, że można z niego skutecznie odtworzyć kompletną usługę. Test odtwarzania powinien obejmować uruchomienie kopii w odseparowanym środowisku, kontrolę systemu plików, start usług i sprawdzenie odczytu danych przez aplikację. Należy odnotować czas wykonania oraz wynik testu, ponieważ dopiero praktyczne odtworzenie potwierdza użyteczność procedury. W przypadku ważnych systemów snapshot powinien być jednym z elementów planu odzyskiwania, obok niezależnych kopii zapasowych, dokumentacji zależności i jasno opisanej procedury powrotu do działania. |