mirror of https://github.com/apache/cloudstack.git
This patch enable redundant virtual routers. 1. To enable this feature, db need to be updated using follow SQL by now(we would get a UI way later): UPDATE network_offerings SET redundant_router=1 WHERE guest_type="Virtual" AND system_only=0; 2. System would try to start up two routers at different hosts. But if there is only one host in the zone, system would start up two routers on it. 3. The failover part is using keepalived, and connection tracking part is using conntrackd. There would be one master router and one backup router. The status of router(master or backup) can be query from the database table domain_router now. Management server would update the status every 30s by default. 4. The routers for the same zone would use same external NIC(same ip and mac). The script used for fail-over would ensure only one external NIC present in the network at any time. 5. Currently management server don't got the ability to stop one of router is both of them reported as master. The feature is in the todo list. After two routers start up, disconnect anyone of them, the guest network shouldn't be affected, and established connection(http, ssh, etc.) should still works. The fail-over on gateway part should be 3~4 seconds. Currently the patch works with KVM. Would deal with vmware and XenServer soon. |
||
|---|---|---|
| .. | ||
| config | ||
| vpn | ||
| xe | ||
| README | ||
| buildsystemvm.sh | ||
| config.dat | ||
| convert.sh | ||
| qemuconvert.sh | ||
| systemvm.vmx | ||
| systemvm.xml | ||
| vhdconvert.sh | ||
README
1. The buildsystemvm.sh script builds a 32-bit system vm disk based on the Debian Squeeze distro. This system vm can boot on any hypervisor thanks to the pvops support in the kernel. It is fully automated
2. The files under config/ are the specific tweaks to the default Debian configuration that are required for CloudStack operation.
3. The variables at the top of the buildsystemvm.sh script can be customized:
IMAGENAME=systemvm # dont touch this
LOCATION=/var/lib/images/systemvm #
MOUNTPOINT=/mnt/$IMAGENAME/ # this is where the image is mounted on your host while the vm image is built
IMAGELOC=$LOCATION/$IMAGENAME.img
PASSWORD=password # password for the vm
APT_PROXY= #you can put in an APT cacher such as apt-cacher-ng
HOSTNAME=systemvm # dont touch this
SIZE=2000 # dont touch this for now
DEBIAN_MIRROR=ftp.us.debian.org/debian
MINIMIZE=true # if this is true, a lot of docs, fonts, locales and apt cache is wiped out
4. The systemvm includes the (non-free) Sun JRE. You can put in the standard debian jre-headless package instead but it pulls in X and bloats the image.
5. You need to be 'root' to run the buildsystemvm.sh script
6. The image is a raw image. You can run the convert.sh tool to produce images suitable for Citrix Xenserver, VMWare and KVM.
* Conversion to Citrix Xenserver VHD format requires the vhd-util tool. You can use the
-- checked in config/bin/vhd-util) OR
-- build the vhd-util tool yourself as follows:
a. The xen repository has a tool called vhd-util that compiles and runs on any linux system (http://xenbits.xensource.com/xen-4.0-testing.hg?file/8e8dd38374e9/tools/blktap2/vhd/ or full Xen source at http://www.xen.org/products/xen_source.html).
b. Apply this patch: http://lists.xensource.com/archives/cgi-bin/mesg.cgi?a=xen-devel&i=006101cb22f6%242004dd40%24600e97c0%24%40zhuo%40cloudex.cn.
c. Build the vhd-util tool
cd tools/blktap2
make
sudo make install
* Conversion to ova (VMWare) requires the ovf tool, available from
http://communities.vmware.com/community/vmtn/server/vsphere/automationtools/ovf
* Conversion to QCOW2 requires qemu-img