CORE Xen README This file describes the xen branch of the CORE development tree which enables machines based on Xen domUs. When you edit node types, you are given the option of changing the machine type (netns, physical, or xen) and the profile for each node type. CORE will create each domU machine on the fly, having a bootable ISO image that contains the root filesystem, and a special persitent area (/rtr/persistent) using a LVM volume where configuration is stored. See the /etc/core/xen.conf file for related settings here. INSTALLATION 1. Tested under OpenSUSE 11.3 which allows installing a Xen dom0 during the install process. 2. Create an LVM volume group having enough free space available for CORE to build logical volumes for domU nodes. The name of this group is set with the 'vg_name=' option in /etc/core/xen.conf. (With 256M per persistent area, 10GB would allow for 40 nodes.) 3. To get libev-devel in OpenSUSE, use: zypper ar http://download.opensuse.org/repositories/X11:/windowmanagers/openSUSE_11.3 WindowManagers zypper install libev-devel 4. In addition to the normal CORE dependencies (see http://code.google.com/p/coreemu/wiki/Quickstart), pyparted-3.2 is used when creating LVM partitions and decorator-3.3.0 is a dependency for pyparted. The 'python setup.py install' and 'make install' need to be performed on these source tarballs as no packages are available. tar xzf decorator-3.3.0.tar.gz cd decorator-3.3.0 python setup.py build python setup.py install tar xzf pyparted-3.2.tar.gz cd pyparted-3.2 ./configure make make install 5. These Xen parameters were used for dom0, by editing /boot/grub/menu.lst: a) Add options to "kernel /xen.gz" line: gnttab_max_nr_frames=128 dom0_mem=1G dom0_max_vcpus=2 dom0_vcpus_pin b) Make Xen default boot by editing the "default" line with the index for the Xen boot option. e.g. change "default 0" to "default 2" Reboot to enable the Xen kernel. 5. Run CORE's ./configure script as root to properly discover sbin binaries. tar xzf core-xen.tgz cd core-xen ./bootstrap.sh ./configure make make install 6. Put your ISO images in /opt/core-xen/iso-files and set the "iso_file=" xen.conf option appropriately. 7. Uncomment the controlnet entry in /etc/core/core.conf: # establish a control backchannel for accessing nodes controlnet = 172.16.0.0/24 This setting governs what IP addresses will be used for a control channel. Given this default setting the host dom0 will have the address 172.16.0.254 assigned to a bridge device; domU VMs will get interfaces joined to this bridge, having addresses such as 172.16.0.1 for node n1, 172.16.0.2 for n2, etc. When 'controlnet =' is unspecified in the core.conf file, double-clicking on a node results in the 'xm console' method. A key mapping is set up so you can press 'F1' then 'F2' to login as root. The key ctrl+']' detaches from the console. Only one console is available per domU VM. 8. When 'controlnet =' is specified, double-clicking on a node results in an attempt to ssh to that node's control IP address. Put a host RSA key for use on the domUs in /opt/core-xen/ssh: mkdir -p /opt/core-xen/ssh ssh-keygen -t rsa -f /opt/core-xen/ssh/ssh_host_rsa_key cp ~/.ssh/id_rsa.pub /opt/core-xen/ssh/authorized_keys chmod 600 /opt/core-xen/ssh/authorized_keys