Hyper-V kontra ESX Server

0

Ten artykuł równie dobrze mógłby mieć tytuł „Microsoft kontra VMware”, ponieważ Hyper-V uderza we flagowy produkt VMware’a. Z Hyper-V, którego finalną wersją Microsoft udostępnił na początku października, firma wiąże nadzieje na podbicie rynku wirtualizacji serwerów. Dlatego przyglądamy się, jak od strony funkcjonalności Hyper-V wypada na tle głównego konkurenta. Próbujemy też odpowiedzieć na pytanie, czy Microsoft będzie próbował wykorzystać swoją silną pozycję i kontrowersyjnymi metodami walczyć o rynek wirtualizacji.

Dotychczas użytkownicy myślący na poważnie o wirtualizacji serwerów w centrach danych praktycznie nie mieli wyboru – produkty marki VMware jako jedyne spełniały korporacyjne wymagania. Teraz sytuacja na rynku się komplikuje. Także z punktu widzenia użytkowników, którzy stają przed trudnym wyborem najlepszego rozwiązania. Poza tym dotychczasowi i potencjalni klienci VMware wyrażają obawy, czy Microsoft nie zmieni zasad licencjonowania swoich produktów i utrudni lub zabroni instalowania systemów Windows w konkurencyjnych rozwiązaniach do wirtualizacji.

Koszty
Zasadnicza przewaga Hyper-V polega na tym, że jest to bezpłatne rozwiązanie. Może nie do końca, ponieważ trzeba posiadać licencję na Windows Server 2008 (999 dolarów za wersję Standard), którego częścią jest Hyper-V. W przypadku rozwiązania Virtual Infrastructure 3.5, w którego skład wchodzi ESX Server, cena za podstawową wersję Foundation (Starter) wynosi minimum 1500 dolarów. Za takie funkcje, jak VMotion, HA czy DRS trzeba dodatkowo płacić. W pełnej konfiguracji cena wzrasta nawet do 7000 dolarów.

Obaj producenci oferują również bezpłatne hypervisory: Hyper-V Server 2008 oraz VMware ESXi. W obu przypadkach zastosowana podobny zabieg – okrojono do minimum system operacyjny zainstalowany w partycji roota (jest to wirtualna maszyna służąca do zadań administracyjnych).

ESX Server jest wydajniejszym rozwiązaniem i pozwala na uruchomienie większej liczby wirtualnych maszyn na tym samym sprzęcie. Ta różnica może pokryć większe koszty nabycia licencji na produkt VMware’a.

Zastosowania
Produkt VMware’a jest obecny na rynku od kilku lat i stosowany w środowiskach produkcyjnych, także w dużych centrach danych. Sama firma działa już dziesięć lat i ma długą listę klientów korzystających z jej rozwiązań wirtualizacyjnych, w tym wszystkie firmy z listy Fortune 500. Natomiast Hyper-V jest nowym, jeszcze niedojrzałym produktem i znajduje zastosowanie głównie jako środowisko testowe i deweloperskie. Microsoft ma tak naprawdę niewielkie doświadczenie, jeśli chodzi o wirtualizację w przedsiębiorstwach, mimo że w swojej ofercie od lat ma oprogramowanie Virtual Server.

Można wręcz pokusić się o stwierdzenie, że Hyper-V nie jest jeszcze gotowy, że korzystać z niego w dużych korporacjach. Przemawia za tym kilka powodów. Przede wszystkim VMware VI (Virtual Infrastructure) to bardziej zaawansowane rozwiązanie spełniające wysokie korporacyjne wymagania (w kolejnych akapitach porównujemy szczegółowo funkcjonalności obu produktów). Obawy może budzić pomoc techniczna. VMware świadczy wyspecjalizowaną pomocną techniczną, natomiast użytkownicy Hyper-V otrzymują pomoc techniczną w pakiecie z Windows Server 2008. Z drugiej strony przedstawiciele Microsoftu przekonują, że zapytania dotyczące Hyper-V będą trafiać do specjalistów zajmujących się właśnie tym produktem. Czasem problemem może być też fakt, że Hyper-V działa tylko na platformach 64-bitowych. Jeśli firma ma starsze, 32-bitowe serwery, lub serwery 64-bitowe bez sprzętowego wsparcia wirtualizacji, może zapomnieć o Hyper-V.

Warto dodać, że obecnie największym użytkownikiem Hyper-V jest Microsoft. Skala wdrożenia jest imponująca – firma jest w trakcie wirtualizowania ok. 70 tys. serwerów, zarówno wykorzystywanych wewnątrz Microsoftu, jak i obsługujących witryny internetowe. Obecnie w pełni zwirtualizowane są witryny MSDN i TechNet oraz częściowo microsoft.com.

