Instalacja XCP-NG i Xen-Orchestra w 2024

Wstęp

Zanim zabierzemy się do zabawy najpierw powiem kilka słów wstępu, potem opowiem, co będzie nam potrzebne i płynnie przejdziemy do tego, jak krok po kroku zainstalować nasz serwer XCP-NG. Zainstalujemy na nim Xen-orchestra, a na koniec rozpoczniemy instalację jakiejś maszyny wirtualnej. Tylko zaczniemy, ponieważ sama instalacja, czy to Linuxa czy Windowsa, jest poza zakresem tego materiału. Dodatkowo, nieśmiało zakładam, że jak zabieracie się za wirtualizację, to wiecie jak zainstalować Windowsa. Uprzedzając ewentualne uwagi, spokojnie jestem sobie w stanie wyobrazić bardzo wiele poszczególnych przypadków, w których przytoczone zalecenia okażą się najdelikatniej rzecz ujmując nietrafione. W tym materiale chciałem się skupić na prostym rozwiązaniu testowym, od którego można zacząć przygodę z wirtualizacją. Zarówno XCP-NG jak i XEN-Orchestra są rozwiązaniami Open Source i ich użytkowanie nie wiąże się z licencjami i jest darmowe, do celów zarówno testowych jak i komercyjnych. Możecie po prostu ściągać i używać. Jednak, jeśli potrzebujecie pewności, że otrzymacie wsparcie nawet w najbardziej nieoczekiwanych problemach, to zachęcam również wykupić płatne wsparcie bezpośrednio u twórców oprogramowania

XCP-NG wymagania – CPU

Zaczynając od wymagań dla wirtualizatora XCP-NG, to techniczne minimum dla procesora jest to 1,5GHz,  64-bity z serii x86.  Zaleca się jednak wielordzeniowe 2 GHz lub szybsze.

W zasadzie, dla rozwiązań testowo-laboratoryjnych, każdy współczesny procesor klasy serwerowej będzie zdecydowanie wystarczający.  Tutaj jeszcze jedna rzecz, która może Wam oszczędzić trochę czasu, upewnijcie się, że te funkcje są włączone w BIOS.

Jeśli chodzi o praktyczny dobór procesora do rozwiązań produkcyjnych, to już będzie to zależało od tego, co będziemy chcieli hostować, no i od co bardziej prozaiczne, od budżetu. Ale to już daleko wykracza poza ten materiał, gdzie chcemy się skupić na uruchomieniu testowego rozwiązania. 

Wyjątkiem odnośnie niewielkich wymagań  do procesora będzie potrzeba uruchomienia Windowsa 11 jako gościa, ale o tym później.

XCP-NG wymagania – RAM

Jeśli chodzi o wymagania RAM dla XCP-NG to mówi się o minimum technicznym 2 GB RAM a zalecane 4 GB RAM.

W praktyce są to wymagania głównie dla samego wirtualizatora. W skrócie, na początek potrzebujecie 4 GB RAM plus tyle RAM ile chcecie przyznać swoim maszynom wirtualnym.  

XCP-NG wymagania – dyski systemowe

Dla XCP-NG potrzebna pojemność dysków to minimum 46 GB a zalecenia mówią o 70 GB.

W praktyce jakieś 128GB SSD w zupełności wystarczy do laboratorium, ale i do produkcyjnej pracy też powinno być ok, choć oczywiście w takim wypadku zalecam podwójne dla redundancji.

Uprzedzam również z góry pytania, zabawa i kartami SD i pamięciami USB jest zdecydowanie niewskazana ze względu na wydajność.

Pamiętajmy jednak, że to jest miejsce na sam system XCP-NG. Na przechowywanie dysków maszyn wirtualnych będziemy potrzebowali zdecydowanie więcej miejsca i pewnie zupełnie osobne dyski czy nawet serwer.  

XCP-NG wymagania – dyski dla VM

Na przechowywanie dysków maszyn wirtualnych w XCP-NG  jest kilka sposobów. Najprostszym, ale raczej głównie pod testy, jest umieszczenie ich na tym samym dysku, co system. W takim wypadku potrzebujemy jakiś dysk SSD o wielkości 70 GB na system, plus ilość miejsca, jakie chcecie przeznaczyć na dyski dla waszych maszyn wirtualnych. Tutaj bardzo ważna uwaga, jeśli będziecie chcieli korzystać ze snapshotów, a w praktyce nawet jak robicie backup i korzystacie ze snapshotów, to potrzebujecie przynajmniej dwa razy więcej miejsca niż będą miały dyski Waszych maszyn wirtualnych.    

