Rozwiązania VDI

0

Przeniesienie części lub całości środowiska pracy użytkowników do centrum danych ma szereg zalet, m.in. uproszcza zarządzanie desktopami, redukuje koszty i poprawia bezpieczeństwo danych. Pomysłów na realizację tego procesu jest wiele, ostatnio znaczenia nabierają technologie bazującej na wirtualizacji.

Gdy w firmie zapadnie już decyzja o stworzeniu infrastruktury wirtualnych desktopów, należy jeszcze odpowiedzieć na pytanie, jak to zrobić. Jest kilka sposobów zwirtualizowania środowiska pracy użytkowników mających różne wymagania co do infrastruktury, a także różnorodne zalety i wady.

Wirtualizacja interfejsu (presentation virtualization)
Przykładami takich rozwiązań są Citrix Presentation Server oraz Windows Server Terminal Services. Użytkownik widzi na ekranie swojego komputera interfejs aplikacji, ale aplikacja działa na serwerze. Informacje o czynnościach użytkownika są przesyłane do serwera, natomiast w drugą stronę transmitowane są zmiany zachodzące na ekranie. Użytkownik może korzystać ze zwykłego desktopa lub cienkiego klienta. Możliwa jest praca w sieci lokalnej lub za pośrednictwem Internetu (wtedy połączenia są szyfrowane).

Na serwerze można uruchomić jednocześnie do kilkuset sesji aplikacji. Taka skalowalność jest dużą zaletą wirtualizacji interfejsu. Znacznie prostsze jest zarządzania aplikacjami, bo nie trzeba ich instalować na komputerach użytkowników. Dostępem do aplikacji zarządza się centralnie, a dane mogą być bezpieczne przechowywane na serwerach zaplecza.

Niestety w ten sposób można korzystać tylko z aplikacji, które zostały do tego przystosowane. Są narzędzia pozwalające ocenić, czy dana aplikacji będzie prawidłowo działać w zwirtualizowanym środowisku, jednak zwracane przez nie wyniki nie zawsze są wiarygodne. Są też obawy o niezawodność aplikacji, szczególnie przy dużej liczbie jednoczesnych sesji. Może się zdarzyć, że jeden użytkownik będzie zużywał większość zasobów, utrudniając pracę pozostałym współużytkującym dany serwer. Nie da się również przenosić użytkowników między serwerami bez wyłączania środowiska ich pracy. Wymagana jest też odpowiednia wydajność sieci, żeby użytkownik nie doświadczał opóźnień w działaniu aplikacji. Kolejny problem: Windows Server Terminal Services obsługują tylko Windows, a Citrix Presentation Server działa z Windows i Uniksem. Jeśli w firmie korzysta się z linuksowych aplikacji, trzeba poszukać innego rozwiązania.

Pełna wirtualizacja
Jeśli można wirtualizować serwery, dlaczego nie spróbować z desktopami i osiągnąć takie same korzyści? Takie możliwości oferują rozwiązania VMware Virtual Desktop Infrastructure (VDI), XenDesktop oraz Windows Vista Enterprise Centralized Desktop (VECD). Pełna wirtualizacja polega na tworzeniu w centrach danych kompletnego środowiska pracy – wirtualnych maszyn z zainstalowanym systemem operacyjnym i aplikacjami. Maszyny są tworzone na stałe lub na żądanie. Użytkownik ma zdalny dostęp do własnej wirtualnej maszyny, korzystając z cienkiego klienta. Pomiędzy klientem a serwerem jest dodatkowa warstwa – Connection Broker, który odpowiada za to, żeby użytkownik łączył się z właściwą wirtualną maszyną.

Wszystkie wirtualne maszyny są przechowywane w centrum danych, co pozwala stworzyć infrastrukturę odporną na awarie (fault-tolerant) oraz zwiększyć poziom zabezpieczeń. Możliwe jest centralne zarządzanie środowiskiem pracy użytkowników i lepsze wykorzystanie mocy obliczeniowej systemów obsługiwanych przez dział IT. W efekcie obniżają się koszty zarządzania komputerami użytkowników. W wielu przypadkach wirtualną maszynę można skopiować na notebooka i korzystać z niej w trakcie podróży lub wykorzystywać ją do bezpiecznego uruchamiania aplikacji na lokalnym komputerze.

