Backup, który rozumie wirtualizację

Wirtualizacja zapewniła szybkie dostosowanie środowiska IT do zmieniających się potrzeb biznesu. Teraz działy informatyki potrzebują równie elastycznych narzędzi do wykonywania kopii bezpieczeństwa.

Nowe środowisko backupu

Narzędzia do wykonywania kopii bezpieczeństwa powinny charakteryzować się tymi samymi własnościami co środowisko wirtualizowane, w którym pracują. Skoro nowe systemy do nowych aplikacji tworzy się w kilka minut, to proces odtwarzania z backupu powinien trwać równie krótko - odtwarzanie w kilkanaście godzin zupełnie nie pasuje do dynamiki, którą wprowadza wirtualizacja. Narzędzia do kopii bezpieczeństwa powinny nie tylko rozpoznawać fakt pracy z wirtualizowanymi systemami, ale wykorzystywać mechanizmy tego środowiska, by zarówno wykonywanie kopii bezpieczeństwa, jak i odtwarzanie z niej były bardzo szybkie.

Wirtualizacja oraz związane z nią konsolidacja i automatyzacja czynności utrzymania i dostarczania zasobów sprawiają, że IT działa o wiele sprawniej i szybciej niż jeszcze kilka lat temu. Proces dostarczania nowych systemów i aplikacji został w ten sposób skrócony, a dzięki przenośności aplikacji między maszynami działania związane z przygotowaniem aplikacji do eksploatacji w środowisku produkcyjnym są znacznie prostsze i szybsze. Niestety, za elastycznością i sprawnością dostarczania zasobów oraz ich utrzymaniem nie nadążają kopie bezpieczeństwa.

"Podstawową zaletą wirtualizacji stało się usprawnienie IT - zadania, które przedtem wymagały wielu czynności, obecnie wykonuje się bardzo szybko i sprawnie. Tego samego należy oczekiwać od backupu: jeśli nowe środowisko można utworzyć w kilka minut, to odtworzenie z kopii bezpieczeństwa również powinno odbywać się szybko, sprawnie i elastycznie. Niestety, technologia backupu nie nadążała za zmianami, które odbywały się w serwerowniach przedsiębiorstw. Przez pewien czas mieliśmy nawet do czynienia z przenoszeniem oprogramowania ze środowiska pracującego bezpośrednio na sprzęcie do środowisk wirtualnych, a to błąd" - mówi Tomasz Krajewski, architekt systemowy w firmie Veeam.

Zobacz również:

  • 5 priorytetów, które obniżają koszty chmury i usprawniają operacje IT

Mnożenie backupu

W modelu tradycyjnym w każdym systemie zainstalowanym na sprzęcie do backupu niezbędne było oprogramowanie agenta. Gdyby przenieść tę samą instalację do maszyny wirtualnej i uruchomić w konsolidowanym środowisku, backup nadal technicznie da się wykonać, ale nie będzie to rozwiązanie optymalne i wydajne.

Niektóre zagadnienia są podobne w obu środowiskach, na przykład eliminacja niektórych obiektów, takich jak pliki lub partycje wymiany. Podobnie deduplikacja i kompresja są podstawą sprawnego backupu - dział IT często standaryzuje swoje systemy operacyjne, a zatem bardzo wiele bloków danych będzie się powtarzać między maszynami wirtualnymi, a także w obrębie samej maszyny. To samo dotyczy backupów przyrostowych, które można wykonać niezwykle szybko. Na tym kończą się podobieństwa, gdyż oba zagadnienia trzeba potraktować inaczej, uwzględniając specyfikę środowiska - zamiast odpytać system Windows o położenie plików wymiany, należy te informacje pozyskać na podstawie detali obrazów dysków wirtualnych.

