XEN: O różnych rodzajach gości
Gość w DomU, host w Dom0.
— Stare przysłowie polskie.
Celem laboratorium jest zapoznanie się z różnicami między maszynami parawirtualizowanymi i wirtualizowanymi sprzętowo, ich konfiguracją i oraz migracją z istniejących maszyn.
Preliminaria
Proszę zalogować się na konto roota i wykonać następującą komendę:
cd /home/student/sitw && ./prepare_xen_lab2.sh && update-grub && reboot
Po ponownym uruchomieniu komputera powinien włączyć się znajomy już Xen.
Podczas laboratorium przydatna może okazać się dokumentacja Xen'a. Naprawdę
Lekcja 1: Parawirtualizacja
Naszym celem jest postawienie tej samej maszyny, co na poprzednim laboratorium, z jedną drobną różnicą, zamiast lvm użyjemy obrazu dysku. Żeby przyśpieszyć proces, zaimportujemy maszynę z istniejącego już obrazu dysku.
Zadanie 1: Korzystając z polecenie xen-create-image
, proszę stworzyć domenę spełniającą podane warunki:
nazwa hosta: „lab2-pvm”
pamięć 512MB
dwa wirtualne procesory
sieć skonfigurowaną statycznie:
adres ip: 10.0.0.2
brama: 10.0.0.1
maska: 255.255.255.0
broadcast: 10.0.0.255
dystrybucja debian jessie
zapis obrazu używając zwykłego katalogu o ścieżce '/home/student/sitw'
komenda ma nie instalować systemu
Pytanie: Podczas tworzenia maszyny pojawiło się kilka błędów. Skąd one wynikają?
W pliku konfiguracji domeny można zobaczyć, jakie ścieżki prowadzą do plików będących partycjami tej domeny.
Zadanie 2: Zastąpić nowo powstały dysk plikiem pvm/disk.img
z katalogu /home/student/sitw/images
. Proszę użyć komendy dd
zamiast cp
:
dd if=<ścieka źródłowa> of=<ścieżka docelowa> bs=8M status=progress
Zadanie 3: Nie znamy hasła roota do instalacji na pvm/disk.img
. Proszę je ustawić ręcznie na xena
(tip: komendy mount -o loop
, chroot
i passwd
).
Zadanie 4: Proszę stworzyć i uruchomić domenę. Hasło root'a: xena
.
Lekcja 2: Wirtualizacja sprzętowa
Instalacja gościa sprzętowego przebiega trochę inaczej. Przypomina dużo bardziej instalację zwykłego systemu operacyjnego. Najpierw należy przygotować konfigurację maszyny. W tym celu proszę skopiować przykładową konfigurację domeny typu hvm (z katalogu /etc/xen/
) do nowego pliku /etc/xen/lab2-pvhvm.cfg
.
Zadanie 4: Należy wprowadzić do pliku pewne zmiany:
nazwa gościa powinna brzmieć lab2-pvhvm
powinien mieć 512MB ramu
sieć skonfigurowaną statycznie:
powinien mieć dwa dyski twarde na wzór konfiguracji lab2-pvm
(proszę pamiętać o zmianie ścieżek)
dysk swap powinien mieć nazwę xvdb
dysk root powinien mieć nazwę xvda
same dyski utworzymy w kolejnych krokach
powinien mieć napęd cdrom z zamontowanym plikiem /home/student/sitw/images/debian_installer.iso
:
wget -O /home/student/sitw/images/debian_installer.iso http://cdimage.debian.org/debian-cd/8.6.0/amd64/iso-cd/debian-8.6.0-amd64-netinst.iso
Podpowiedź: napęd cdrom nazywa się hdc:cdrom
. Więcej w dokumentacji.
powinien korzystać z vnc do dzielenia ekranu
powinien najpierw bootować stację cdrom
podpowiedź: składnia plików konfiguracyjnych maszyn jest opisana w dokumentacji xl.cfg
Teraz potrzebujemy tylko dysków twardych, żeby móc zainstalować system. Aby stworzyć plikopartycję, można posłużyć się poleceniem dd
, które służy do najprostszego kopiowania bajt po bajcie (blok po bloku). Plikopartycja, to nic innego jak pusty plik, który ma zadaną wielkość. Aby stworzyć plik, który ma służyć za partycję swap o rozmiarze 128MB, można posłużyć się poleceniem:
dd if=/dev/zero of=./swap.img bs=1024k seek=128 count=0
gdzie:
if
to źródło, w tym przypadku źródło zer
of
to strumień wyjściowy
bs
to rozmiar kopiowanego bloku
seek
ile bloków można pominąć, bo nie są nic warte (przyśpiesza sprawę)
count
ile bloków skopiować
Zadanie 5: Proszę wygenerować puste pliki partycji, jedną 4GB na roota, drugą 128MB na swap i umieścić je w ścieżkach wskazanych wcześniej w pliku konfiguracyjnym domeny.
Zadanie 6: Proszę stworzyć maszynę lab2_pvhvm
i znaleźć adres, pod którym jest dostępna przez vnc. Podpowiedź: vnc
to proces jak każdy inny.
Zadanie 7: Proszę połączyć się z maszyną używając narzędzia vncviewer
(w razie potrzeby zainstalować).
Jeżeli to się uda, mają Państwo teraz dwie możliwości:
nameserver 8.8.8.8
nameserver 8.8.4.4
Niezależnie od wybranej ścieżki, można teraz z pliku konfiguracyjnego usunąć cdrom i zmienić kolejność boot'owania tak, by pierwsza była partycja roota.
Epilog: Sprzątanie
Proszę wyłączyć i usunąć wszystkich gości wraz z ich dyskami i plikami konifuracyjnymi. Następnie z konta roota:
cd /home/student && cd /home/student/sitw && ./clean_xen_lab2.sh
I na koniec proszę uruchomić komputer ponownie, tym razem bez Xena i zaktualizować konfigurację gruba:
update-grub