Siedem wyzwań wirtualizacji

Wirtualizacja serwerów zwiększa efektywność sprzętu. Niesie też zmiany w architekturze i działaniu centrów przetwarzania danych, które stają się poważnym wyzwaniem dla IT.

Planując wirtualizację serwerów, trzeba być świadomym wyzwań, jakie niesie operacja. Jeśli zawczasu nie przygotuje się scenariuszy postępowania, cały wysiłek może pójść ma marne. Wirtualizacja zamiast rozwiązać część problemów firmy, tylko je pogłębi, a dla działu IT stanie się koszmarem. Opierając się na doświadczeniach przedsiębiorstw, które przeprowadziły wirtualizację serwerów, wybraliśmy siedem powtarzających się problemów i sprawdzonych w praktyce metod ich rozwiązania.

1.Niekontrolowany wzrost liczby maszyn wirtualnych

W fizycznym środowisku serwerowym procedura przyłączania nowego serwera wymaga całej masy czynności, począwszy od określenia jego specyfikacji sprzętowej, poprzez dokonanie zamówienia u dystrybutora, po jego zainstalowanie i podłączenie do sieci. W wirtualnym środowisku wszystko jest prostsze. Wystarczy poinformować administratora o nowych potrzebach, określając wymagania sprzętowe, a odpowiednia wirtualna maszyna zostanie stworzona w ciągu kilkunastu minut. Niestety, łatwość, z jaką powstają nowe wirtualne maszyny i pozornie niewielkie związane z tym koszty, stanowią jeden z największych problemów wirtualizacji. To wzrost liczby maszyn wirtualnych, po angielsku określany jako VM Sprawl.

Zobacz również:

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

To realny problem, bo wirtualne maszyny - wbrew temu, co się często słyszy - wcale nie są darmowe. Sprzęt wykorzystany do stworzenia takiego środowiska musi spełniać bardzo wysokie wymagania. Serwery, by obsłużyć dużą liczbę maszyn wirtualnych, muszą dysponować odpowiednią wydajnością, co powoduje, że zamiast 5-10 tys. USD, kosztują od 20 do 50 tys. Do tego należałoby jeszcze doliczyć koszty niezbędnych licencji na oprogramowanie.

Konsekwencją niekontrolowanego przyrastania maszyn wirtualnych jest nie tylko coraz trudniejsze zarządzanie całym środowiskiem, ale i ryzyko powstawania nieprzewidzianych kosztów. Dlatego w środowisku zwirtualizowanym niezbędne jest stosowanie tych samych procedur, co w przypadku zgłoszenia zapotrzebowania na "normalne", fizyczne serwery.

Rozpoznanie, że w danym wirtualnym środowisku doszło do bezwładnego rozrostu maszyn nie jest proste. Opisywane zjawisko nie ma bowiem ściśle zdefiniowanych symptomów. Warto jednak pamiętać, że do jego powstania wymagany jest czas, przez co trudno uchwycić moment, w którym faktycznie problem się zaczyna. Dlatego konieczne jest porównywanie wykorzystania zasobów w ściśle określonych przedziałach czasowych, np. 6 miesięcy wcześniej i dziś.

Pomocne mogą okazać się również aplikacje, które pozwalają zanalizować trendy środowiskowe oraz wykryć obszary długotrwałego rozrostu. Dodatkowo należy rozpoznać maszyny, które nie są już używane, zostały wyłączone, lub których zasoby zostały przekroczone. Dzięki tym informacjom możemy odzyskać kontrolę nad zarządzanym środowiskiem, kierując niewykorzystane zasoby tam, gdzie są akurat potrzebne. Aby zapobiegać powstawaniu efektu niekontrolowanego rozrostu, zaleca się stałe monitorowanie wszystkich wirtualnych maszyn, ich cyklu życiowego i wykorzystywanych zasobów, tak aby można je było usunąć, gdy przestają być potrzebne.

2.Zarządzanie pamięcią masową