Podstawową własnością data center intensywnie korzystającego z wirtualizacji jest duża konsolidacja - na jednej maszynie pracuje zazwyczaj od kilkunastu do kilkudziesięciu niezależnych instalacji systemów operacyjnych. Jeśli w każdym z nich musi być zainstalowany agent backupowy, to znaczy, że na jednym fizycznym serwerze będzie zainstalowanych tyle kopii, ile jest maszyn wirtualnych. Oznacza to marnotrawstwo pamięci operacyjnej i kosztów licencji na oprogramowanie backupowe, ale rozrzutność jest najmniejszym z problemów, które powstaną po przeniesieniu środowisk pracujących bezpośrednio na sprzęcie do maszyn wirtualnych.

Współzawodnictwo o zasoby

Praca w wysoko konsolidowanym środowisku wiąże się ze skomasowaniem wszystkich operacji wejścia/wyjścia w pojedynczej logicznej magistrali, wiodącej do macierzy dyskowych. Nawet jeśli magistrala jest bardzo wydajna, uruchomienie kopii bezpieczeństwa w trakcie trwania okna backupowego wiąże się z jej dużym obciążeniem. Ponadto w tym samym czasie fizyczne procesory tej samej maszyny wykonują wielokrotnie to samo zadanie we wszystkich maszynach, na których został uruchomiony backup.

Przy tak zmasowanym obciążeniu należy wziąć pod uwagę wpływ zadań backupowych na wydajność produkcyjnego środowiska. Jego duże obciążenie może prowadzić nawet do zatrzymania zadań produkcyjnych.

Początkowo problem rozwiązywano w taki sposób, że przypisywano maszyny wirtualne do fizycznych hostów i planowano okno backupowe, minimalizując liczbę maszyn backupowanych z tego samego fizycznego serwera. Rozwiązanie to jednak ma istotną wadę - wyklucza automatyzację i elastyczność środowiska wirtualizowanego.

Ostrożnie z kopiami migawkowymi

Niemal wszystkie dzisiejsze macierze dyskowe są wyposażone w mechanizm kopii migawkowych (snapshot), które umożliwiają zapisanie stanu wybranego zasobu. Są powszechnie stosowane przy testowaniu oprogramowania, a w dziale deweloperskim przy jego tworzeniu, umożliwiając bardzo szybkie przywrócenie stanu sprzed zmian. Trudno wyobrazić sobie pracę działu rozwoju lub testowania oprogramowania bez wykorzystywania kopii migawkowych, oszczędzających czas.

Chociaż migawki są dobrym narzędziem do zachowania na pewien czas stanu maszyny, nie sprawdzają się jako kopia bezpieczeństwa, gdyż znajdują się na tym samym urządzeniu. W przypadku awarii macierzy utracie ulegną nie tylko obrazy maszyn, ale także wszystkie kopie migawkowe, o czym przekonali się niektórzy operatorzy hostingowi, także w Polsce.

Z kolei technologia przeniesienia danych z kopii migawkowych na taśmę mocno przywiązuje do rozwiązań producenta macierzy, co może mieć znaczenie przy długofalowych planach rozwoju środowiska IT. Bardziej elastycznym sposobem na backup jest kopia danych z migawek na drugą macierz dyskową, skąd te dane mogą być przeniesione na taśmę - awaria macierzy dyskowej nie powoduje wtedy utraty danych w systemie produkcyjnym.

Jak skopiować aplikację

Oprogramowanie biznesowe zazwyczaj składa się z więcej niż jednej warstwy: baz danych, middleware, serwerów aplikacyjnych, front endów webowych, brokerów połączeń, serwerów cache i innych składników. Backup takiego środowiska oznacza konieczność skopiowania wszystkich składników w spójny sposób. Zwykły mechanizm kopii migawkowych może tego nie zapewnić, gdyż kopia zostanie przygotowana w formie crash consistent, czyli będzie odpowiadać stanowi nagłego wyłączenia zasilania serwera obsługującego dany składnik.

