Skip to content

Tutorial 4: Multi tenant DCN TNC 2016

Eduard Grasa edited this page Jun 22, 2016 · 28 revisions

Introduction

The goal of this tutorial is to experiment with the configuration of a small RINA-based data centre network using the Network Management System DAF (NMS-DAF) developed in the PRISTINE project. This experiment was demonstrated live at the TNC 2016 conference. This scenario has been tested with the pristine-1.5 branch, using 12 XEN Virtual Machines running in the same Host.

Tutorial 4 scenario: top view

The image above shows the top view of the DCN scenario, except for the Management DIF (not shown to not overcomplicate the picture). In the demo configuration the NMS-DAF was running over a dedicated DIF - to better enforce separation of user and management traffic - but this is just a possible configuration: the NMS-DAF can use any underlying DIF. The image below shows a side view of the different levels of DIFs in the DC.

Tutorial 4 scenario: side view

1. Bootstrapping the systems

Configuration files must be copied to the stack's installation path "etc" folder (e.g. if you installed it in /usr/local/irati, config files must be in /usr/local/irati/etc). The configuration files only create the shim IPCPs in each system as well the IPCP in the NMS DIF, all the other DIFs will be created via the Manager.

1.1 M1

1.1.1 M1 system configuration

Copy the following files into <installation_path>/etc.

1.1.2 M1 system initialization

Configure the required VLANs

modprobe 8021q
ip link add link eth1 name eth1.12 type vlan id 12
ip link set dev eth1 up
ip link set dev eth1.12 up
ip link add link eth2 name eth2.13 type vlan id 13
ip link set dev eth2 up
ip link set dev eth2.13 up
ip link add link eth3 name eth3.14 type vlan id 14
ip link set dev eth3 up
ip link set dev eth3.14 up
ip link add link eth4 name eth4.15 type vlan id 15
ip link set dev eth4 up
ip link set dev eth4.15 up
ip link add link eth5 name eth5.16 type vlan id 16
ip link set dev eth5 up
ip link set dev eth5.16 up
ip link add link eth6 name eth6.17 type vlan id 17
ip link set dev eth6 up
ip link set dev eth6.17 up
ip link add link eth7 name eth7.18 type vlan id 18
ip link set dev eth7 up
ip link set dev eth7.18 up
ip link add link eth8 name eth8.19 type vlan id 19
ip link set dev eth8 up
ip link set dev eth8.19 up
ip link add link eth9 name eth9.110 type vlan id 110
ip link set dev eth9 up
ip link set dev eth9.110 up
ip link add link eth10 name eth10.111 type vlan id 111
ip link set dev eth10 up
ip link set dev eth10.111 up
ip link add link eth11 name eth11.112 type vlan id 112
ip link set dev eth11 up
ip link set dev eth11.112 up

Load the RINA kernel modules

modprobe shim-eth-vlan
modprobe rina-default-plugin
modprobe normal-ipcp

Startup the IPC Manager in the background

cd <installation_path>/bin
./ipcm -c ../etc/ipcm-t4.conf -l DEBUG -a "console, scripting, mad" &

1.2 M2

1.2.1 M2 system configuration

Copy the following files into <installation_path>/etc.

1.2.2 M2 system initialization

Configure the required VLANs

modprobe 8021q
ip link add link eth1 name eth1.12 type vlan id 12
ip link set dev eth1 up
ip link set dev eth1.12 up
ip link add link eth8 name eth8.29 type vlan id 29
ip link set dev eth8 up
ip link set dev eth8.29 up

Load the RINA kernel modules

modprobe shim-eth-vlan
modprobe rina-default-plugin
modprobe normal-ipcp

Startup the IPC Manager in the background

cd <installation_path>/bin
./ipcm -c ../etc/ipcm-t4.conf -l DEBUG -a "console, scripting, mad" &

Log into the IPC Manager console and enroll with system m1 in the NMS DIF

root@m2:~# socat - UNIX:/usr/local/irati/var/run/ipcm-console.sock 
IPCM >>> enroll-to-dif 3 NMS.DIF 12 m1.nms 1
IPCM >>> DIF enrollment successfully completed
IPCM >>> list-ipcps
    Current IPC processes (id | name | type | state | Registered applications | Port-ids of flows provided)
        1 | m2.12:1:: | shim-eth-vlan | ASSIGNED TO DIF 12 | m2.nms-1-- | 2
        2 | m2.29:1:: | shim-eth-vlan | ASSIGNED TO DIF 29 | - | -
        3 | m2.nms:1:: | normal-ipc | ASSIGNED TO DIF NMS.DIF | - | -
IPCM >>> exit
root@m2:~#

1.3 M3

1.3.1 M3 system configuration

Copy the following files into <installation_path>/etc.

1.3.2 M3 system initialization

Configure the required VLANs

modprobe 8021q
ip link add link eth1 name eth1.13 type vlan id 13
ip link set dev eth1 up
ip link set dev eth1.13 up
ip link add link eth8 name eth8.39 type vlan id 39
ip link set dev eth8 up
ip link set dev eth8.39 up

