Difference between revisions of "Remus dom0 requirements"

From Xen
(first fully edited version)
Line 11: Line 11:
 
* ifb
 
* ifb
   
For testing you can run Remus with '--no-net' if you don't have these modules, but would like to try it out anyways.
+
For testing you can run Remus with '--no-net' if you don't have these modules, but would like to try it out anyways without the networking buffering (see http://nss.cs.ubc.ca/remus/doc.html).
   
 
=Known working dom0s=
 
=Known working dom0s=
 
* Ubuntu 12.10 (tested using 3.5.0-23-generic)
 
* Ubuntu 12.10 (tested using 3.5.0-23-generic)
  +
  +
See [[Install Xen 4.1.4 with Remus and DRBD on Ubuntu 12.10]] for a full build example.
   
 
=Modern Kernels=
 
=Modern Kernels=
Line 20: Line 22:
 
Upstream Linux 3.5+ includes the required modules natively, which can usually be enabled by listing them in /etc/modules. Verify you have each module using 'modprobe' first.
 
Upstream Linux 3.5+ includes the required modules natively, which can usually be enabled by listing them in /etc/modules. Verify you have each module using 'modprobe' first.
   
Please note, at the time of writing (Xen 4.1.4 and Xen 4.2.1 being the latest releases), the Xen Remus code needs a patch to work correctly with the sch_plug driver built-in to Linux 3.5.
+
Please note, at the time of writing (Xen 4.1.4 and Xen 4.2.1 being the latest releases), the Xen Remus code needs a patch (supplied by Shriram Rajagopalan) to work correctly with the sch_plug driver built-in to Linux 3.5.
 
<pre>
 
<pre>
 
cd /home/user/xen4.1.4 (or xen4.2.1)
 
cd /home/user/xen4.1.4 (or xen4.2.1)

Revision as of 11:11, 19 February 2013


Whether or not a system is suitable for Remus depends on if it's kernel has the support required. Remus requires a kernel that can run Xen and also has the following kernel modules:

  • sch_plug
  • sch_prio
  • sch_ingress
  • cls_basic
  • cls_tcindex
  • cls_u32
  • act_mirred
  • ifb

For testing you can run Remus with '--no-net' if you don't have these modules, but would like to try it out anyways without the networking buffering (see http://nss.cs.ubc.ca/remus/doc.html).

Known working dom0s

  • Ubuntu 12.10 (tested using 3.5.0-23-generic)

See Install Xen 4.1.4 with Remus and DRBD on Ubuntu 12.10 for a full build example.

Modern Kernels

Upstream Linux 3.5+ includes the required modules natively, which can usually be enabled by listing them in /etc/modules. Verify you have each module using 'modprobe' first.

Please note, at the time of writing (Xen 4.1.4 and Xen 4.2.1 being the latest releases), the Xen Remus code needs a patch (supplied by Shriram Rajagopalan) to work correctly with the sch_plug driver built-in to Linux 3.5.

cd /home/user/xen4.1.4 (or xen4.2.1)
wget http://download.locatrix.com/xen/remus-qdisc-py.patch
patch -p1 < remus-qdisc-py.patch
<build/install per normal>

Older kernels

Config options for Linux 2.6.32 pvops dom0 kernel for Remus

This is example is based on Linux 2.6.32 pvops (jeremy's xen.git xen/stable-2.6.32.x branch).

These are the .config options required by Remus:

CONFIG_IFB=m
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_FILTER=m
CONFIG_NET_SCHED=y
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_INGRESS=m
CONFIG_NET_SCH_PLUG=m
CONFIG_NET_CLS=y
CONFIG_NET_CLS_BASIC=m
CONFIG_NET_CLS_TCINDEX=m
CONFIG_NET_CLS_U32=m
CONFIG_NET_CLS_ACT=y
CONFIG_NET_ACT_MIRRED=m


Using Linux kernel v3.x (< v3.5) as dom0 kernel for Remus Xen hosts

Upstream Linux v3.x kernel (< v3.5) contains Xen pvops dom0 support, but it does not contain "sch_plug" driver which is required for Remus. It's possible to manually add that driver to your custom upstream Linux v3.x kernel build. The "sch_plug" driver is available for example from: http://pasik.reaktio.net/xen/remus/linux3x/ .