Remus dom0 requirements
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:
- 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.
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/ .