Xen

Xen

Logo Xen
Xen zrzut ekranu.png
Podstawowe dane

deweloper Fundacja Linuksa
Rok wydania 9 września 2003 r.
Aktualna  wersja 4.15
(8 kwietnia 2021)
system operacyjny wieloplatformowy
język programowania C.
Kategoria Wirtualizacja
Licencja GPL ( wolne oprogramowanie )
niemieckojęzyczny nie
xenproject.org

Xen ( wymowa : [ ˈzɛn ]), także Xen Project (w przeciwieństwie do opartych na nim komercyjnych produktów), to hypervisor , czyli oprogramowanie pozwalające na obsługę kilku wirtualnych maszyn na jednym fizycznym komputerze. Został stworzony na Uniwersytecie Cambridge w Wielkiej Brytanii, a obecnie jest dalej rozwijany przez amerykańską firmę Citrix Systems . Nazwa pochodzi od przedrostka xeno (od starożytnego greckiego ξένος xénos „obcy, gość”).

Szczegóły techniczne

Xen to hiperwizor typu 1 (zwany także Virtual Machine Monitor, VMM ), który działa bezpośrednio na sprzęcie . Xen może uruchamiać kilka systemów operacyjnych na maszynach wirtualnych, tzw. domenach . Ani hiperwizor, ani inne domeny nie są „widoczne” dla tych systemów operacyjnych. W zasadzie procedura jest porównywalna z pamięcią wirtualną i procesami : Z pamięcią wirtualną każdy proces (tu: system wirtualny) może korzystać z pamięci tak, jakby był jedynym procesem wykonywanym przez system operacyjny. Dokładniej: hiperwizor przypisuje części całej pamięci głównej do systemu wirtualnego. Pojawiają się one w systemie wirtualnym jako ciągła przestrzeń adresowa, tak jak pamięć fizyczna pojawia się w systemie niewirtualnym. Może być używany odpowiednio i wyłącznie przez system wirtualny.

Pierwsza domena uruchomiona przez Xen ma specjalne znaczenie: ta domena jest uprzywilejowana i służy do interakcji z rzeczywistym hiperwizorem. Domena uprzywilejowana o nazwie Dom0 może uruchamiać i zatrzymywać inne domeny oraz zarządzać nimi. W tym celu ta funkcja zarządzania musi być zintegrowana z systemem operacyjnym działającym w Dom0.

Aby zachować pełną przejrzystość dla nieuprzywilejowanych domen, często nazywanych DomU , Xen wymaga procesora głównego z rozszerzeniem zestawu instrukcji Secure Virtual Machine , takiego jak Intel VT lub AMD-V . Dzięki temu sprzętowi systemy operacyjne działające w domenach nie muszą być dostosowywane - nie „zauważają”, że faktycznie dzielą sprzęt z innymi systemami. Ten tryb działania jest znany jako pełna wirtualizacja lub sprzętowa maszyna wirtualna (HVM). Jeśli wirtualizacja jest przeprowadzana na innym sprzęcie, odpowiednie jądra mają pełny dostęp do sprzętu i mogą uzyskać dostęp do zasobów zewnętrznych (np. pamięci głównej) z powodu wadliwego lub złośliwego kodu, co jest niepożądane ze względu na stabilność i bezpieczeństwo.

Wydajność systemów zwirtualizowanych można zwiększyć, integrując obsługę działania jako DomU z systemem operacyjnym. Takie podejście nazywa się parawirtualizacją i wymaga modyfikacji systemu, który ma działać w DomU.

Obsługiwane systemy operacyjne

Jądro Linux w wersji 2.6.21 warunki dla funkcjonowania pod każdym hypervisor w postaci tzw ops paravirt gotowych. Od wersji 2.6.23 zintegrowane jest ograniczone wsparcie dla działania pod Xen. Jednak ta podstawowa obsługa nie obsługiwała wielu możliwości Xen, na przykład (dynamicznego) pass-through urządzeń PCI czy dynamicznego rozszerzania pamięci. Od wersji 3.0 jądra w pełni obsługuje Xen.

Xen w wersji 9.3 lub nowszej jest zintegrowany z dystrybucjami Linuksa openSUSE oraz w wersji 4 lub nowszej w Fedorze . Xen jest również zawarty w Novell / SUSE Linux Enterprise Server (SLES) od wersji 10 oraz w Red Hat Enterprise Linux  5 (RHEL5). Debian zawiera jądro Xen od wersji 4 ( Etch ) oraz Ubuntu od wersji 12.04 ( Precise Pangolin ). Gentoo Linux i Arch Linux oferują pakiety dla pełnej obsługi Xen.

W wersjach do Xen 3.x tylko „oficjalny” kod źródłowy jądra Linux z Xen może być używany do działania jako Dom0 lub jako pełnoprawny natywny DomU, który jest dostępny tylko w wersji 2.6.18.8. Ze względu na aktywny rozwój jądra Linuksa, łata dla tej wersji nie może być zastosowana do obecnego jądra bez znacznego wysiłku. Czasochłonna praktyka dostosowywania łat Xen do nowszych wersji, na przykład przez Debiana, została przerwana.

