Windows Server 2008

Wirtualizacja systemu Windows Server – przegląd funkcji Udostępnij na: Facebook

Opublikowano: 15 października 2007

Zawartość strony
 Wstęp   Wstęp
 Architektura wirtualizacji systemu Windows Server   Architektura wirtualizacji systemu Windows Server
 Współużytkowanie strony pamięci   Współużytkowanie strony pamięci
 Wsparcie procesora w wirtualizacji systemu Windows Server   Wsparcie procesora w wirtualizacji systemu Windows Server

Wstęp

Dzięki wbudowanej technologii wirtualizacji, system Windows Server 2008 pozwala firmom zredukować koszty, poprawić wykorzystanie sprzętu, zoptymalizować infrastrukturę oraz zwiększyć poziom dostępności serwera. Technologia wirtualizacji serwera Windows używa platformy opartej na 64-bitowej technologii hypervisor, co zwiększa niezawodność i skalowalność. Wirtualizacja serwera pomaga firmom zoptymalizować i skonsolidować wykorzystanie zasobów sprzętowych. Technologia ta wykorzystuje takie komponenty platformy Windows Server 2008, jak klastry pracy awaryjnej, aby zapewnić wysoką dostępność, a także komponenty platformy Network Access Protection (NAP), aby umożliwić kwarantannę komputerów wirtualnych w złej kondycji.

Inną formą wirtualizacji jest tzw. wirtualizacja prezentacji, polegająca na wyodrębnieniu warstwy prezentacji aplikacji (czyli interfejsu użytkownika) od systemu operacyjnego. W systemie Windows Server 2008 funkcje bramy usług terminalowych oraz funkcja RemoteApp usług terminalowych umożliwiają scentralizowany dostęp do aplikacji wraz z integracją zdalnych aplikacji na komputerach klientów, lub łatwy dostęp do tych samych zdalnych programów przy użyciu wyszukiwarki sieci Web. Funkcja usług terminalowych umożliwia również dostęp do zdalnych terminali i aplikacji za zaporą internetową.

 Do początku strony Do początku strony

Architektura wirtualizacji systemu Windows Server

Wirtualizacja systemu Windows Server jest oparta na 64-bitowej technologii hypervisor. Hypervisor to minimalna warstwa oprogramowania, które znajduje się między systemem operacyjnym a sprzętem. Hypervisor umożliwia bezproblemowy dostęp do pamięci fizycznej i zasobów procesora wielu wirtualnym komputerom. W połączeniu ze sprzętem obsługującym wirtualizację, czyli procesorami stosującymi technologię Intel VT oraz AMD „Pacifica”, wirtualizacja wykorzystująca hypervisor prowadzi do uzyskania wysokiej wydajności i niemal nieograniczonej skalowalności maszyn wirtualnych.

Wirtualizacja sprzętowa

Jako że hypervisor używany w wirtualizacji systemu Windows Server korzysta z technologii VT i „Pacifica”, większość pracy związanej z wirtualizacją wielu systemów operacyjnych wykonywana jest przez sprzęt systemu, nie zaś przez stos wirtualizacji i hypervisor. Platformy wirtualizacji, które korzystają z programowej emulacji sprzętu, często przerywają pracę maszyn wirtualnych, wykonując bieżące tłumaczenia żądań sprzętu i przekształcając je w formę zgodną ze środowiskiem wirtualizacji. Technologie sprzętu Intel VT i AMD „Pacifica” sprawiają, że wiele z tych tłumaczeń staje się zbędnych dzięki włączeniu rozszerzeń wirtualizacji do architektury x86. Oznacza to, że platformy wirtualizacji, które zaprojektowano dla VT i „Pacifica”, mają mniejsze wymagania sprzętowe, a wirtualne komputery działają wydajniej. Współpraca pomiędzy elementami wirtualizacji sprzętu a komponentami wirtualizacji oprogramowania w wirtualizacji systemu Windows Server prowadzi do uzyskania platformy wirtualizacji o wysokiej wydajności.

Architektura 64-bitowa