W bardziej praktycznych zastosowaniach jednak zalecałbym oddzielić dyski systemowe i dyski na przechowywanie maszyn wirtualnych. XCP-NG samo w sobie również obciąża dyski, a nie chcemy doprowadzić do sytua   cji, gdzie nasze maszyny wirtualne obciążając dyski spowodują problemy całego wirtualizatora. Na ogół stosuje się osobny zestaw dysków lub przy nieco większych wymaganiach zewnętrzne magazyny danych. Na poziomie zestawu testowego w tym materiale świadomie szerokim łukiem omijam kwestie wydajności dysków, która w rzeczywistym świecie jest często prawdziwą bolączką. 

Pamiętajcie jeszcze, że XCP-NG sam z siebie nie zadba, czy nie wymusi redundancji dysków. Sami musimy, warstwę niżej zadbać o to, żeby zarówno dyski systemowe jaki zasoby dyskowe na dyski wirtualnych maszyn posiadały redundancję. Niech to będzie chociażby jakiś RAID czy ZFS, lub redundancja na poziomie macierzy dyskowej. Cokolwiek co sprawi, że pierwsza lepsza awaria dysku nie przysporzy nam bólu głowy.

XCP-NG wymagania – sieć

Do połączenia naszego XCP-NG przyda się jakaś karta sieciowa. Wymagania mówią o 100Mb ale bądźmy realistami, jednak już 1Gb to testów powinien wystarczyć.  W praktycznych wypadkach będziemy już potrzebowali minimum dwóch kart sieciowym ze względu na redundancję.

Jeśli zamierzacie używać sieciowych magazynów danych, migrować maszyny wirtualne, czy robić backup większych maszyn wirtualnych rozważyłbym połączenia 10Gb lub więcej. Dla nieco większych zestawów, dla zapewnienia płynności działania, zaleca się, żeby ruch między XCP-NG w dyskiem sieciowym odbywał się dedykowanym połączeniem czy też połączeniami.

XCP-NG wspierane systemy

No dobra, ale jak już będę miał ten XCP-NG to co będę mógł na nim odpalić zapytacie?
W zasadzie dosyć sporo, choć nie wszystko. Na chwilę obecną XCP-NG jako wirtualizator wspiera jako system gości, całą rodzinę systemów Linux jak RedHAT, CentOS, cała rodzina Debian i Ubuntu, SUSE, Apline i wiele innych. Z bardzo dużym prawdopodobieństwem, jak coś jest Linux, to zadziała. XCP-NG wspiera również FreeBSD czy OpenBSD więc spokojnie możemy witualizaować takie systemu jak TrueNAS CORE czy pfSense.

Z systemów z rodziny Windows to mamy wsparcie dla Windows serwer 2012 do 2022 a z domowych to Windows 10. Niestety na chwilę obecną nie ma wsparcia dla Windows 11. Tak to trochę słabo, zwłaszcza, że już zaczyna być głośno o końcu wsparcie dla Windows 10 no i w sklepach można już kupić tylko Windows 11. Tak wiem, że można to zrobić manipulując rejestrem, ale o tym nie teraz.

To sytuacja na lipiec 2024, kiedy XCP-NG wersja produkcyjna to 8.2.1. Wspominam o tym z dwóch powodów. Po pierwsze wersja 8.2 za niecały rok wchodzi w etap End Of Live. Co się nieuchronnie wiąże z drugą sprawą, czyli długo wyczekiwaną wersją 8.3 która powinna się ukazać niedługo. W tym miesiącu ukazała wersja 8.3 Beta2. A to jest ważne, ponieważ z wersją 8.3 wchodzi wsparcie dla Windows 11 rozwiązujące problem modułu szyfrującego TPM przez wprowadzenie wirtualnego vTPM. Można instalować i testować nie jest to jednak jeszcze wersja produkcyjna.

Niestety, problem nieco sztucznych, a na pewno budzących wiele dyskusji wymagań odnośnie procesora nadal pozostanie rozwiązywać przez zakup serwerów z nowymi procesorami na cele laboratorium (mało fajne) lub przez manipulację rejestrem.

Zapraszamy na materiał wideo po szczegóły.