Wydajność
Działający w wielu środowiskach produkcyjnych ESX Server udowodnił, że zapewnia wymaganą przez przedsiębiorstwa wydajność. Natomiast Hyper-V musi dopiero wykazać się odpowiednią wydajnością. Wprawdzie oba produkty działają bezpośrednio na sprzęcie (bare metal), ale w przypadku Hyper-V instalowany jest jeszcze system operacyjny Windows Server 2008 (Microsoft zaleca instalację Server Core) i dopiero wtedy możliwe jest tworzenie wirtualnych maszyn. Co oznacza, że w przypadku wirtualizacji serwera linuksowego na fizycznej maszynie będą działać dwa systemy operacyjne.

Warto zauważyć, że pod względem wydajności Hyper-V wypada lepiej niż Virtual Server 2005. Wynika to z faktu, że Hyper-V, jak również ESX Server, to rozwiązania bazujące na nadzorcy (hypervisor) – oprogramowanie wirtualizacyjne działa bezpośrednio na sprzęcie, a dopiero na hypervisorze działają wirtualne maszyny. W przypadku Hyper-V nadrzędnym systemem operacyjnym jest Windows Server 2008, zaś w ESX Serverze jest to „szyta na miarę” dystrybucja Linuksa.

Architektury obu produktów są podobne, ale występują między nimi istotne różnice. Najważniejsza dotyczy instalowania sterowników. W przypadku ESX Servera sterowniki sprzętu są częścią hypervisora. Zwiększa to narzut wirtualizacji oraz ogranicza możliwość instalowania tego oprogramowania tylko do wybranych platform, dla których są sterowniki. Przykładowo, ESX Server obsługuje tylko dyski SCSI, bo do innych dysków nie ma sterowników. Z drugiej strony, producenci sprzętu, np. HP, Dell, IBM, mają w ofercie serwery w pełni zgodne z ESX Serverem, a czasami nawet preinstalują produkt VMware’a.

Inne rozwiązanie zastosowano w Hyper-V. Hypervisor nie zawiera sterowników urządzeń. Jego zadaniem jest wyłącznie odpowiednie przydzielanie zasobów sprzętowych wirtualnym maszynom – taka architektura zapewnie maksymalną wydajność. Ma także zalety z punktu widzenia bezpieczeństwa, bo redukuje płaszczyznę ataku na hypervisora. W Hyper-V sterowniki urządzeń są instalowane w wirtualnych maszynach. Ponadto Hyper-V zawiera technologię VMBus, która pozwala na wydajniejszą obsługę wywołań sprzętowych wysyłanych przez wirtualne maszyny z Windows Server 2008, Server 2003 i Vistą, a także dystrybucjami Linuksa przystosowanymi do działania pod kontrolą hypervisora Xen.

Pierwsze testy pokazują, że oba produkty cechują się podobną wydajnością, jednak na bardziej kompletne rezultaty trzeba jeszcze poczekać. Być może nie doczekamy się jednoznacznego rozstrzygnięcia, ponieważ wiele czynników decyduje o ostatecznym wyniku. Wpływ na porównanie ma m.in. system operacyjny instalowany w wirtualnej maszynie.

Zarządzanie i konfiguracja
Uproszczenie zarządzania infrastrukturą IT to jeden z częściej wymienianych powodów zainteresowania przedsiębiorstw rozwiązaniami wirtualizacyjnymi. Jak ważny jest to element świadczy m.in. fakt, że obie firmy oferują bezpłatnie hypervisora, a każą płacić za narzędzia do zarządzania.

Konfiguracja obu produktów jest dość łatwa, ESX Server szybciej się instaluje (ok. 20 minut). Warto dodać, że podczas instalacji i używania ESX Server praktycznie nie wymaga restartowania, czego nie można powiedzieć o Hyper-V (trzy restarty w trakcie instalacji). Zadania związane z zarządzaniem ESX Serverem można wykonywać lokalnie w trybie tekstowym, ale dużo wygodniej jest skorzystać z narzędzia do zdalnego zarządzania Virtual Infrastructure Client działającego w Windows w trybie graficznym. Ten klient umożliwia wykonywane podstawowych operacji, np. tworzenie wirtualnych maszyn.

W przypadku Hyper-V mogą pojawić się problemy z zarządzaniem, gdy instalacja tego oprogramowania będzie odbywać się na Windows Server Core. Wtedy możliwe jest tylko zdalne zarządzanie, jednak Hyper-V niekiedy uniemożliwia instalację oprogramowania do zdalnego dostępu. Warto dodać, że ze względów bezpieczeństwa Microsoft zaleca instalację Hyper-V właśnie z Windows Server Core. Użytkownik staje więc przed trudnym dylematem.

Zarządzanie Hyper-V jest możliwe z wykorzystaniem konsoli zarządzania MMC – służy do tego przystawka Hyper-V Manager – lub oprogramowania System Center Virtual Machine Manager. SCVMM ma szereg dodatkowych funkcji, m.in. pozwala na zarządzanie ESX Serverem (za pośrednictwem VirtualCenter). Podobnie jest w przypadku VMware’a. Pojedynczym serwerem ESX można zarządzać, korzystając z jego konsoli administracyjnej lub za pomocą VirtualCenter, oprogramowania do zarządzania farmą ESX Serverów.

