COLO - Coarse Grain Lock Stepping SLES
From Xen
Jump to navigationJump to search
This page contaions detailed instractions on how to setup COLO on SLES11-SP3.
Host installation
On both primary and secondary hosts:
- Select "Xen Virtualization Host" when choosing host type.
- On package selection, please include build-essential packages like make, gcc and so on.
- After install the host OS, edit '/boot/grub/menu.lst', change the default booting option to Xen DOM0 kernel
- Uninstall xen-tools package:
yast2 --remove xen-tools
- Edit /etc/modprobe.d/unsupported-modules, add the following line:
allow_unsupported_modules 1
- Add the following package source by using yast2:
http://ftp5.gwdg.de/pub/opensuse/discontinued/distribution/11.3/repo/oss/suse/ http://occonnect.dk/repo/$RCE/SLE11-SDK-SP3-Pool/sle-11-x86_64
- Install git
yast2 --install git
- Download files that needed for next steps:
git clone https://github.com/wencongyang/colo-files
- Install RPMs under colo-files/libnl3
- compile and install act_mirred module:
#cd colo-files/act_mirred && make #mkdir /lib/modules/3.0.76-0.11-xen/updates/ #cp act_mirred.ko /lib/modules/3.0.76-0.11-xen/updates/ && depmod
- Download and compile Xen
Checkout xen-colo source #git clone https://github.com/wencongyang/xen #cd xen && git checkout colo-v4-noheartbeat Compile #./configure #make dist-xen; make dist-tools Patch qemu and rebuild xen-tools #cd tools/qemu-xen-dir/ #git am /path-to/colo-files/patch_for_qemu/0001-Introduce-xen-load-devices-state.patch #cd ../../; make dist-tools Install xen and xen-tools #make install-xen; make install-tools #chkconfig xencommons on #reboot NOTE: There might be some missing dependance, the main missing packages are the following, please install these first: flex,python-devel, gettext-tools, dev86, libuuid-devel, libopenssl-devel, libyajl-devel, glib2-devel, libpixman-1-0-devel
- Compile and install colo agent (only needed on primary host)
#git clone https://github.com/wencongyang/colo-agent #git checkout experimental #make #cp *.ko /lib/modules/3.0.76-0.11-xen/updates/ && depmod
Guest installation
Note the following steps should be done on primary host.
- Needed settings in Guest config file:
xen_platform_pci=0
- Select 'Physical Machine' when choosing host type.
Run COLO
Note the following steps should be done on primary host.
- Copy the new installed guest image to secondary host. Note that the image should be put in the same directory as it's in primary host.
- Load essential kernel modules:
modprobe ifb numifbs=10 modprobe sch_colo modprobe sch_colo_ipv4 modprobe sch_colo_arp modprobe sch_colo_icmp modprobe sch_colo_tcp modprobe sch_colo_udp
- Modify the guest config file:
- disk
disk = [ 'format=raw,devtype=disk,access=w,vdev=hda,backendtype=tap,filter=colo,filter-params=192.168.3.1:9000,target=/root/images/hvm/hvm_nopv/hvm.img' ]
- nic
vif = [ 'mac=00:16:4f:00:00:11, bridge=br0, model=e1000, forwarddev=eth0' ]
- Start guest
- Run COLO
xl remus -c -u <domname> <secondary host IP>