Hypervisor używany w wirtualizacji systemu Windows Server oparty jest na technologii 64-bitowej. Wirtualizację systemu Windows Server należy uruchamiać na wersjach x64 systemu Windows Server 2008. Zapewnia ona niemal nieograniczoną skalowalność komputerów wirtualnych. Architektura 64-bitowa może adresować znacznie większą ilość pamięci niż platformy wirtualizacji oparte na architekturach 32-bitowych, zaś serwer-host może pomieścić nawet do 1 terabajta fizycznej pamięci RAM. Każdemu komputerowi wirtualnemu w architekturze wirtualizacji systemu Windows Server można przypisać nawet 32 GB RAM-u. Funkcja dynamicznego przypisywania sprzętu, którą omawiamy w dalszej części tego rozdziału, pozwala na przypisanie każdemu komputerowi wirtualnemu zmiennej wartości RAMu – ponad 32 GB – w zależności od jego potrzeb. Dzięki temu wirtualizowane będą bardziej wymagające zadania, co pozwoli w pełni korzystać z możliwości obsługi wielu wirtualnych komputerów i systemów operacyjnych. Dzięki tej elastyczności w przypisywaniu zasobów, wiele systemów wirtualnych może być połączonych na jednym komputerze-hoście, a każdy z nich może funkcjonować bez większego uszczerbku na wydajności.

Wsparcie dla 64-bitowych systemów komputerów wirtualnych

64-bitowy hypervisor stosowany w wirtualizacji systemu Windows Server obsługuje zarówno 32-bitowe, jak i 64-bitowe wirtualne systemy operacyjne. Niektóre aplikacje mogą być dostępne tylko w wersjach 32-bitowych, a inne mogą być dostępne tylko w wersjach 64-bitowych (na przykład aplikacja biznesowa może być dostępna w wersji 32-bitowej, zaś Microsoft Exchange Server 2007 dostępny jest tylko jako aplikacja 64-bitowa). Zarówno 32-bitowe, jak i 64-bitowe komputery wirtualne mogą funkcjonować równolegle na tym samym serwerze wirtualizacji systemu Windows Server. Ta elastyczność jest podstawową zaletą hypervisora używanego w wirtualizacji systemu Windows Server. 64-bitowy hypervisor tworzy podstawę wirtualizacji, która wspiera wszelkie przyszłe ścieżki wzrostu, którymi zamierza podążać firma.

Partycjonowanie systemu operacyjnego

Funkcja wirtualizacji systemu Windows Server przypisuje zasoby sprzętu systemu głównego wielu komputerom wirtualnym, używając partycji. Partycja to lokalny wycinek serwera głównego, który zawiera pojedynczy system operacyjny. Partycja główna zawiera stos wirtualizacji, który kieruje pamięcią i wirtualnymi narzędziami partycji pochodnej. Partycje pochodne to komputery wirtualne. W wirtualizacji systemu Windows Server istnieje limit pozwalający na konfigurację tylko jednej partycji głównej (wystąpienie Windows Server 2008 x64 lub instalacja Server Core systemu Windows Server 2008 x64), oraz nieograniczoną liczbę partycji pochodnych.

Partycja główna kontroluje klawiaturę, myszkę i monitor podłączone do głównego serwera wirtualizacji. Partycja główna zawiera także dostawcę Windows Management Instrumentation (WMI), co ułatwia zarządzanie wszystkimi aspektami środowiska wirtualnego. Dodatkowo w partycji głównej zawarte są wszelkie sterowniki sprzętu pochodzącego od niezależnych dostawców potrzebne sprzętowi systemu głównego. Partycja pochodna tworzy logiczny kontener dla systemu operacyjnego, aplikacji i plików z danymi związanych z komputerem wirtualnym. Partycja pochodna posiada ograniczony dostęp do sprzętu serwera głównego i w celu uzyskania dostępu do sprzętu musi korzystać z modelu współużytkowania zwanego VMBus, omawianego w dalszej części tego rozdziału.

Architektura hypervisora oparta na technologii mikrojądra

Hypervisor używany w wirtualizacji systemu Windows Server działa na tych samych zasadach, co systemy operacyjne oparte na technologii mikojądra. Dokładniej mówiąc, sterowniki systemów operacyjnych i inne komponenty narażone na atak są uruchamiane na mniej uprzywilejowanej płaszczyźnie, co oznacza, że źle działający lub zaatakowany komponent nie prowadzi do znacznych lub żadnych uszkodzeń jądra. Hypervisor stosuje podobną technologię do utworzenia wymaganego zestawu Trusted Computing Base, który nie zawiera żadnych własnych sterowników (zawarte są one w partycji głównej i w partycjach pochodnych). Architektura hypervisora z mikrojądrem to stabilniejsza, bezpieczniejsza baza dla wirtualnych komputerów, zwłaszcza, gdy porówna się ją z platformami wirtualizacji działającymi na zasadzie hypervisora monolitycznego – takiego, który włącza sterowniki sprzętu do swojej bazy kodów.

Poniższa ilustracja przedstawia architekturę wirtualizacji Windows Server.

