Author: adamg Date: Thu Dec 7 17:34:21 2006 New Revision: 8075 Added: PLD-doc/queue/xen-howto.txt PLD-doc/queue/xen.txt Log: - dwa dokumenty dotyczace xen - jeden mojego autorstwa, drugi Krystiana Tyczynskiego
Added: PLD-doc/queue/xen-howto.txt ============================================================================== --- (empty file) +++ PLD-doc/queue/xen-howto.txt Thu Dec 7 17:34:21 2006 @@ -0,0 +1,93 @@ +krótkie xen3-pld-howto: +======================= + +Author: adamg +------------- + +Paczki: +^^^^^^^ + +Budujemy sobie potrzebne paczki: + + $ ./builder kernel.spec:LINUX_2_6_16 --with xen0 + $ ./builder kernel.spec:LINUX_2_6_16 --with xenU + $ ./builder xen.spec + +dla ac-i686 są gotowe paczki - indeksy poldka (pndir): + + http://students.mimuw.edu.pl/~adamg/xen/ + +UWAGA: + Próbowałem budować kernele na amd64, ale się toto wywala. Jako, + że jedyne amd64 które mam pod opieką korzysta z vserverów, nie + zagłębiałem się w to. + + +W xen0 instalujemy zarówno `kernel-xen0' jak i `kernel-xenU'. Nie +zapominamy też o instalacji pakietu xen. + + +Konfiguracja gruba: +^^^^^^^^^^^^^^^^^^^ + + $ grep -A4 Linux-xen /boot/grub/menu.lst + title Linux-xen + root (hd0,0) + kernel /xen.gz root=fe00 dom0_mem=256M + module /vmlinuz-xen0 ro netloop.nloopbacks=1 + module /initrd-xen0 + +initrd-xen0 to typowe initrd - u mnie zadziałało initrd wygenerowane +geninitrd odalone z %post kernel-xen0. + +Odpalamy i sprawdzamy czy działa. + + +Instalacja xenU: +^^^^^^^^^^^^^^^^ +instalacja niemalże identyczna z procesem instalacji chroota. Tworzymy +sobie partycję + ewentualnie partycję na swap, traktujemy mkfs, potem +mount i instalujemy przez `poldek --root' standardowe paczki - +`openssh-server/ powinno pociągnąć wszystkie potrzebne paczki. + +Przykładowo: /dev/test/xen0 + /dev/test/xen0_swap + +Tworzymy sobie pliczek /etc/xen/test: + + $ cat /etc/xen/test + kernel = "/boot/vmlinuz-xenU" + ramdisk = "/boot/initrd-xenU.new.gz" + memory = 128 + name = "test" + disk = ['phy:/dev/test/xen0,sda1,w', 'phy:/dev/test/xen0_swap,sda2,w'] + root = "/dev/sda1 ro" + extra = "netloop.nloopbacks=1" + vif = [ 'mac=aa:00:ff:de:ad:02, bridge=xenbr0' ] + $ + +Możemy zainstalować w xenU pakiet `kernel-xenU' lub skopiować +/lib/modules/*xenU z xen0 do xenU. + +Poprawki może wymagać initrd-xenU tak, aby posiadało moduły potrzebne do +mountnięcia rootfs z xenU. + +Wewnątrz xenU ustawiamy też adres + maskę sposobem `po Bożemu'. + + +Bootujemy: +^^^^^^^^^^ + + # xm create test + +Autostart: +^^^^^^^^^^ + + # ln -s /etc/xen/test /etc/xen/auto/ + +Comments: +^^^^^^^^^ + + .... + + +# vim: set tw=72: Added: PLD-doc/queue/xen.txt ============================================================================== --- (empty file) +++ PLD-doc/queue/xen.txt Thu Dec 7 17:34:21 2006 @@ -0,0 +1,152 @@ +Xen - monitor maszyn wirtualnych + +Author: krystian + +Xen (www.xensource.com) służy do obserwowania maszyn wirtualnych uruchomionych w jego rodowisku. +Najprociej mówišc można zainstalowac na danej maszynie np. kilka niezależnych od siebie systemów operacyjnych. +Najnowsze oficjalne wydanie (w czasie pisania tego Howto) to Xen 3.0.3. +Jest rozpowszechniany na licencji OpenSource. + +Kilka podstawowych danych dotyczšcych Xen 3.0.3: + +- wsparcie dla platformy wieloprocesorowej (do 32 procesorów) +- praca na architekturach: x86, x86_64 (64-bitowe procesory), IA64, PPC, praca w toku na porcie architektury SPARC +- obecnie wsparcie dla linuksa z jajkiem 2.4.x, 2.6.x oraz NetBSD i Plan9 +- wsparcie sprzętowe wirtualizacji dla IntelŽ VT-x i AMD Pacifica +- domylnie 32-bit Xen wspiera do 4GB pamięci RAM +- wersja 3.x wspiera Physical Addressing Extensions (PAE), dla x86/32 do 64GB fizycznej pamięci + +Instalacja Xen 3.0.3 na PLD + +Naszym zadaniem będzie cišgnięcie odpowiednich spec'ow z repozytorium CVS PLD, a następnie zbudowanie +kerneli do wspolpracy z Xen tj. kernel-xen0 i kernel-xenU oraz oczywicie zbudowanie paczki z Xen ;-) + +1. Jeżeli nie mam jeszcze zainstalowanej paczki CVS to klepiemy: + + # poldek -i cvs + +2. Ustawiamy CVSROOT dla zdalnego repozytorium komenda: + + # export CVSROOT=":pserver:[EMAIL PROTECTED]:/cvsroot" + +3. Tworzymy potrzebne nam katalogi (dla CVS): + + # mkdir -p ~/rpm/{SPECS,SOURCES,RPMS,SRPMS,BUILD} + # cd rpm + # cvs get SPECS/builder SOURCES/kernel-i386.config + +4. Sciagamy potrzebne nam spec'i z repo: + + # cvs get SPECS/kernel.spec SPECS/xen.spec + ... + U SPECS/kernel.spec + U SPECS/xen.spec + +5. Nastepnie instalujemy za pomoca poldka rpm-build-*: + + # poldek -i rpm-build-* + +Zostana zainstalowane narzedzia do budowania paczek (builder), kompilacji zrodel (w naszym przypadku kernela-xen0, kernela-xenU i xen'a). + +6. Teraz zajmiemy sie budowaniem paczek. + Na poczatku zbudujemy kernela ze wsparciem dla xen0: + + # builder kernel.spec:LINUX_2_6_16 --with xen0 + + Mozemy rowniez wybrac innego dostepnego branch'a zamiast LINUX_2_6_16. + Wiecej o builderze mozemy poczytac piszac w w wierszu polecen builder. + + W tym momencie mozna zrobic sobie kawe lub herbate i isc na jakis dobry film, gdyz zajmie to troche czasu ;-) + Dobrze, koniec tego dobrego i wracamy do roboty. Jeli wszystko przebieglo bezproblemowo to powinnismy w naszym + katalogu ~/rpm/RPMS zobaczyc: + + kernel-xen0-2.6.16.28-1.i686.rpm + kernel-xen0-doc-2.6.16.28-1.i686.rpm + kernel-xen0-drm-2.6.16.28-1.i686.rpm + kernel-xen0-headers-2.6.16.28-1.i686.rpm + kernel-xen0-module-build-2.6.16.28-1.i686.rpm + kernel-xen0-pcmcia-2.6.16.28-1.i686.rpm + kernel-xen0-smp-2.6.16.28-1.i686.rpm + kernel-xen0-smp-drm-2.6.16.28-1.i686.rpm + kernel-xen0-smp-pcmcia-2.6.16.28-1.i686.rpm + kernel-xen0-smp-sound-alsa-2.6.16.28-1.i686.rpm + kernel-xen0-smp-sound-oss-2.6.16.28-1.i686.rpm + kernel-xen0-smp-vmlinux-2.6.16.28-1.i686.rpm + kernel-xen0-sound-alsa-2.6.16.28-1.i686.rpm + kernel-xen0-sound-oss-2.6.16.28-1.i686.rpm + kernel-xen0-source-2.6.16.28-1.i686.rpm + kernel-xen0-vmlinux-2.6.16.28-1.i686.rpm + + Ok, czesc roboty za nami. + +7. Budujemy drugiego kernela, tym razem z obsluga dla xenU: + + # builder kernel.spec:LINUX_2_6_16 --with xenU + + W tym momencie mozemy obejrzec drugi film? A moze isc do miasta na zakupy? ;-) + Jeli wszystko przebieglo bezproblemowo to powinnismy w naszym + katalogu ~/rpm/RPMS zobaczyc: + + kernel-xenU-2.6.16.28-1.i686.rpm + kernel-xenU-doc-2.6.16.28-1.i686.rpm + kernel-xenU-drm-2.6.16.28-1.i686.rpm + kernel-xenU-headers-2.6.16.28-1.i686.rpm + kernel-xenU-module-build-2.6.16.28-1.i686.rpm + kernel-xenU-pcmcia-2.6.16.28-1.i686.rpm + kernel-xenU-smp-2.6.16.28-1.i686.rpm + kernel-xenU-smp-drm-2.6.16.28-1.i686.rpm + kernel-xenU-smp-pcmcia-2.6.16.28-1.i686.rpm + kernel-xenU-smp-sound-alsa-2.6.16.28-1.i686.rpm + kernel-xenU-smp-sound-oss-2.6.16.28-1.i686.rpm + kernel-xenU-smp-vmlinux-2.6.16.28-1.i686.rpm + kernel-xenU-sound-alsa-2.6.16.28-1.i686.rpm + kernel-xenU-sound-oss-2.6.16.28-1.i686.rpm + kernel-xenU-source-2.6.16.28-1.i686.rpm + kernel-xenU-vmlinux-2.6.16.28-1.i686.rpm + + No i stalo sie :) Mamy potrzebne kernele do pracy z Xen'em. Ale nie mamy samego Xen'a hehe :-) + Zaraz to zmienimy: + + # builder xen.spec + + W tym momencie moze sie okazac, ze nie mam wszystkich potrzebnych paczek do zbudowania Xen'a. + Dociagamy je poldkiem. Xen prosi rowniez o paczke XFree86-devel, ale my zamiast tej paczki instalujemy z repo X11-devel*. + Po kompilacji i zbudowaniu paczki powinnismy zobaczyc w katalogu ~/rpm/RPMS + + xen-3.0.2-0.3.i686.rpm + xen-devel-3.0.2-0.3.i686.rpm + xen-static-3.0.2-0.3.i686.rpm + +8. Przyszedl czas na instalacje paczek. Na razie instalujemy: + + # cd ~/rpm/RPMS + # rpm -Uvh kernel-xen0-2.6.16.28-1.i686.rpm + # rpm -Uvh xen-3.0.2-0.3.i686.rpm + +8. W tej chwili przejdziemy do konfiguracji bootloader'a (w tym przypadku GRUB'a). Jeli nie mam go zainstalowanego to robimy to: + + poldek -i grub + + Aby zainstalowac GRUB'a w naszym MBR musimy wykonac nastepujaca czynnosc: + + # grub + + Gdy odpali sie konsola GRUB'a to klepiemy: + + grub> root (hd<TAB>) + grub> setup (hd0) + grub> exit + + <TAB> - dopelniamy tabulatorem (wybieramy odpowiednia partycje) + + Otwieramy naszym ulubionym edytorem (np. vim, nano, pico) plik konfiguracyjny grub'a /boot/grub/menu.lst i zmieniamy domyslna konfiguracje badz dodajemy na dole: + + title PLD Linux-Xen + root (hd0,0) + kernel /boot/xen.gz dom0_mem=256M + module /boot/vmlinuz-xen0 ro root=/dev/sda6 netloop.nloopbacks=1 + module /boot/initrd-xen0 + + Jest to przykladowa konfiguracja. Aby sie dowiedziec wiecej zapraszam do lektury http://tx.downloads.xensource.com/downloads/docs/user/ + + Teraz mozemy zrebootowac maszyne i odpalic Xen'a ;-) \ No newline at end of file _______________________________________________ pld-cvs-commit mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit
