Remus dom0 requirements

From Xen
(Redirected from Remus PV dom0 requirements)
Jump to navigationJump to search


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