{{tag>xen virtualisierung domU}} ====== Anpassungen für die Paravirtualisierung ====== {{ :version3:xenvirtualisierung:xenpaedml1.png|}} Ausgehend von der Situation, dass eine ursprüngliche Musterlösungsinstallation auf LVM-Volumes der Xen-Dom0 [[server2xen|kopiert wurde]] (oder die ursprüngliche Installation sich [[lvmnachxen|bereits auf LVM-Volumes befand]], die nun von der Dom0 aus erreichbar sind) müssen an der Originalinstallation noch einige Änderungen vorgenommen werden. Dazu werden die Dateisysteme der Originalinstallation in der Dom0 gemountet und anschließend mit chroot in dieses Dateisystem gewechselt. Nun können dort Pakete installiert werden, Dateien angepasst werden u.ä. ===== LVM Volumes nach /target mounten ===== FIXME ===== Chroot mounten ===== mount -o bind /dev/ /target/dev/ mount -o bind /proc/ /target/proc/ chroot /target/ Sicherstellen, dass die Namensauflösung funktioniert und schauen ob das Netz läuft: # host web.de web.de A 217.72.195.42 # ping web.de PING web.de (217.72.195.42) 56(84) bytes of data. 64 bytes from ha-42.web.de (217.72.195.42): icmp_seq=1 ttl=55 time=29.5 ms 64 bytes from ha-42.web.de (217.72.195.42): icmp_seq=2 ttl=55 time=29.7 ms ===== Angepassten Kernel und libc installieren ===== apt-get install linux-image-2.6-xen-686 apt-get install libc6-xen ===== Grub Konfiguration des virtuellen Hosts anpassen ===== In der Datei ''/boot/grub/menu.lst'' kann man alle Startnenüeinträge löschen und statt dessen einen neuen anlegen: ## ## End Default Options ## title Debian GNU/Linux, kernel 2.6.18-6-xen-686 root (hd0,0) kernel /boot/vmlinuz-2.6.18-6-xen-686 root=/dev/xvda1 ro initrd /boot/initrd.img-2.6.18-6-xen-686 savedefault ### END DEBIAN AUTOMAGIC KERNELS LIST Außerdem sollte man in der Datei ''/boot/grub/device.map'' als festplattendevice ''/dev/xvda'' eintragen, damit die Installation neuer Kernel später wieder automatisch klappt. (hd0) /dev/xvda Dabei sollte man natürlich den Xen-Kernel angeben, den man zuvor installiert hat. FIXME Erklärung zum root FS ===== fstab anpassen ===== In der alten stehen die physikalischen Devices des ursprünglichen Servers: # /etc/fstab: static file system information. # # proc /proc proc defaults 0 0 /dev/mapper/alterserver-root / ext3 defaults,errors=remount-ro 0 1 /dev/sda1 /boot ext3 defaults 0 2 /dev/mapper/alterserver-usr /usr ext3 defaults 0 2 /dev/mapper/alterserver-home /home ext3 defaults,usrquota,grpquota 0 2 /dev/mapper/alterserver-var /var ext3 defaults,noatime,usrquota,grpquota 0 2 /dev/mapper/alterserver-swap none swap sw 0 0 /dev/mapper/alterserver-cups /var/spool/cups ext3 defaults 0 2 /dev/hda /media/cdrom0 udf,iso9660 user,noauto 0 0 LABEL=BACKUP /media/backup2l ext2 defaults,noauto 0 0 none /tmp tmpfs defaults 0 0 In der neuen stehen die virtuellen Devices der XEN Virtualisierung: FIXME Anpassungen für System in mehreren Partitionen # /etc/fstab: static file system information. # # proc /proc proc defaults 0 0 /dev/xvda1 / ext3 defaults,errors=remount-ro 0 1 /dev/xvda2 none swap sw 0 0 none /tmp tmpfs defaults 0 0 ===== inittab anpassen ===== Unter XEN gibt es nur eine Konsole, der Wechsel mit ALT-F1 u.ä. geht nicht, drum werden die abgeschaltet, indem man die Datei /etc/inittab anpasst: # Note that on most Debian systems tty7 is used by the X Window System, # so if you want to add more getty's go ahead but skip tty7 if you run X. # 1:2345:respawn:/sbin/getty 38400 tty1 2:23:respawn:/sbin/getty 38400 tty2 3:23:respawn:/sbin/getty 38400 tty3 4:23:respawn:/sbin/getty 38400 tty4 5:23:respawn:/sbin/getty 38400 tty5 6:23:respawn:/sbin/getty 38400 tty6 Neu: # Note that on most Debian systems tty7 is used by the X Window System, # so if you want to add more getty's go ahead but skip tty7 if you run X. # 1:2345:respawn:/sbin/getty 38400 tty1 #2:23:respawn:/sbin/getty 38400 tty2 #3:23:respawn:/sbin/getty 38400 tty3 #4:23:respawn:/sbin/getty 38400 tty4 #5:23:respawn:/sbin/getty 38400 tty5 #6:23:respawn:/sbin/getty 38400 tty6 ===== changeroot Umgebung verlassen ===== exit # umount /target/dev/ # umount /target/proc/ # umount /target ===== Xen Konfiguration erstellen ===== Zurück in der Dom0 muss nun eine Konfiguration für den virtuellen Server erstellt werden, bevor man diesen starten kann. Dazu legt man die Datei ''/etc/xen/paedmlserver'' an und füllt diese mit dem folgenden Inhalt: FIXME * Mehrere Partitionen * MAC Adresse ohne CT Skript * Erklärungen zu den Optionen und Bezeichungen memory='960' name='paedmlserver' execfile('/etc/xen/ctsrvcommon') bootloader = '/usr/bin/pygrub' root='/dev/xvda1 ro' disk = [ 'phy:/dev/hostsys/aegtest,xvda1,w', 'phy:/dev/hostsys/aegtestswap,xvda2,w' ] vif = [ 'mac='+mymac+',bridge=breth1' ] extra="console=xvc0 xencons=tty" Anschließend kann man die virtualisierte Musterlösung mit dem Befehl xm create paedmlserver -c starten.