Obsługiwane systemy
Oficjalnie wspieranymi systemami w przypadku wirtualnych maszyn Hyper-V są Windows XP, Vista, Server 2003, Server 2008 oraz SUSE Enterprise Linux Server. To ogranicza potencjalne zastosowania, np. przy pomocy Hyper-V nie da się zwirtualizować przestarzałych aplikacji (legacy) pracujących pod kontrolą Windows NT. Owszem, w Hyper-V działają inne systemy oprócz wymienionych, ale nie są objęte wsparciem Microsoftu. W przypadku ESX Servera lista obsługiwanych systemów jest dużo dłuższa i są na niej nawet rzadzko używane systemy, jak FreeBSD, Novell Netware czy Solaris 10 for x86.

Przenoszenie wirtualnych maszyn
VMotion to jedna z najważniejszych funkcji ESX Servera – pozwala na przenoszenie wirtualnych maszyn bez przerywania ich pracy między serwerami fizycznymi. W rzeczywistości występuje krótka przerwa pracy liczona w milisekundach, ale jest nieistotna, ponieważ nie wpływa na pracę przenoszonej wirtualnej maszyny, np. nie powoduje zerwania sesji.

Z kolei użytkownik Hyper-V otrzymuje Quick Migration, funkcję, która wprawdzie pozwala na szybkie przenoszenie maszyn wirtualnych między serwerami, ale wiąże się to z krótkim przerwaniem ich działania. Przerwa trwa od kilkunastu sekund do kilku minut w zależności od rozmiaru pamięci RAM wirtualnej maszyny oraz przepustowości sieci (migawka pamięci wirtualnej maszyny jest przenoszona z jednego serwera na drugi). Funkcja QuickMigration działa tylko w obrębie klastra serwerów i jest dość trudna do skonfigurowania. Microsoft zapowiada, że wprowadzi funkcję LiveMigration, odpowiednik VMotion, która będzie standardową częścią Windows Server 2008 R2.

ESX Server oferuje jeszcze kilka ciekawych funkcji bazujących na VMotion, których nie ma produkt Microsoftu. HA (High Availabilty) przenosi wirtualne maszyny, gdy jeden z serwerów fizycznych ulegnie awarii. Podobną funkcjonalność można osiągnąć w Hyper-V, konfigurując klaster serwerów, jednak jest to trudniejsze zadanie. Możliwe jest też automatyczne równoważenie obciążenia poprzez przenoszenie wirtualnych maszyn na mniej wykorzystywane serwery. To zadanie realizuje DRS (Distributed Resource Scheduler). Hyper-V oferuje wyłącznie NLB, czyli również obciążenia na poziomie sieci. Funkcja ta rozdziela ruch sieciowy między wirtualnymi maszynami wyłącznie na podstawie ilości przesyłanych danych, a nie na podstawie tego, jak obciążony jest serwer fizyczny. Korzystanie z tej funkcji jest możliwe, jeśli system operacyjny w wirtualnej maszynie obsługuje NLB.

VMotion może być też używane na żądanie, np. w celu przeniesienia wszystkich maszyn wirtualnych z wybranego serwera, który wymaga prac naprawczych czy wymiany komponentów sprzętowych.

Unikalną cechą ESX Servera jest funkcja Storage VMotion (SVMotion), która przenosi pliki wirtualnej maszyny między macierzami dyskowymi, nie przerywając jej pracy. To pozwala uniknąć przestojów związanych z pracami konserwacyjnymi przy macierzach czy lepiej wykorzystać dostępną przestrzeń dyskową.

Pamięć, procesor i dyski
Oba rozwiązania obsługują wirtualne dyski SCSI. Warto o tym wspomnieć, bo parę miesięcy temu, gdy Hyper-V było jeszcze w fazie beta, Microsoft informował, że jego produkt nie obsługuje wirtualnych dysków SCSI. Dyski SCSI zapewniają lepszą wydajność niż dyski IDE. Najwyraźniej Microsoft zauważył, że Hyper-V może mieć problemy z zapewnieniem odpowiedniej wydajności.

W wirtualnej maszynie, niezależnie od wybranego rozwiązania, można korzystać z 4 procesorów i 64 GB RAM. Z pewnym zastrzeżeniem. Hyper-V Server 2008 oraz Hyper-V instalowane jako rola w systemie Windows Server 2008 Standard obsługują do 32 GB RAM w fizycznej maszynie, co pozwala na przydzielenie ok. 31 GB RAM wszystkim wirtualnym maszynom.

Backup
Użytkownicy ESX Servera mogą korzystać z funkcji VCB (VMware Consolidated Backup), która z poziomu hypervisora wykonuje kopie zapasowe pracujących wirtualnych maszyn, bez przerywania ich pracy oraz wpływania na wydajność. W Hyper-V również można tworzyć kopie zapasowe pracujących maszyn, co umożliwia usługa VSS (Volume Shadow Copy). Jednak w tym przypadku backup jest wykonywany z poziomu wirtualnej maszyny, co wpływa na jej wydajność.

PODZIEL SIĘ

BRAK KOMENTARZY

ZOSTAW ODPOWIEDŹ