Dobrze zorganizowany i wydajny system pamięci masowej ma kluczowe znaczenie dla środowiska wirtualnego. Jest też jednym z najbardziej kosztownych jego elementów. Dlatego tak istotne w wirtualizacji jest zapewnienie szczytowej efektywności wykorzystania dostępnych zasobów pamięci masowej oraz zagwarantowanie wirtualnym maszynom odpowiedniej przepustowości.

Źródłem problemów w przypadku wirtualnych dysków może być sposób zarządzania funkcją zapisywania kopii migawkowych (VM snapshot) oraz thin provisioning przestrzeni dyskowej. Ta ostatnia opcja pozwala na wcześniejsze zadeklarowanie zasobów dyskowych dla maszyn wirtualnych o rozmiarze większym od obecnie dostępnej przestrzeni, umożliwiając jednocześnie późniejszą rozbudowę, gdy będzie to potrzebne. Kłopot w tym, że opcje te (szczególnie zapomniane kopie migawkowe) niezauważenie pożerają coraz większą przestrzeń na dyskach, narażając cały system na wyczerpanie zasobów pamięci masowej.

Wśród dodatkowych czynników mogących mieć wpływ na wydajność pamięci masowej wymienia się rozmieszczenie zasobów dyskowych, nieprawidłową konfigurację i ustawienia, spowolnienie transferu, wielościeżkowość, nadmierną liczbę operacji wejścia-wyjścia czy niewłaściwą architekturę systemu. W ogólnym rozrachunku wszystko to może doprowadzić do wystąpienia efektu wąskiego gardła w operacjach wejścia-wyjścia, a co za tym idzie, radykalnego spowolnienia maszyn wirtualnych.

3.Biznesowe ujęcie

Wirtualne środowiska informatyczne stawiają przed administratorami niespotykane dotąd wyzwania. Stale rosnąca liczba maszyn wirtualnych, które mogą być uruchomione na jednym hoście, uwydatniła problem z określeniem ich konkretnego przeznaczenia. Wirtualne maszyny pochodzące z różnych departamentów i grup biznesowych, stworzone do całkowicie różnych zadań, mieszają się na tym samym serwerze, co znacząco utrudnia zarządzanie kosztami usługi oraz raportowanie ewentualnych problemów.

Aby rozwiązać problem, można próbować rozmieszczać wirtualne maszyny na określonych hostach, ale nie jest to zbyt skuteczna i wydajna metoda. W porównaniu z fizyczną infrastrukturą wirtualne środowisko jest dużo bardziej dynamiczne. Wirtualne maszyny nieustannie przenoszone są pomiędzy hostami dla zwiększenia efektywności systemu i jakiekolwiek próby porządkowania ich w jednym miejscu nie mają większego sensu. Dlatego właśnie tak przydatne okazuje się zaimplementowanie w wirtualnym środowisku struktury organizacyjnej opartej na biznesowych potrzebach i priorytetach, takich jak: jednostki organizacyjne, lokalizacja geograficzna, rodzaj systemu operacyjnego czy rola serwera. Dzięki temu zarządzanie maszynami wirtualnymi staje się efektywniejsze i bardziej intuicyjne, pozwalając spojrzeć na cały system pod kątem biznesowym, a nie rozwiązań fizycznych czy wirtualizacyjnych.

4.Zarządzanie zmianami

Istotą wirtualizacji jest dzielenie wspólnych komponentów i zasobów infrastruktury pomiędzy wieloma maszynami wirtualnymi. Tak zorganizowana architektura powoduje, że nawet z pozoru nic nieznaczące zmiany mogą mieć ogromny wpływ na całe wirtualne środowisko. Świetnym tego przykładem jest modyfikacja funkcjonalności rozproszonego przełącznika vDS (virtual Distributed Switch), która dzielona jest pomiędzy wieloma serwerami. Jeśli zostanie wprowadzona zmiana dotycząca konfiguracji sieci, która powoduje problemy, może ona zostać zaimplementowana do wszystkich hostów wykorzystujących vDS i tym samym spowodować masowe rozłączenie z siecią maszyn wirtualnych.

Stąd też konieczne staje się wdrożenie procedur zarządzania dokonanymi zmianami w obrębie centrów przetwarzania danych. Dzięki temu wszystkie modyfikacje są obowiązkowo na bieżąco dokumentowane. W razie wystąpienia problemów w systemie wystarczy przeanalizować historię dokonanych zmian.