Ponieważ całe środowisko pracy użytkownika jest zwirtualizowane, ogranicza to skalowalność rozwiązania oraz zwiększa koszty pamięci masowych. Pełna wirtualizacja wymaga znacznych inwestycji w infrastrukturę serwerową, która musi zapewnić odpowiednią wydajność wirtualnych maszyn. Ważne jest też stworzenie połączeń sieciowych umożliwiających odpowiednio szybkie przesyłanie obrazu zdalnego pulpitu.

Wirtualizacja systemu operacyjnego

Najbardziej zaawansowanym produktem w tej kategorii jest Parallels Virtuozzo Containers. Z punktu widzenia użytkownika rozwiązanie to wygląda tak samo, jak pełna wirtualizacja – z wykorzystaniem protokołu zdalnego dostępu można korzystać z niemal pełnej funkcjonalności systemu operacyjnego. Jednak na serwerze jest zainstalowany jeden system operacyjny, zaś podział na partycje, tzw. VPS (Virtual Private Server), jest realizowany na poziomie procesów i systemu plików. Jedno jądra systemu operacyjnego zarządza dostępem do zasobów sprzętowych przez wszystkie wydzielone w nim VPS.

Takie podejście redukuje narzut wirtualizacji, dzięki czemu jest bardziej elastyczne niż rozwiązania wykorzystujące pełną wirtualizacja. Jednocześnie użytkownik otrzymuje pełne, wirtualne środowisko pracy. Są pewno ograniczenia, m.in. nie może samodzielnie instalować aktualizacji systemu operacyjnego. To zadanie należy do administratora, ale ma on uproszczoną pracę, bo musi łatać tylko jeden system operacyjny na serwerze.

Wirtualizacja systemu operacyjnego sprawdza się w środowisku homogenicznym – użytkownicy korzystają z jednego systemu operacyjnego. W przypadku, gdy w firmie używa się różnych wersji Windows czy Linuksa, dla każdego systemu należałoby uruchomić oddzielny serwer fizyczny i na nim instalować Virtuozzo.

Wirtualizacja (izolacja) aplikacji
To podejście reprezentują Microsoft SoftGrid Application Virtualization oraz Altiris Software Virtualization Solution. Aplikacje użytkownika są uruchamiane na kliencie, ale nie są w nim instalowane. Aby było to możliwe, trzeba najpierw przygotować specjalne paczki z aplikacjami, które zostają umieszczone na serwerze, z którego będą następnie przesyłane do użytkowników. Paczki za aplikacjami są przesyłane na żądanie do klienta, w którym są zapisywane i uruchamiane w zamkniętym środowisku, tzw. piaskownicy (ang. sandbox). Aplikacja otrzymuje zasoby niezbędne do jej uruchomienia – wirtualne klucze rejestru oraz określony zestaw plików. Do pozostałych zasobów w komputerze ma prawa tylko do odczytu. Pozwala to uniknąć modyfikacji czy uszkodzenia systemu operacyjnego przez aplikacje. Taką aplikację bardzo łatwo usuwa się z komputera – po prostu jej zasoby zostają odłączone od rejestru i systemu plików.

Takie podejście umożliwia użytkownikowi uruchamianie wielu aplikacji i zapewnia lepszą wydajność niż w przypadku rozwiązań SBC (Server Based Computing) – z omawianych rozwiązań jest to jedyne, które umożliwia uruchamianie aplikacji na komputerach użytkowników. Pozwala także uniknąć kłopotów związanych z siecią, np. nadmiernym obciążeniem. Zalety z punktu widzenia działu IT to uniknięcie problemów z wdrożeniem i ewentualnych konfliktów między aplikacjami, a także łatwiejsze śledzenie wykorzystania licencji. Jednak problem polega na tym, że aplikacje muszą być testowane pod kątem działania w izolowanym środowisku, a niekiedy także modyfikowane, zanim zostaną udostępnione użytkownikom. Ponieważ jedna paczka jest udostępniania wszystkim użytkownikom, muszą oni korzystać z tej samej platformy.

Podsumowanie
Warto podkreślić, że omówione rozwiązania nie wykluczają się. Można korzystać z pełnej wirtualizacji, a następnie wdrożyć wirtualizację aplikacji w celu uproszczenia zarządzania. Większość firm w każdym z tych rozwiązań znajdzie jakieś cechy przydatne we własnej działalności. Technologie wirtualizacji środowiska pracy użytkowników rozwijają się bardzo szybko, więc warto się im przyglądać.

PODZIEL SIĘ

BRAK KOMENTARZY

ZOSTAW ODPOWIEDŹ