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ę :!:

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:
    • adres ip: 10.0.0.3 (na wzór konfiguracji lab2-pvm)
    • resztę sieci konfiguruje się dopiero podczas instalacji systemu (czyli nie teraz :!:):
      • brama: 10.0.0.1
      • maska: 255.255.255.0
      • broadcast: 10.0.0.255
      • dns: 8.8.8.8 8.8.4.4
  • 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:
    • jeżeli plik nie istnieje (lub ma podejrzanie mały rozmiar) proszę wykonać komendę:
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:

  • Zainstalować Debiana ręcznie — zalecane dla osób, które nigdy tego nie robiły. Prosta robota, ale może chwilę zająć (proszę nie instalować żadnych środowisk graficznych)
    • haczyk: po instalacji trzeba zadbać o to, żeby plik /etc/resolv.conf zawierał prawidłowe serwery DNS:
nameserver 8.8.8.8
nameserver 8.8.4.4
  • Jak poprzednio, użyć gotowych obrazów swap.img i hvm/disk.img z katalogu /home/student/sitw/images, hasło roota: xena.

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
pl/dydaktyka/sitw/2016/xen/lab2.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0