Load the RINA kernel modules

modprobe shim-eth-vlan
modprobe rina-default-plugin
modprobe normal-ipcp

Startup the IPC Manager in the background

cd <installation_path>/bin
./ipcm -c ../etc/ipcm-t4.conf -l DEBUG -a "console, scripting, mad" &

Log into the IPC Manager console and enroll with system m1 in the NMS DIF

root@m3:~# socat - UNIX:/usr/local/irati/var/run/ipcm-console.sock 
IPCM >>> enroll-to-dif 3 NMS.DIF 13 m1.nms 1
IPCM >>> DIF enrollment successfully completed
IPCM >>> list-ipcps
    Current IPC processes (id | name | type | state | Registered applications | Port-ids of flows provided)
        1 | m3.13:1:: | shim-eth-vlan | ASSIGNED TO DIF 13 | m3.nms-1-- | 2
        2 | m3.39:1:: | shim-eth-vlan | ASSIGNED TO DIF 39 | - | -
        3 | m3.nms:1:: | normal-ipc | ASSIGNED TO DIF NMS.DIF | - | -
IPCM >>> exit
root@m3:~#

1.4 M4

1.4.1 M4 system configuration

Copy the following files into <installation_path>/etc.

1.4.2 M4 system initialization

Configure the required VLANs

modprobe 8021q
ip link add link eth1 name eth1.14 type vlan id 14
ip link set dev eth1 up
ip link set dev eth1.14 up
ip link add link eth8 name eth8.49 type vlan id 49
ip link set dev eth8 up
ip link set dev eth8.49 up

Load the RINA kernel modules

modprobe shim-eth-vlan
modprobe rina-default-plugin
modprobe normal-ipcp

Startup the IPC Manager in the background

cd <installation_path>/bin
./ipcm -c ../etc/ipcm-t4.conf -l DEBUG -a "console, scripting, mad" &

Log into the IPC Manager console and enroll with system m1 in the NMS DIF

root@m4:~# socat - UNIX:/usr/local/irati/var/run/ipcm-console.sock 
IPCM >>> enroll-to-dif 3 NMS.DIF 14 m1.nms 1
IPCM >>> DIF enrollment successfully completed
IPCM >>> list-ipcps
    Current IPC processes (id | name | type | state | Registered applications | Port-ids of flows provided)
        1 | m4.14:1:: | shim-eth-vlan | ASSIGNED TO DIF 14 | m4.nms-1-- | 2
        2 | m4.49:1:: | shim-eth-vlan | ASSIGNED TO DIF 49 | - | -
        3 | m4.nms:1:: | normal-ipc | ASSIGNED TO DIF NMS.DIF | - | -
IPCM >>> exit
root@m4:~#

1.5 M5

1.5.1 M5 system configuration

Copy the following files into <installation_path>/etc.

1.5.2 M5 system initialization

Configure the required VLANs

modprobe 8021q
ip link add link eth1 name eth1.15 type vlan id 15
ip link set dev eth1 up
ip link set dev eth1.15 up
ip link add link eth7 name eth7.58 type vlan id 58
ip link set dev eth7 up
ip link set dev eth7.58 up

Load the RINA kernel modules

modprobe shim-eth-vlan
modprobe rina-default-plugin
modprobe normal-ipcp

Startup the IPC Manager in the background

cd <installation_path>/bin
./ipcm -c ../etc/ipcm-t4.conf -l DEBUG -a "console, scripting, mad" &

Log into the IPC Manager console and enroll with system m1 in the NMS DIF

root@m5:~# socat - UNIX:/usr/local/irati/var/run/ipcm-console.sock 
IPCM >>> enroll-to-dif 3 NMS.DIF 15 m1.nms 1
IPCM >>> DIF enrollment successfully completed
IPCM >>> list-ipcps
    Current IPC processes (id | name | type | state | Registered applications | Port-ids of flows provided)
        1 | m5.15:1:: | shim-eth-vlan | ASSIGNED TO DIF 15 | m5.nms-1-- | 2
        2 | m5.58:1:: | shim-eth-vlan | ASSIGNED TO DIF 58 | - | -
        3 | m5.nms:1:: | normal-ipc | ASSIGNED TO DIF NMS.DIF | - | -
IPCM >>> exit
root@m5:~#

1.6 M6

1.6.1 M6 system configuration

Copy the following files into <installation_path>/etc.

1.6.2 M6 system initialization

Configure the required VLANs

modprobe 8021q
ip link add link eth1 name eth1.16 type vlan id 16
ip link set dev eth1 up
ip link set dev eth1.16 up
ip link add link eth7 name eth7.68 type vlan id 68
ip link set dev eth7 up
ip link set dev eth7.68 up

Load the RINA kernel modules

modprobe shim-eth-vlan
modprobe rina-default-plugin
modprobe normal-ipcp

Startup the IPC Manager in the background

