Ipfire auf Xenserver
Ipfire auf Xenserver
eignet sich hervorragend, da die Jungs vom Ipfire-Team einen Xen-fähigen Kernel mitliefern. Andere Distris wie beispielsweise Ipcop tun das nicht. Somit eignet sich Ipfire wunderbar als Bestandteil eines komplexen Homeservers der Marke "EierlegendeWollMilchSau".
Ipfire paravirtualisiert auf Xenserver
Ipfire paravirtualisiert auf Xenserver
Installiert man den Ipfire nur als HVM-Maschine, muss die Virtualisierung komplett von der Hardware, der CPU übernommen werden und man benötigt auch eine CPU, welche das kann. In der Intelwelt heißt diese Technik Vt-d, bei AMD Pazifica. Welche CPU das aber nun unterstützt, muss man heraus finden, da kann man keine explizizte Aussage treffen, da auch das Motherboard mitspielen muss.Bringt man Ipfire jedoch in den paravirtualisierten Status, wird die Virtualisierung von der Software übernommen.
HVM Installation
Die HVM Installation des Ipfire
auf dem Xenserver beginnt mit dem laden des "Bootbares CD-Image" von der Ipfire Projektseite:
Auf der Windows-Maschine dann im Xencenter per "new VM" und "Other install Media" das eben herunter geladene Image installieren.
Ist die VM fertig installiert und gestartet, kann man mit einem x-beliebigen Browser auf das Webinterface des Ipfire zugreifen:
https://"IP-des-Ipfire":444
Jetzt navigiert man zum Menüpunkt "Ipfire", lässt den Ipfire erst einmal nach neuen Paketen suchen, welche dann im Fall der Fälle auf der rechten Seite angezeigt werden. Unten stehen die Addons, von denen uns erst einmal nur 2 interessieren:
- Nano - Ein Linuxeditor, welcher die wichtigsten Befehle im Fenster eingeblendet hat
- linux-xen - Der paravirtualisierte Kernel für Ipfire
Also die beiden Pakete anklicken und installieren. Nach der Paketinstallation gehen wir wieder in die XenCenter-Konsole der VM und tippen ein:
nano /boot/grub/grub.conf
Hier markieren wir die UUID der 3. Partition und notieren diese erst einmal irgendwo.
VM paravirtualisieren
Die VM paravirtualisieren
Jetzt wäre die VM für den paravirtualisierten Betrieb fast fertig. Was fehlt sind die Angaben auf dem Xenserver-Host selbst, welche wir nun nachholen wollen.
Dazu etablieren wir zum Xenserver-Host mit Putty oder Kitty eine SSH-Verbindung und setzen folgende Kommandos ab:
- xe vm-list
Zeigt uns alle auf dem Host installierten VMs an - xe vm-param-list uuid=[UUID von oben]
Hier fügen wir die oben heraus gefundene UUID der Ipfire-VM ein und erhalten eine Übersicht auf die momentan gesetzten Parameter der VM - xe vm-param-clear uuid=[UUID] param-name=HVM-boot-policy
Damit wird die Anweisung gelöscht, dass es sich um eine HVM Maschine handelt - xe vm-param-set uuid=[UUID] PV-bootloader=pygrub
Wir weisen den Host an, als Bootloader für diese VM pygrub zu verwenden - xe vm-param-set uuid=[UUID] PV-bootloader-args="--kernel /vmlinuz-2.6.32.28-ipfire-xen --ramdisk /ipfirerd-2.6.32.28-xen.img"
Die Angabe des zu verwendenden Kernels - xe vm-param-set uuid=[UUID] PV-args="root=UUID=[UUID der Rootpartition] console=tty0 xencons=tty vga=788 ro"
Wir sagen, wo der Kernel zu finden ist und welche Konsole verwendet wird - xe vm-disk-list uuid=[UUID]
Wir suchen die UUID der verwendeten Disk, der Eintrag unter VBD ist der richtige - xe vbd-param-set uuid=[VBD von vorigem Befehl] bootable=true
Wir machen die Disk bootbar
Jetzt starten wir den Ipfire per Konsole neu: shutdown -r now; das startet den Ipfire paravirtualisiert. Nun können wir wieder über das Webinterface auf den Ipfire connecten und uns nach Herzenslust mit den umfangreichen Einstellungen amüsieren.
Weitere Hinweise
Weitere Hinweise
Eventuell stimmt der Eintrag für den XEN-Kernel in
"/boot/grub/grub.conf" nicht mit der UUID der Rootpartition in "/etc/fstab" überein. Hier musste ich anpassen. Die "/etc/mtab" sowie "/etc/fstab" muss man nicht mehr anpassen, das hat sich erledigt. Ich habe allerdings die "/etc/mtab" trotzdem an die "/etc/fstab" bezüglich der UUID-Einträge angepasst und die normalen Pfadangaben ersetzt.
Im Falle man von den obigen Steps etwas falsch gemacht hat, kann man den Ipfire auch wieder per HVM starten:
- xe vm-param-set uuid=[UUID] HVM-boot-policy="BIOS order"
- xe vm-param-clear uuid=[UUID] param-name=PV-bootloader
Das lässt die VM wieder starten. Als Tipp würde ich die VM nach erfolgreicher Installation des Images und dem ausstatten der Pakete erst einmal exportieren, dann muss man diese Schritte im worstcase nicht noch einmal machen, sondern kann relativ komfortabel die zerschossene VM löschen und neu importieren.
Uwe Neumann - Letzte Überarbeitung: 10.04.2011
Mr Wong
del.icio.us
Digg
Web News
Yigg