Oct31

Written by:David Aldridge
10/31/2014 3:05 PM 

This is not an official method, but it does work and is tested.  It does not include support for libvirt.

Install some needed packages:

yum install bridge-utils SDL net-tools

Get xen packages from xen.crc.id.au (http://au1.mirror.crc.id.au/repo/):

wget http://au1.mirror.crc.id.au/repo/el6/x86_64/xen-4.2.5-4.el6.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/xen-doc-4.2.5-4.el6.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/xen-debuginfo-4.2.5-4.el6.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/xen-devel-4.2.5-4.el6.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/xen-hypervisor-4.2.5-4.el6.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/xen-libs-4.2.5-4.el6.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/xen-licenses-4.2.5-4.el6.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/xen-ocaml-4.2.5-4.el6.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/xen-ocaml-devel-4.2.5-4.el6.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/xen-runtime-4.2.5-4.el6.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/kernel-xen-3.14.21-1.el6xen.x86_64.rpm
wget http://au1.mirror.crc.id.au/repo/el6/x86_64/kernel-xen-firmware-3.14.21-1.el6xen.x86_64.rpm

Force xen packages to install:

rpm -ivh --nodeps xen-4.2.5-4.el6.x86_64.rpm xen-doc-4.2.5-4.el6.x86_64.rpm xen-hypervisor-4.2.5-4.el6.x86_64.rpm  xen-libs-4.2.5-4.el6.x86_64.rpm xen-licenses-4.2.5-4.el6.x86_64.rpm xen-runtime-4.2.5-4.el6.x86_64.rpm

rpm -ivh --nodeps xen-debuginfo-4.2.5-4.el6.x86_64.rpm xen-devel-4.2.5-4.el6.x86_64.rpm xen-ocaml-4.2.5-4.el6.x86_64.rpm xen-ocaml-devel-4.2.5-4.el6.x86_64.rpm

Force kernel packages to install:

rpm -ivh --nodeps --force kernel-xen-3.14.21-1.el6xen.x86_64.rpm kernel-xen-firmware-3.14.21-1.el6xen.x86_64.rpm

Fix location of python scripts:

mv /usr/lib64/python2.6/site-packages/xen /usr/lib64/python2.7/site-packages
mv /usr/lib64/python2.6/site-packages/xen-3.0-py2.6.egg-info /usr/lib64/python2.7/site-packages

Fix libraries:

cd /usr/lib64
ln -s libpython2.7.so.1.0 libpython2.6.so.1.0
ln -s liblzma.so.5.0.99 liblzma.so.0
ln -s libgnutls.so.28.20.4 libgnutls.so.26

Configure grub2 to boot the hypervisor:

edit /etc/default/grub :
GRUB_DEFAULT="CentOS Linux, with Xen hypervisor"

grub2-mkconfig --output=/boot/grub2/grub.cfg
chkconfig --level 2345 xend on

systemctl stop NetworkManager
systemctl disable NetworkManager

Create a network initialization script (replacing eth0,a.b.c.d and e.f.g.h with your adapater,IP address and gateway address):

Edit /etc/xen/scripts/xenbr0.sh:
#!/bin/bash
brctl addbr xenbr0
ip addr flush eth0
ip addr add a.b.c.d/24 broadcast a.b.c.255 dev xenbr0
ifconfig xenbr0 up
ip route add default via e.f.g.h
brctl addif xenbr0 eth0

Edit service definition file to start it on boot after network:

Edit /usr/lib/systemd/system/xenbr0.service:
[Unit]
Description=Xen Bridged Network
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=oneshot
ExecStart=/etc/xen/scripts/xenbr0.sh
ExecStop=/etc/xen/scripts/xenbr0.sh
RemainAfterExit=true
PrivateTmp=true

[Install]
WantedBy=multi-user.target

systemctl enable xenbr0

Reboot and you have Xen 4 on Centos 7.
 

Tags:

3 comment(s) so far...

Re: Installing Xen 4 on Centos 7

Hi David,

I've been researching this for the last few days. Have you make any progress since October? I would love for them to push Xen4CentOS through with CentOS 7, but I don't see much progress on that.

I wonder how hard it would be to build Xen 4.4 from source, libvert and a custom kernel.

What are your thoughts?

By Mike Centola on  1/12/2015 12:49 PM

Re: Installing Xen 4 on Centos 7

Hi Mike,
No more than the hack above. It provides a working framework.
Build Kernel and Xen from source would be the clean way to do it, but I needed it up and working that day, and didn't have the resources to put the time into a build.
Have you managed to get a clean build to work ?
Davdi

By David Aldridge on  1/13/2015 7:40 AM

Re: Installing Xen 4 on Centos 7

Hi, I tried this with HP Proliant DL360 G9, and it seems that this doesn't work because of UEFI bios. Just to let you know that this kernel installed here does't provide the UEFI bios support.

By Janne on  3/22/2015 8:03 AM

Your name:
Your email:
(Optional) Email used only to show Gravatar.
Your website:
Title:
Comment:
Security Code
Enter the code shown above in the box below
Add Comment  Cancel 
You must be logged in and have permission to create or edit a blog.