Cloudmin, xen, ubuntu 12.04 and networking config

Hi all

I’m building my first dedi system with cloudmin-powered VMs using Xen and wondered if I might be able to ask a little advice about configuration and in particular networking / IP set up.

The purpose of the new set up is to host around 100 websites on 2 separate xen guests, via LVM so that snapshots can be used for efficient backups to a secondary dedi box that can be spun up if necessary to resume service.

Our datacenter has assigned a range of IPs to our quarter rack and of these, the physical machine will have availability to the range a.b.c.64 - a.b.c.91, with its gateway at a.b.c.254. The physical machine has 4 NICs and the plan was to configure each of them with a range of 4 IPs (67 - 70) and then use the remainder for the guest VM(s) that are created.

My first question is, am I heading in the right direction with this server setup and network plan?

So assuming this is all correct, I’ve got my 4 x NICs set up as eth0-3 and have created some bridges for the remaining IP range using xenbr0 and xenbr1 using this /etc/networking/interfaces file:

# The loopback network interface auto lo eth0 eth1 eth2 eth3 xenbr0 xenbr1 iface lo inet loopback

The primary network interface

iface eth0 inet static
address a.b.c.67
netmask 255.255.255.0
network a.b.c.0
broadcast a.b.c.255
dns-nameservers 127.0.0.1 a.b.c.241 a.b.c.242 8.8.8.8
dns-domain impelling.co.uk
gateway a.b.c.254
# dns-* options are implemented by the resolvconf package, if installed

iface eth1 inet static
address a.b.c.68
netmask 255.255.255.0
broadcast a.b.c.255
network a.b.c.0

iface eth2 inet static
address a.b.c.69
netmask 255.255.255.0
broadcast a.b.c.255
network a.b.c.0

iface eth3 inet static
address a.b.c.70
netmask 255.255.255.0
broadcast a.b.c.255
network a.b.c.0

iface xenbr0 inet static
address a.b.c.64
netmask 255.255.255.240
broadcast a.b.c.255
network a.b.c.64
pre-up brctl addbr xenbr0

iface xenbr1 inet static
address a.b.c.78
netmask 255.255.255.240
broadcast a.b.c.255
network a.b.c.64
pre-up brctl addbr xenbr1

and ifconfig returns…

xenhost:~# ifconfig eth0 Link encap:Ethernet HWaddr 10:60:4b:ae:f8:f0 inet addr:a.b.c.67 Bcast:a.b.c.255 Mask:255.255.255.0 inet6 addr: aaaa::bbbb:cccc:feae:f8f0/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:814147 errors:0 dropped:14011 overruns:0 frame:0 TX packets:54261 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:133546832 (133.5 MB) TX bytes:4874343 (4.8 MB) Memory:fbe00000-fbf00000

eth1 Link encap:Ethernet HWaddr 10:60:4b:ae:f8:f1
inet addr:a.b.c.68 Bcast:a.b.c.255 Mask:255.255.255.0
inet6 addr: aaaa::bbbb:cccc:feae:f8f1/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:736779 errors:0 dropped:14012 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:73112287 (73.1 MB) TX bytes:468 (468.0 B)
Memory:fbc00000-fbd00000

eth2 Link encap:Ethernet HWaddr 10:60:4b:ae:f8:f2
inet addr:a.b.c.69 Bcast:a.b.c.255 Mask:255.255.255.0
inet6 addr: aaaa::bbbb:cccc:feae:f8f2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:747487 errors:0 dropped:14012 overruns:0 frame:0
TX packets:25 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:74117678 (74.1 MB) TX bytes:1266 (1.2 KB)
Memory:fba00000-fbb00000

eth3 Link encap:Ethernet HWaddr 10:60:4b:ae:f8:f3
inet addr:a.b.c.70 Bcast:a.b.c.255 Mask:255.255.255.0
inet6 addr: aaaa::bbbb:cccc:feae:f8f3/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:736778 errors:0 dropped:14011 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:73112227 (73.1 MB) TX bytes:468 (468.0 B)
Memory:fb800000-fb900000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:63866 errors:0 dropped:0 overruns:0 frame:0
TX packets:63866 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:34007443 (34.0 MB) TX bytes:34007443 (34.0 MB)

vif1.0 Link encap:Ethernet HWaddr fe:ff:ff:ff:ff:ff
inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:520 errors:0 dropped:0 overruns:0 frame:0
TX packets:2350 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:32
RX bytes:37396 (37.3 KB) TX bytes:123780 (123.7 KB)

vif1.1 Link encap:Ethernet HWaddr fe:ff:ff:ff:ff:ff
inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:520 errors:0 dropped:0 overruns:0 frame:0
TX packets:1042 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:32
RX bytes:37396 (37.3 KB) TX bytes:68844 (68.8 KB)

xenbr0 Link encap:Ethernet HWaddr fe:ff:ff:ff:ff:ff
inet addr:a.b.c.64 Bcast:a.b.c.255 Mask:255.255.255.240
inet6 addr: fe80::7c3f:c7ff:fe03:c4db/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:1830 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:99780 (99.7 KB)

xenbr1 Link encap:Ethernet HWaddr fe:ff:ff:ff:ff:ff
inet addr:a.b.c.78 Bcast:a.b.c.255 Mask:255.255.255.240
inet6 addr: fe80::2c28:66ff:fe6c:29f6/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:522 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:44844 (44.8 KB)

Pinging from a remote machine succeeds for the 67 IP but not for the other 3 physical ports - is this related to the configuration of the primary Xen instance?

If I create a new Xen VM with the ubuntu 12.04 image using IP addresses a.b.c.71 and a.b.c.78 as eth0 and 1 respectively, and use the primary / host to act as a router to gateway a.b.c.254 the guest instance starts but is unable to connect to the network.

During bootup of the VM, the console hangs at SCSI subsystem initialized.

When it does eventually start fully, however, from within the guest VM, I can ping the a.b.c.67 address (eth0 of the host instance) but nothing else.

Am I missing something basic here or is there some other set up that would provide what I’m looking for.

Any help or advice as to how I should proceed would be very much appreciated.

Thanks