Aby wykonać kopię w spójny sposób, należy najpierw za pomocą interfejsu API przestawić serwery w tryb kopii bezpieczeństwa. Aplikacja lub baza zapisze wszystkie transakcje na dyski, doprowadzi je do spójnego stanu, zapisze dane z logów transakcyjnych oraz wyciszy operacje dyskowe. Wtedy należy uruchomić kopię migawkową, wyłączyć tryb backupu, a stan danych skopiować (najlepiej poza hypervisorem, by zmniejszyć obciążenie serwerów) do innego zasobu.

Problem związany z backupem skomplikowanego środowiska wirtualizowanego jest tym poważniejszy, im więcej maszyn bierze udział w tworzeniu kopii bezpieczeństwa. Gdy aplikacja biznesowa składa się z kilkudziesięciu maszyn wirtualnych, mogą zdarzyć się tak prozaiczne problemy, jak pominięcie którejś z maszyn w planie kopiowania składników danej aplikacji.

Czy deduplikacja przyspieszy odtwarzanie?

Każda kopia bezpieczeństwa jest warta tylko tyle, ile można z niej odzyskać w oczekiwanym przez IT czasie. Jeśli odtworzenie kopii wiąże się z koniecznością zaimportowania bardzo dużej ilości danych, to czas odtwarzania zasobów będzie liczony w godzinach. Niekiedy nie ma innego wyjścia i trzeba skopiować wiele terabajtów danych, ale w większości przypadków odtwarzane są pojedyncze maszyny wirtualne. Działania można radykalnie przyspieszyć, jeśli stosowane oprogramowanie umożliwi szybkie zamontowanie maszyny wprost z plików kopii bezpieczeństwa lub równie szybkie odtworzenie z deduplikowanych zasobów. Występuje tu jednak istotna zależność związana ze sposobem, w jaki przeprowadzana jest deduplikacja.

Tomasz Krajewski wyjaśnia: "Jeśli deduplikowana jest cała przestrzeń kopii, to wyciągnięcie, zwane także nawodnieniem, musi być przeprowadzone dla każdej odtwarzanej maszyny z osobna, bazując przy tym na kompletnym archiwum kopii bezpieczeństwa. Deduplikacja przeprowadzana na poziomie zadania sprawia, że kopia nie należy do globalnego zasobu storage, a zatem jest przenośna. Globalna deduplikacja zmniejsza zapotrzebowanie na przestrzeń dyskową, ale wiąże się z dłuższym odtwarzaniem kopii, z kolei realizowana per zadanie umożliwia bardzo szybkie odtworzenie pojedynczych zasobów także z nośników wymiennych, takich jak dyski USB".

Bardzo ciekawą opcją jest możliwość zamontowania maszyny wirtualnej wprost z plików kopii bezpieczeństwa. Oprogramowanie wtedy dokonuje nawodnienia danej maszyny w locie i w tym trybie dostarcza już hypervisorowi gotowy obraz. W ten sposób można testować funkcjonalność produkcyjnego oprogramowania w rezerwowym ośrodku.

Na bakier z wirtualnym backupem

Backup oraz możliwość odtworzenia systemów i aplikacji z kopii bezpieczeństwa to w każdej firmie operacje o znaczeniu krytycznym. Muszą zatem objąć całość infrastruktury, włącznie z systemem operacyjnym, aplikacjami, bazami danych i informacjami w nich zawartymi. Technologie dostarczane przez producentów zabezpieczają dane w przypadku awarii, ale nie każda firma z nich korzysta.

Vitalij Suchowski, dyrektor regionalny w krajach rozwijających się w firmie Veeam, mówi: "Razem z firmami konsultingowymi przeprowadzaliśmy badania, w jaki sposób firmy wykonują backup środowisk wirtualizowanych. Aż 19% badanych firm nie wykonuje kopii bezpieczeństwa za pomocą żadnego narzędzia. Stan ten jest zatrważający, gdyż w razie jakiejkolwiek poważniejszej awarii firmy te ryzykują utratę danych i w konsekwencji poważne straty".

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200