5.Monitorowanie i raportowanie

Z racji swojej złożonej architektury wirtualizowane środowisko wymaga ciągłego nadzoru i monitorowania. Kontrola wydajności jest znacznie bardziej skomplikowana niż w tradycyjnej, fizycznej infrastrukturze z uwagi na współdzielenie zasobów pomiędzy wieloma maszynami wirtualnymi. Mało skuteczne jest więc w tym przypadku monitorowanie efektywności wewnątrz wirtualizowanego systemu operacyjnego (Gościa), gdyż ma on dostęp wyłącznie do przyznanych mu ograniczonych zasobów.

Na prawidłowy nadzór pozwala dopiero kontrola warstwy wirtualizacyjnej dającej bezpośredni dostęp do fizycznej infrastruktury sprzętowej. Niestety, dodatkowym utrudnieniem może być całe mnóstwo danych statystycznych właściwych dla wirtualnych środowisk. Analiza i pełne zrozumienie wszystkich wyników monitorowania wydajności jest niezwykle trudne i czasochłonne. Z tego też względu najwłaściwsze jest skupienie się na garstce kluczowych danych będących wyznacznikami wydajności wszystkich zasobów serwera. Wśród krytycznych wskaźników, których nadzór powinien być stały, wymienia się:

- z parametrów procesora - CPU Ready;

- z parametrów pamięci - Mem Swapped;

- z parametrów dysków - Disk GAVG i Disk Commands;

- z parametrów sieci - Net Usage.

Tylko aktywne monitorowanie wydajności wirtualnego środowiska pozwala na wczesne wykrywanie problemów i zapobieganie im.

6.Planowanie pojemności środowiska

Przewidywanie potrzeb i planowanie ewentualnej rozbudowy tradycyjnej, fizycznej infrastruktury jest łatwe, gdyż każdy serwer jest osobnym bytem. Gdy zajdzie konieczność zwiększenia przepustowości systemu, wystarczy udoskonalić istniejące serwery albo dokupić nowe. Takie rozwiązanie nie sprawdza się w wirtualnym środowisku pracującym na wielu współdzielonych komponentach. W tym przypadku decydujące okazuje się właściwie balansowanie zasobów. Brak czujności lub błędy w planowaniu mogą prowadzić do marnowania zasobów z uwagi na to, że nie udaje się ich wykorzystać. Dlatego tak ważne dla określenia punktu równowagi jest stałe monitorowanie trendów historycznych dotyczących użytkowanych zasobów.

Planowanie pojemności to jednak nie tylko przewidywanie zapotrzebowania na zasoby w przyszłości, ale też optymalizowanie obecnie dostępnej konfiguracji i takie wykorzystanie środowiska, aby żaden z istniejących zasobów nie był marnotrawiony. Nadrzędnym celem powinna być więc maksymalizacja efektywności wirtualnego środowiska.

7.Zarządzanie przedsięwzięciem

Większość centrów przetwarzania danych obok platformy wirtualizacyjnej firmy VMware korzysta również z systemów operacyjnych i aplikacji Microsoftu. Działają one na uruchomionych maszynach wirtualnych. Z uwagi na to coraz częściej zdarza się, że administratorzy VMware są administratorami Microsoftu i odwrotnie.

Narzędzia wykorzystywane zwykle do zarządzania środowiskami VMware, takie jak vCenter Server, zostały zaprojektowane wyłącznie do radzenia sobie z warstwą wirtualizacyjną. Z kolei aplikacje Microsoftu pokroju Systems Center Operations Manager (SCOM) czy System Center Virtual Machine Manager (SCVMM) są często stosowane w centrach przetwarzania danych do zarządzania produktami tej firmy, w tym także oprogramowaniem Hyper-V, które niejednokrotnie funkcjonuje obok VMware. Wspólne wykorzystywanie wszystkich tych rozwiązań pozwala na centralizowane zarządzanie i monitorowanie wielu ścieżek w wirtualnym środowisku.

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

TOP 200