Rys. 1. Architektura wirtualizacji Windows Server.

 Do początku strony Do początku strony

Współużytkowanie strony pamięci

Współużytkowanie strony pamięci to funkcja wirtualizacji systemu Windows Server, która służy do maksymalizowania wykorzystania pamięci komputera wirtualnego. Gdy dwa komputery wirtualne mają identyczne strony zachowane w pamięci, funkcja wirtualizacji będzie zachowywać pojedynczą kopię tej strony i stosować kopiowanie przy zapisie, usprawniając w ten sposób wprowadzania zmian do wspólnej strony przez systemy wirtualne. Na przykład, gdy host obsługuje dziesięć komputerów wirtualnych z tym samym systemem operacyjnym, jest bardzo prawdopodobne, że mają one wiele wspólnych stron pamięci. Wirtualizacja systemu Windows Server odnajduje te identyczne strony i dzieli je pomiędzy wszystkimi komputerami wirtualnymi. Wydajność współużytkowania stron będzie się różnić w zależności od tego, jak jednorodne lub różnorodne są zadania komputerów. Na przykład wydajność opcji dzielenia stron będzie lepsza w wypadku, gdy dziesięć komputerów wirtualnych ma identyczne systemy operacyjne, niż w wypadku, gdy są one różne. Dzielenie stron będzie działać z każdym systemem operacyjnym komputera wirtualnego i usprawni wykorzystanie zasobów pamięci serwera głównego.

 Do początku strony Do początku strony

Wsparcie procesora w wirtualizacji systemu Windows Server

Nowoczesny sprzęt serwerowy jest dostępny z wieloma typami procesora. W gniazdach na płycie głównej można umieścić procesory wielordzeniowe. Wydajność procesorów w wirtualizacji systemu Windows Server zależy przede wszystkim od liczby i prędkości dostępnych rdzeni procesorów. Na przykład dwa gniazdka zawierające procesory dwurdzeniowe udostępniają cztery rdzenie procesorów. Liczba gniazdek procesorów, które mogą być użyte, zależy od wersji zainstalowanego systemu Windows Server 2008. W poniższej tabeli przedstawiono przykładowe wsparcie dla procesorów.

Tabela 1. Przykładowe wsparcia procesora wedle konfiguracji procesora i wersji systemu operacyjnego
Procesory System operacyjny partycji głównej Wynik
Dwa gniazda, procesory dwurdzeniowe Windows Server 2008 Standard x64

Partycja główna używa czterech rdzeni procesorów.

Każdej partycji pochodnej można przypisać do 8 procesorów logicznych.

Osiem gniazd, procesory dwurdzeniowe Windows Server 2008 Standard x64

Partycja główna używa szesnastu rdzeni procesorów.

Każdej partycji pochodnej można przypisać do 8 procesorów logicznych.

Dwa gniazda, procesory czterordzeniowe Windows Server 2008 Enterprise x64

Partycja główna używa ośmiu rdzeni procesorów.

Każdej partycji pochodnej można przypisać do 8 procesorów logicznych.

Sześć gniazd, procesory dwurdzeniowe Windows Server 2008 Enterprise x64

Partycja główna używa ośmiu rdzeni procesorów.

Każdej partycji pochodnej można przypisać do 8 procesorów logicznych.

Uwaga:

  1. Windows Server 2008 Standard Edition x64 może użyć do czterech gniazd procesora
  2. Windows Server 2008 Enterprise Edition x64 może użyć ośmiu gniazd procesora
  3. Windows Server 2008 Datacenter Edition x64 może użyć do szesnastu gniazd procesora

Funkcja wirtualizacji systemu Windows Server przedstawia komputerom wirtualnym rdzenie procesorów jako procesory logiczne. Serwer zawierający cztery gniazda zapełnione czterordzeniowymi procesorami zawiera 16 rdzeni procesorów. Rdzenie te mogą zostać przedstawione komputerom wirtualnym jako procesory logiczne. Każdy komputer wirtualny może być skonfigurowany z maksymalnie ośmioma procesorami logicznymi. Każdy procesor logiczny przekształca obciążenie obliczeniowe komputerów w wątek wykonania na fizycznym procesorze w serwerze-hoście.

Tabela 1 pokazuje możliwe konfiguracje oraz powstające możliwości przypisania procesorów w poszczególnych konfiguracjach. Liczba procesorów, jakich można użyć w danej partycji pochodnej, zależy od zainstalowanego w niej systemu operacyjnego.

 Do początku strony Do początku strony

Windows Server 2008