Difference between revisions of "Remus dom0 requirements"

From Xen
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
   
Whether or not a system is suitable for Remus depends on if it's kernel has the support required. Remus requires a Xen capable dom0 with the following kernel modules:
+
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_plug
 
* sch_prio
 
* sch_prio
Line 19: Line 19:
   
 
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.
  +
<pre>
  +
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>
  +
</pre>
   
 
=Older kernels=
 
=Older kernels=

Revision as of 11:08, 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.

Known working dom0s

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

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 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/ .