Od Xen 4.0, Xen obsługuje również domyślnie standardową opcję jądra PVOps dla swojego jądra dom0 w wersji jądra 2.6.31.x. Wersja długoterminowego wsparcia (LTS) jest również dostępna pod pvops i jądrem Linuksa 2.6.32.x dla jądra dom0. Mimo to nadal zachowana jest kompatybilność z poprzednim jądrem 2.6.18 i planowane są kolejne łaty Xen dla tej wersji, a także dla niektórych jąder z łatami forward (np. jądro z RHEL 5.x).

NetBSD  2.0 obsługuje Xen 1.2 jako host i gość oraz Xen 2.0 tylko jako gość, wersja NetBSD 3.1 w pełni obsługuje Xen 2.0, tj. jako host i gość oraz Xen 3.0 jako gość. Xen 3.0 jest w pełni obsługiwany od wersji NetBSD 4.0.

Na początku października 2007 Sun w pełni zintegrował Xen z OpenSolarisem w Nevadzie w wersji 75 pod nazwą xVM (wersje testowe istniały wcześniej).

Na konferencji Novell BrainShare w 2005 r. Novell zaprezentował port z Netware na Xen.

Pracujemy nad przeniesieniem ReactOS na Xen od 2005 roku.

Zwolennicy i współpraca

Do zwolenników Xen należą globalnie aktywne grupy IT - pod tym dachem zjednoczone są nawet silnie konkurujące ze sobą firmy, w tym: Microsoft , Oracle , Intel , AMD , IBM , HP , Red Hat i SUSE .

Oprogramowanie open source Xen zostało pierwotnie opracowane na Uniwersytecie w Cambridge. Dzięki XenSource programiści założyli firmę, której celem jest uczynienie Xen standardem branżowym . Firma XenSource została przejęta w sierpniu 2007 roku za 500 milionów dolarów przez firmę Citrix Systems .

Na początku 2013 roku Xapi wraz z Xen.org zostały przeniesione z powrotem do projektu Xen, który działa pod parasolem Linux Foundation. Xapi jest zatem dzisiaj podprojektem projektu Xen.

Produkty komercyjne

Produkty Citrix XenServer i XenClient są oparte między innymi na Xen.

Wersje

wersja publikacja Uwagi
1,0 9 września 2003 r.
2,0 5 listopada 2004 r.
3,0 5 grudnia 2005

Następujące funkcje zostały również dodane do wersji 3.0.4:

3.1 18 maja 2007 r.
3.2 17 stycznia 2008 Przejście PCI i tryb gotowości ACPI-S3 dla systemu hosta.
3,3 24 sierpnia 2008 Ulepszenia przepuszczania PCI i zarządzania energią.
3.4 18 maja 2009 Zawiera pierwszą wersję „Inicjatywy Klienta Xen”, w skrócie XCI.
4.0 7 kwietnia 2010 Tworzy warunki wstępne do używania jądra dom0 zaimplementowanego przy użyciu PVOps. Specjalnie do tego celu przystosowano jądro w wersji 2.6.31, ponieważ funkcje oficjalnego jądra opartego na PVOps nie obsługują jeszcze działania jako dom0 (stan na lipiec 2010).
4.1 25 marca 2011 Między innymi: obsługa ponad 255 procesorów, poprawiona stabilność.
4.2 17 września 2012 Między innymi nowe standardowe narzędzie do zarządzania (XL zamiast xend), wsparcie dla większych systemów (do 4095 procesorów), dalszy rozwój podsystemu bezpieczeństwa oraz dążenie do poprawy dokumentacji.
4.3 9 lipca 2013 r. Eksperymentalne wsparcie dla wirtualizacji ARM, planowanie zgodne z NUMA, wsparcie dla openvswitch jako mechanizmu mostkowania, zwiększone bezpieczeństwo, przepuszczanie PCI.
4.4 10 marca 2014 Gotowa na produkt obsługa ARM, stabilna obsługa „libvirt” dla „libxl”, skalowalny interfejs kanału zdarzeń, zagnieżdżona wirtualizacja na sprzęcie Intela.
4,5 14 stycznia 2015 r. Lean code, nowe rozszerzenie PVH, xf lub libxf zamiast xen
4,6 13 października 2015
4,7 20 czerwca 2016
4,8 5 grudnia 2016
4,9 28 czerwca 2017
4.10 12 grudnia 2017 r.
4.11 10 lipca 2018 r.

Zobacz też