cd <installation_path>/bin
./ipcm -c ../etc/ipcm-t4.conf -l DEBUG -a "console, scripting, mad" &

Log into the IPC Manager console and enroll with system m1 in the NMS DIF

root@m6:~# socat - UNIX:/usr/local/irati/var/run/ipcm-console.sock 
IPCM >>> enroll-to-dif 3 NMS.DIF 16 m1.nms 1
IPCM >>> DIF enrollment successfully completed
IPCM >>> list-ipcps
    Current IPC processes (id | name | type | state | Registered applications | Port-ids of flows provided)
        1 | m6.16:1:: | shim-eth-vlan | ASSIGNED TO DIF 16 | m6.nms-1-- | 2
        2 | m6.68:1:: | shim-eth-vlan | ASSIGNED TO DIF 68 | - | -
        3 | m6.nms:1:: | normal-ipc | ASSIGNED TO DIF NMS.DIF | - | -
IPCM >>> exit
root@m6:~#

1.7 M7

1.7.1 M7 system configuration

Copy the following files into <installation_path>/etc.

1.7.2 M7 system initialization

Configure the required VLANs

modprobe 8021q
ip link add link eth1 name eth1.17 type vlan id 17
ip link set dev eth1 up
ip link set dev eth1.17 up
ip link add link eth7 name eth7.78 type vlan id 78
ip link set dev eth7 up
ip link set dev eth7.78 up

Load the RINA kernel modules

modprobe shim-eth-vlan
modprobe rina-default-plugin
modprobe normal-ipcp

Startup the IPC Manager in the background

cd <installation_path>/bin
./ipcm -c ../etc/ipcm-t4.conf -l DEBUG -a "console, scripting, mad" &

Log into the IPC Manager console and enroll with system m1 in the NMS DIF

root@m7:~# socat - UNIX:/usr/local/irati/var/run/ipcm-console.sock 
IPCM >>> enroll-to-dif 3 NMS.DIF 17 m1.nms 1
IPCM >>> DIF enrollment successfully completed
IPCM >>> list-ipcps
    Current IPC processes (id | name | type | state | Registered applications | Port-ids of flows provided)
        1 | m7.17:1:: | shim-eth-vlan | ASSIGNED TO DIF 17 | m7.nms-1-- | 2
        2 | m7.78:1:: | shim-eth-vlan | ASSIGNED TO DIF 78 | - | -
        3 | m7.nms:1:: | normal-ipc | ASSIGNED TO DIF NMS.DIF | - | -
IPCM >>> exit
root@m7:~#

1.8 M8

1.8.1 M8 system configuration

Copy the following files into <installation_path>/etc.

1.8.2 M8 system initialization

Configure the required VLANs

modprobe 8021q
ip link add link eth1 name eth1.18 type vlan id 18
ip link set dev eth1 up
ip link set dev eth1.18 up
ip link add link eth5 name eth5.58 type vlan id 58
ip link set dev eth5 up
ip link set dev eth5.58 up
ip link add link eth6 name eth6.68 type vlan id 68
ip link set dev eth6 up
ip link set dev eth6.68 up
ip link add link eth7 name eth7.78 type vlan id 78
ip link set dev eth7 up
ip link set dev eth7.78 up
ip link add link eth9 name eth9.810 type vlan id 810
ip link set dev eth9 up
ip link set dev eth9.810 up
ip link add link eth10 name eth10.811 type vlan id 811
ip link set dev eth10 up
ip link set dev eth10.811 up

Load the RINA kernel modules

modprobe shim-eth-vlan
modprobe rina-default-plugin
modprobe normal-ipcp

Startup the IPC Manager in the background

cd <installation_path>/bin
./ipcm -c ../etc/ipcm-t4.conf -l DEBUG -a "console, scripting, mad" &

Log into the IPC Manager console and enroll with system m1 in the NMS DIF

root@m8:~# socat - UNIX:/usr/local/irati/var/run/ipcm-console.sock 
IPCM >>> enroll-to-dif 3 NMS.DIF 18 m1.nms 1
IPCM >>> DIF enrollment successfully completed
IPCM >>> list-ipcps
    Current IPC processes (id | name | type | state | Registered applications | Port-ids of flows provided)
        1 | m8.18:1:: | shim-eth-vlan | ASSIGNED TO DIF 18 | m8.nms-1-- | 2
        2 | m8.58:1:: | shim-eth-vlan | ASSIGNED TO DIF 58 | - | -
        3 | m8.68:1:: | shim-eth-vlan | ASSIGNED TO DIF 68 | - | -
        4 | m8.78:1:: | shim-eth-vlan | ASSIGNED TO DIF 78 | - | -
        5 | m8.810:1:: | shim-eth-vlan | ASSIGNED TO DIF 810 | - | -
        6 | m8.811:1:: | shim-eth-vlan | ASSIGNED TO DIF 811 | - | -
        7 | m8.nms:1:: | normal-ipc | ASSIGNED TO DIF NMS.DIF | - | -
IPCM >>> exit
root@m8:~#