|
|
pl:dydaktyka:sitw:2016:xen:lab1 [2016/11/14 17:17] msl [Preliminaria: Debian] |
pl:dydaktyka:sitw:2016:xen:lab1 [2019/06/27 15:50] |
====== XEN: instalacja i zarządzanie gośćmi ====== | |
| |
Celem laboratorium jest zapoznanie się z instalacją i konfiguracją hypervisora Xen. Po zakończeniu laboratorium student powinien rozumieć architekturę, na której oparty jest Xen; potrafić go zainstalować i skonfigurować różne typy maszyn/gości. Ponadto powinien być wstanie wskazać różnice między typami gości z ich zaletami i wadami. | |
| |
===== Preliminaria ===== | |
| |
Jak wszystko na Debianie (jeśli ktoś nie zauważył, pracujemy na Debianie), wymagane programy instalujemy menadżerem paczek ''apt-get''. Krótka instrukcja obsługi dla niewtajemniczonych: | |
<code bash> | |
apt-get install paczka | |
</code> | |
instaluje paczkę. Kiedy w treści laboratorium pojawi się sformułowanie: instalujemy paczkę 'nazwa paczki', należy użyć apt-get'a. | |
| |
===== Lekcja 1: Nazewnictwo ===== | |
| |
Aczkolwiek nazwa ma małą wspólnego ze znaną [[https://www.youtube.com/watch?v=SSsSbZ9OHZk|bohaterką lat 90-tych]], warto zapamiętać, że w obu przypadkach powinno wymawiać się 'X' jako 'z'. Zatem 'zen'. | |
| |
===== Lekcja 2: Z wielką mocą przychodzi wielka odpowiedzialność ===== | |
| |
W związku z tym, że konfiguracja Xena wymaga licznych uprawnień, będą Państwo pracować na koncie root'a. Mogą Państwo zatem wszystko zepsuć. W razie odczuwania nieodpartej potrzeby psucia (tudzież wątpliwości, czy jakaś komenda czegoś nie zepsuje/nie zepsuła) proszę wołać prowadzącego, za egoistyczne psucie "samemu" zostały obmyślone wyrafinowane kary: | |
| |
- brak obecności; | |
- brak zaliczenia; | |
- rozmowa z Dziekanem na temat przyszłości studiowania na tym wydziale. | |
| |
Aby zalogować się na konto root'a, należy wykonać w terminalu polecenie: | |
<code bash>sudo su</code> | |
| |
===== Lekcja 3: Czy nasz sprzęt da radę ===== | |
| |
Xen wspiera (w drobnym uproszczeniu) trzy rodzaje gości: | |
- PV (Paravirtualization) --- goście są świadomi tego, że są tylko gośćmi na maszynie gospodarzy. Nie muszą udawać, że mają prawdziwy sprzęt --- ten typ gości nie wymaga wsparcia sprzętowego dla wirtualizacji. W szczególności mogłoby nawet dojść do tego, że XEN jest zainstalowany na gościu KVM, i posiada gości PV. | |
- HVM (Hardware-Assisted Virtualization) --- tak zwana pełna wirtualizacja. Goście nie są świadomi istnienia gospodarza, trzeba im zatem zapewnić całą infrastrukturę. Wymaga to wsparcia sprzętowego. | |
- PV+HVM --- obie techniki można mieszać, uzyskująć efekt hybrydowy, np. goście HVM mają zainstalowane specjalne sterowniki pozwalające im lepiej pracować w środowisku Xen. | |
| |
Zatem, jeżeli chcemy obsługiwać pełną wirtualizację, musimy sprawdzić czy posiadamy wsparcie sprzętowe. | |
| |
- I metoda (niezalecana): sprawdzić w dokumentacji procesora | |
- II metoda: sprawdzić wyjście komendy: <code bash>lscpu</code> w poszukiwaniu sekcji "Wirtualizacja" (ew. angielski odpowiednik). Powinno znajdować się tam informacja, jakie technologie są wspierane, w przypadku procesora marki AMD, szukamy nazwy 'AMD-V'. | |
- III metoda (zalecana): sprawdzić zawartość pliku ''/proc/cpuinfo'' pod kątem występowania napisów 'vmx' (technologia Intela) lub 'svm' (technologia AMD). Polecamy zastosowanie narzędzi typu ''grep'', ''egrep'', etc. | |
| |
**Pytanie 1**: czy nasz sprzęt wspiera writualizację sprzętową? Jeśli tak, to w jakiej technologii? | |
| |
Jeśli chodzi o inne wymagania sprzętowe, wiele zależy od typu gości. Dobrze byłoby mieć więcej niż jeden rdzeń, np. po jednym na gościa + gospodarz. Poza tym rozsądnie jest założyć, że gość może zużyć około 512MB RAM'u i jakieś 5GB miejsca na dysku twardym. | |
| |
**Pytanie 2:** Czy nasze PC'y wystarczą na spokojne uruchomienie trzech gości? | |
| |
* Podpowiedź 1: proszę posiłkować się narzędziami: ''lscpu'', ''fdisk'', ''free''. | |
* Podpowiedź 2: zanim zaczną Państwo wołać prowadzącego, proszę sprawdzić dokumentację polecenia, np. <code bash>fdisk --help</code> lub <code bash>man fdisk</code> | |
| |
===== Lekcja 3: Konfiguracja sieci ===== | |
| |
Żeby być dobrym gospodarzem, trzeba mieć skonfigurowaną sieć. Xen **nie** zrobi tego za nas. Potrzebujemy mostka ("bridge interface"), który pozwoli nam maszyny gości podpiąć pod fizyczny interfejs sieciowy. Istnieje co najmniej pięć narzędzi potrafiących stworzyć bridge interface: | |
- NetworkManager (nawet z poziomu GUI), | |
- systemd, | |
- komenda ip, | |
- bridgeutils, | |
- zwykły edytor tekstu. | |
| |
Mamy to nieszczęście, że Debian wspiera wszystkie z nich. Użyjemy najprostszej metody (nie znaczy najlepszej). Zacznijmy od instalacji narzędzi ''bridgeutils'' (patrz: [[pl:dydaktyka:sitw:2016:xen:lab1#Preliminaria:|preliminaria]]). | |