Xen on Fedora 13: Difference between revisions
Line 202: | Line 202: | ||
= Creating domU VMs = | = Creating domU VMs = | ||
If you are running on top of DRBD in a cluster, please see "[[DRBD on Fedora 13]]" before proceeding. | |||
'''ToDo''' | |||
{{footer}} | {{footer}} |
Revision as of 20:29, 1 September 2010
Alteeve Wiki :: How To :: Xen on Fedora 13 |
Warning: This is currently a dumping ground for notes. DO NOT FOLLOW THIS DOCUMENT'S INSTRUCTIONS. Seriously, it could blow up your computer or cause winter to come early.
Installing from RPM
Note: This method uses the older Xen 3.4.x tools and myoung's dom0, which does not support DRBD.
Xen Hypervisor
Installing Xen (minus dom0) is trivial:
yum install xen
dom0
This uses a kernel built for Fedora 12, but it works on Fedora 13.
Add the repo:
cd /etc/yum.repos.d/
wget -c http://myoung.fedorapeople.org/dom0/myoung.dom0.repo
Edit the repo file and change the two enabled=0 entries to enabled=1.
vim /etc/yum.repos.d/myoung.dom0.repo
[myoung-dom0]
name=myoung's repository of Fedora based dom0 kernels - $basearch
baseurl=http://fedorapeople.org/~myoung/dom0/$basearch/
enabled=1
gpgcheck=0
[myoung-dom0-source]
name=myoung's repository of Fedora based dom0 kernels - Source
baseurl=http://fedorapeople.org/~myoung/dom0/src/
enabled=1
gpgcheck=0
Install the Xen dom0 kernel (edit the version number if needed).
yum install kernel-2.6.32.17-157.xendom0.fc12.x86_64
The entry in grub's /boot/grub/menu.lst won't work. You will need to edit it to look like this:
vim /boot/grub/menu.lst
title Xen 3.4.x, Linux kernel 2.6.32.17-157.xendom0.fc12.x86_64
root (hd0,0)
kernel /xen.gz dom0_mem=1024M
module /vmlinuz-2.6.32.17-157.xendom0.fc12.x86_64 ro root=/dev/mapper/vg_01-lv_root rd_MD_UUID=4f48439e:39ec22e8:a6154857:c340036f rd_LVM_LV=vg_01/lv_root rd_LVM_LV=vg_01/lv_swap rd_NO_LUKS rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us
module /initramfs-2.6.32.17-157.xendom0.fc12.x86_64.img
Add this to /etc/fstab
echo "xenfs /proc/xen xenfs defaults 0 0" >> /etc/fstab
Build from source
This is required if you want a more up to date dom0.
Install Requirements
For the hypervisor:
yum -y groupinstall "Development Libraries"
yum -y groupinstall "Development Tools"
yum -y install transfig wget texi2html libaio-devel dev86 glibc-devel e2fsprogs-devel gitk mkinitrd iasl xz-devel bzip2-devel pciutils-libs pciutils-devel SDL-devel libX11-devel gtk2-devel bridge-utils PyXML qemu-common qemu-img mercurial
yum -y install glibc-devel.i686
For dom0:
Notes taken from here.
yum -y install rpmdevtools yum-utils
Xen Hypervisor
Note: These are the tools, not dom0.
All of this is from here.
From mercurial, stable tag.
Get version 4.0.1 (or newer, depending on what the latest stable is):
hg clone -r RELEASE-4.0.1 http://xenbits.xen.org/xen-4.0-testing.hg
Go into the directory and compile the tools:
cd xen-4.0-testing.hg
make xen
make tools
make stubdom
Install the tools (assuming compile worked):
make install-xen
make install-tools
make install-stubdom
dom0
Note: Until otherwise noted, you do not need to run these steps as root.
cd ~
rpmdev-setuptree
Note: Copy and modify the entry created by the RPM. Simply copying this entry will almost certainly not work!
Xen 4.0.1:
title Xen 4.0.1, Linux kernel 2.6.32.17-157.xendom0.fc12.x86_64
root (hd0,0)
kernel /xen-4.0.1.gz dom0_mem=1024M
module /vmlinuz-2.6.32.17-157.xendom0.fc12.x86_64 ro root=/dev/mapper/vg_01-lv_root rd_MD_UUID=4f48439e:39ec22e8:a6154857:c340036f rd_LVM_LV=vg_01/lv_root rd_LVM_LV=vg_01/lv_swap rd_NO_LUKS rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us rhgb quiet
module /initramfs-2.6.32.17-157.xendom0.fc12.x86_64.img
Add this to /etc/fstab
vim /etc/fstab
xenfs /proc/xen xenfs defaults 0 0
Make xend play nice with clustering
By default under Fedora 13, cman will start before xend. This is a problem because xend takes the network down as part of it's setup. This causes totem communication to fail which leads to fencing.
To avoid this, edit /etc/init.d/xend and tell it to start earlier than position 98. This is done by changing the line chkconfig: 2345 98 01 to chkconfig: 2345 11 98.
vim /etc/init.d/xend
#!/bin/bash
#
# xend Script to start and stop the Xen control daemon.
#
# Author: Keir Fraser <keir.fraser@cl.cam.ac.uk>
#
# chkconfig: 2345 11 98
# description: Starts and stops the Xen control daemon.
### BEGIN INIT INFO
# Provides: xend
# Required-Start: $syslog $remote_fs
# Should-Start:
# Required-Stop: $syslog $remote_fs
# Should-Stop:
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Default-Enabled: yes
# Short-Description: Start/stop xend
# Description: Starts and stops the Xen control daemon.
### END INIT INFO
Lastly, remove and re-add the xend daemon in the start list:
chkconfig xend off
chkconfig xend on
Done. You should be able to reboot into the dom0 kernel now.
Misc
Source RPM: xen-4.0.1-0.2.fc13.src.rpm, xen-modules.patch
Creating domU VMs
If you are running on top of DRBD in a cluster, please see "DRBD on Fedora 13" before proceeding.
ToDo
Any questions, feedback, advice, complaints or meanderings are welcome. | |||
Alteeve's Niche! | Alteeve Enterprise Support | Community Support | |
© 2025 Alteeve. Intelligent Availability® is a registered trademark of Alteeve's Niche! Inc. 1997-2025 | |||
legal stuff: All info is provided "As-Is". Do not use anything here unless you are willing and able to take responsibility for your own actions. |