Xen obsługuje typy wirtualizacji
Xen obsługuje uruchamianie dwóch różnych typów gości. Goście Xen są często nazywani jako domU (domeny nieuprzywilejowane). Oba typy gości (PV, HVM) mogą być używane jednocześnie w jednym systemie Xen.
Parawirtualizacja Xen (PV)
Parawirtualizacja to wydajna i lekka technika wirtualizacji wprowadzona przez Xen, później przyjęta również przez inne rozwiązania wirtualizacyjne. Parawirtualizacja nie wymaga rozszerzeń wirtualizacji z CPU hosta. Jednak zdiagnozowani goście wymagają specjalnego jądra, które jest portowane do działania natywnie na Xen, więc goście są świadomi hiperwizora i mogą działać wydajnie bez emulacji lub wirtualnego emulowanego sprzętu. Jądra gości Xen PV istnieją dla systemów operacyjnych Linux, NetBSD, FreeBSD, OpenSolaris i Novell Netware.
Goście PV nie mają żadnego wirtualnego emulowanego sprzętu, ale konsola graficzna jest nadal możliwa przy użyciu guest pvfb (parawirtualnego bufora ramki). Konsolę graficzną gościa PV można oglądać za pomocą klienta VNC lub przeglądarki virt Redhata. W dom0 jest osobny serwer VNC dla PVFB każdego gościa.
Jądro upstream.org Jądra Linuksa od Linuksa 2.6.24 zawierają obsługę gościa Xen PV (domU) opartego na frameworku Linux pvops, więc każde jądro Linuksa może być automatycznie używane jako jądro gościa Xen PV bez żadnych dodatkowych poprawek lub modyfikacji.
Zobacz stronę wiki XenParavirtOps, aby uzyskać więcej informacji na temat obsługi Xen przez Linux pvops.
Xen Pełna wirtualizacja (HVM)
W pełni zwirtualizowani goście HVM (Hardware Virtual Machine) wymagają rozszerzeń wirtualizacji procesora z procesora hosta (Intel VT, AMD-V). Xen używa zmodyfikowanej wersji Qemu do emulacji pełnego sprzętu komputerowego, w tym BIOS, kontrolera dysku IDE, karty graficznej VGA, kontrolera USB, karty sieciowej itp. Dla gości HVM. Rozszerzenia wirtualizacji procesora służą do zwiększenia wydajności emulacji. W pełni zwirtualizowani goście nie wymagają specjalnego jądra, więc na przykład systemy operacyjne Windows mogą być używane jako goście Xen HVM. W pełni zwirtualizowani goście są zwykle wolniejsi niż goście spirtualizowani ze względu na wymaganą emulację.
Aby zwiększyć wydajność, w pełni zwirtualizowani goście HVM mogą skorzystać ze specjalnych parawirusowych sterowników urządzeń, aby ominąć emulację dla We / Wy dysku i sieci. Xen Windows HVM goście mogą korzystać ze sterowników GPLPV opensource. Zobacz stronę wiki XenLinuxPVonHVMdrivers, aby uzyskać więcej informacji na temat sterowników Xen PV-on-HVM dla gości Linux HVM.
KVM wcale nie jest Xenem, to kolejna technologia, w której KVM jest rodzimym modułem jądra Linuksa, a nie dodatkowym jądrem, takim jak Xen. Co czyni KVM lepszym projektem. wadą jest to, że KVM jest nowszy niż Xen, więc może brakować niektórych funkcji.
Xen
to hypervisor działający na metalu (komputer / serwer), a następnie hostujący maszyny wirtualne zwane domenami.Xen PV
Domena jest paravirtualized domeny , oznacza to, że system operacyjny (zazwyczaj mówimy tu linux) został zmodyfikowany, aby uruchomić pod Xen, i nie ma potrzeby, aby rzeczywiście naśladować sprzętu. To powinna być najbardziej wydajna droga, pod względem wydajności.Xen HVM
Domena jest sprzętowy emulowane domeny, co oznacza, że system operacyjny (może być Linux, Windows, cokolwiek) nie został w żaden sposób modyfikowane i sprzętu dostaje emulowane. Jest to raczej powolne, więc zwykle instalujesz sterowniki PV w systemie gościa dla krytycznego sprzętu (zwykle dysku i sieci), więc gość jako całość będzie działał w pełni zwirtualizowany, ale najbardziej krytyczne dla wydajności elementy będą działały parawirtualizowane. Najnowsze systemy Linux mają sterowniki pv zarówno dla dysku, jak i sieci w jądrze, a także istnieją różne sterowniki PV dla systemu Windows. Przy całym rozwoju HVM w ostatnich latach zwykle nie ma różnicy w wydajności między HVM i PV dla standardowych obciążeń.KVM
to nie Xen, to kolejna platforma wirtualizacji wbudowana w jądro Linuksa. Z punktu widzenia gościa przypomina Xen HVM: gość działa w pełni zwirtualizowany i istnieje określony sterownik do uruchamiania niektórych części zdirawiryzowanych (ponownie, dysku i sieci).Zarówno Xen HVM, jak i Linux KVM potrzebują wsparcia wirtualizacji wspomaganej sprzętowo (Intel VT-x, AMD AMD-V), podczas gdy Xen PV nie działa, ale nie może uruchamiać systemów operacyjnych bez wsparcia PV (nie można uruchomić systemu Windows na Xen PV).
Zarówno Xen HVM, jak i Linux KVM będą korzystać z części oprogramowania do wirtualizacji qemu, aby emulować rzeczywisty sprzęt dla urządzeń nieobsługujących sterowników PV w systemie gościa.
Xen (zarówno PV, jak i HVM) może przeprowadzić migrację na żywo działającego gościa z jednego serwera fizycznego na inny, nie wiem, czy KVM też.
Zarówno Xen, jak i KVM nie mogą przeciążać pamięci, więc zazwyczaj dostajesz „prawdziwą pamięć RAM”, podczas gdy inne platformy, takie jak VMware, mogą zamieniać część pamięci RAM na dysk.
Istnieją różnice, ale zwykle dotyczą konkretnych instalacji, a nie ogólnego wirtualnego prywatnego serwera na sprzedaż innym osobom. Na przykład ostatnie hiperwizory Xen obsługują pamięć transcendentną, która mogłaby poprawić wykorzystanie pamięci i wydajność gościa, jeśli gość go obsługuje (jądra Linuksa> = 3. coś).
Wszystkie te technologie zapewnią Ci wspaniałe wrażenia, jeśli zostaną poprawnie wdrożone, i nie zrobią dużej różnicy z twojego punktu widzenia. Oczywiście istnieje tysiące sposobów, które mogą pójść nie tak i nie jest to związane z konkretnym rozwiązaniem do wirtualizacji (np. Gość może być przechowywany na wolnych dyskach, co może zaszkodzić Twojej wydajności).
źródło