literatura

  • Andrej Radonic, Frank Meyer, Thomas Halinka: Xen 3.2 . Verlag Franzisa, Poing 2008, ISBN 978-3-7723-7247-6 .
  • Timo Benk, Henning Sprang, Jarosław Zdrzałek, Ralph Dehner: Xen - wirtualizacja pod Linuksem . Open Source Press, Monachium 2007, ISBN 978-3-937514-29-1 .
  • Hans-Joachim Picht: Książka kucharska Xen . O'Reilly Verlag, Kolonia 2009, ISBN 978-3-89721-729-4 .
  • Marcus Fischer: Xen - obszerny podręcznik . Galileo Press, Bonn 2009, ISBN 978-3-8362-1118-5 .
  • David Chisnall: Ostateczny przewodnik po hipernadzorcy Xen . Prentice Hall Press, Upper Saddle River, NJ, USA 2007, ISBN 978-0-13-234971-0 .

linki internetowe

Administracje graficzne

Administracje dla konsoli

  • XEN-SHELL2 — lekkie, oparte na konsoli zarządzanie Xen VM dla wielu użytkowników

Indywidualne dowody

  1. https://wiki.xenproject.org/wiki/Xen_Project_4.15_Release_Notes
  2. ^ Nowy Linux robi inkluzywną wirtualizację , 27 kwietnia 2007
  3. Peter Siering: Xen / c't Debian Server (box "Xen and the Linux Kernel"), c't 19/2008, s. 222 lub online ( Memento z 2 września 2008 w Internet Archive )
  4. http://www.netbsd.org/ports/xen/howto.html
  5. Społeczność OpenSolaris: Xen ( Pamiątka z 29 września 2009 w Internet Archive )
  6. Artykuł Port Xen ( notatka z 22 listopada 2008 w Internet Archive ) w ReactOS Wiki
  7. Xen / Lista xen-announce Archives. Źródło 4 grudnia 2020 .
  8. Wydano Xen 2.0 [LWN.net]. Źródło 4 grudnia 2020 .
  9. heise online: Wydano oprogramowanie do wirtualizacji Xen 3.0. Źródło 4 grudnia 2020 .
  10. Wznowienie wirtualizacji: Xen 3.0. W: LinuxCommunity. 5 grudnia 2005, udostępniono 4 grudnia 2020 (niemiecki).
  11. Komunikaty prasowe. XenSource, Inc., 5 grudnia 2005, archiwum z oryginałem na 10 grudnia 2005 roku ; udostępniono 10 stycznia 2015 r .
  12. xen-users ( Memento z 1 października 2011 w Internet Archive )
  13. http://lists.xensource.com/archives/html/xen-devel/2006-10/msg00733.html
  14. http://lists.xensource.com/archives/html/xen-devel/2006-12/msg00889.html
  15. Wydano [Xen-devel] Xen 3.1! - Źródło Xen. Źródło 4 grudnia 2020 .
  16. Wydano Xen 3.2. W: Magazyn Linux. 17 stycznia 2008, udostępniono 4 grudnia 2020 (niemiecki).
  17. heise online: Hypervisor Xen 3.3.0 jest dostępny do pobrania. Źródło 4 grudnia 2020 .
  18. ^ Społeczność - Citrix. Dostęp 4 grudnia 2020 r .
  19. Wydano Xen 3.4. Źródło 4 grudnia 2020 .
  20. heise online: Wirtualizacja: Xen szuka połączenia z wersją 4. Źródło 4 grudnia 2020 .
  21. http://www.xen.org/files/Xen_4_0_Datasheet.pdf
  22. http://blog.xen.org/index.php/2011/03/25/xen-4-1-releases/
  23. http://blog.xen.org/index.php/2012/09/17/xen-4-2-0-released/
  24. http://blog.xen.org/index.php/2013/07/09/xen-4-3-0-released/
  25. http://wiki.xenproject.org/wiki/Xen_4.3_Feature_List
  26. https://www.heise.de/newsticker/meldung/Virtualisierer-Xen-4-3-jetzt-auch-fuer-ARM-1914140.html
  27. http://blog.xen.org/index.php/2014/03/10/xen-4-4-released/
  28. Lista funkcji Xen Project 4.4 - Xen. Źródło 4 grudnia 2020 .
  29. Heise online: Xen 4.4: maszyny wirtualne dla ARM. Źródło 4 grudnia 2020 .
  30. ^ Russell Pavlicek: Xen Project Hypervisor zapewnia zwiększoną wydajność i bezpieczeństwo dla przetwarzania w chmurze i dla przedsiębiorstw. W: Projekt Xen. 14 stycznia 2015, dostęp 4 grudnia 2020 (amerykański angielski).
  31. https://blog.xenproject.org/2015/10/13/xen-4-6/
  32. a b Wersja Xen Project 4.7 i 4.6.3 | Blog projektu Xen. Pobrano 6 kwietnia 2017 r. (Amerykański angielski).
  33. Co nowego w Xen Project Hypervisor 4.9? Blog projektu Xen. Źródło 19 stycznia 2018 (amerykański angielski).
  34. ^ Co nowego w Xen Project Hypervisor 4.10 | Blog projektu Xen. Źródło 19 stycznia 2018 (amerykański angielski).