IU implementation

From PRAGMA wiki
Revision as of 16:30, 21 October 2015 by Wikiadmin (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Network Wiring

Error creating thumbnail:
Error code: 139

Setup ViNe server on a Rocks 5.4 system

Install ViNe software

Follow Install ViNe software in UCSD implementation.

Configure ViNe software

  • Install ViNe configuration software
# wget http://vine.acis.ufl.edu/vine/lib/vinecsc.tgz
# tar zxf vinecsc.tgz -C /opt
  • Set Java Path in /opt/vinecsc/bin/csc.functions
# diff /opt/vinecsc/bin/csc.functions /opt/vinecsc/bin/csc.functions.orig
2,3c2,3
< JAVA_HOME=/usr/java/latest
< export PATH=$JAVA_HOME/bin:.:$PATH
---
> # JAVA_HOME=/opt/soft/java
> # export PATH=$JAVA_HOME/bin:.:$PATH
  • Configure ViNe
# service vine stop
# /opt/vinecsc/bin/csc.sh
> vr update 10000009 742
> vr subnet add 742 172.31.12.0 255.255.255.0
> vr subnet del 742 172.16.0.176 255.255.255.240
> hosts del 742
> hosts config 742 74
> vn add vr 742 74
> vr update vineip 741 172.31.12.1
> jpacache clear
> __quit
# service vine start

Configure ViNe Containers

This example is to allow VM containers to run some VMs on 10.1.0.0 subnet and other VMs on 172.31.12.0.

  • Add vine network
# rocks add network vine subnet=172.31.12.0 netmask=255.255.255.0
  • Create vlan 100 for 172.31.12.0/24
# rocks add host interface vm-container-0-0 eth0.100 vlan=100 subnet=vine ip=172.31.12.1
# rocks add host interface vm-container-0-1 eth0.100 vlan=100 subnet=vine ip=172.31.12.2
# rocks add host interface vm-container-0-3 eth0.100 vlan=100 subnet=vine ip=172.31.12.3
  • Add a static route to make 172.16.0.0/12 go through IU VR (172.31.12.1)
# rocks add host route vm-container-0-1 172.16.0.0 172.31.12.1 netmask=255.240.0.0
# rocks add host route vm-container-0-3 172.16.0.0 172.31.12.1 netmask=255.240.0.0
  • Push changes to vm containers
# rocks sync config
# rocks sync host network vm-container-0-0
# rocks sync host network vm-container-0-1
# rocks sync host network vm-container-0-3
  • Other configurations to enable IU ViNe (from Mauricio's email)
The complex part:
The problem was that arp messages were not going through eth0.100 on vm-container-0-0 (the IU VR machine). The main difference is that on -1 and -3, eth0.100 is configured in a linux bridge created by xen. So I edited /etc/xen/scritps/rocks-network-bridge to have
...
        xenbrup eth0.100
...
I am not sure why it is "xenbrup eth0.100" instead of "xenbrup eth0 100", but it is how I found on vm-container-0-1 and vm-container-0-3.
After rebooting the machine, arp messages are going through eth0.100, and everything seems to be working. It seems that xenbr is doing some magic to support VLANs (at least for arp messages).

Creating VLAN/interface manually using vconfig/ifconfig I was not able to establish communication among -0, -1, -3. I am not sure what the linux bridge is doing, but it seems to be needed in this particular setup.