forked from MaxiNet/MaxiNet
-
Notifications
You must be signed in to change notification settings - Fork 0
/
INSTALL.txt
82 lines (64 loc) · 2.73 KB
/
INSTALL.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
MaxiNet installation
Introduction:
MaxiNet is a distributed version of mininet where multiple mininet instances
running on different physical machines (called workers) are interconnected and used
to run large scale experiments. Using the MaxiNet API, specification of
experiments feels like setting up experiments in Mininet because MaxiNet
automatically maps the topology of the network to the workers and configures
them accordingly.
Warning:
MaxiNet allows to run command line commands with root permissions over a
network rpc connection as well as a seperate ssh server. Although authentication
measures are in place to prevent unauthorized access, it is strongly disadvised
to run MaxiNet on an untrusted or publicly accessible network.
Supported Operating Systems:
Debian 8
Ubuntu 14.04
There are two different ways to install MaxiNet 1.2:
- automated installation using the installer.sh script
- manual installation using the instructions below.
#### automated installation ####
In case you want to use the automated installer, just issue the following command:
./installer.sh
#### manual installation ####
1: Install dependencies
> sudo apt-get install git autoconf screen cmake build-essential sysstat python-matplotlib uuid-runtime python-pip
2: Install mininet 2.2.1rc1 and OpenVSwitch
> git clone git://github.com/mininet/mininet
> cd mininet
> git checkout -b 2.2.1rc1 2.2.1rc1
> cd .. && sudo mininet/util/install.sh -a
3: Install metis
> wget http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz
> tar -xzf metis-5.1.0.tar.gz
> rm metis-5.1.0.tar.gz
> cd metis-5.1.0
> make config
> make
> sudo make install
> cd ..
4: Install Pyro4
> sudo pip install Pyro4
5: Download and install MaxiNet
> cd ~ && git clone git://github.com/MaxiNet/MaxiNet.git
> cd MaxiNet
> git checkout v1.2
> sudo make install
6: Set up cluster and configure MaxiNet
Repeat steps 1-5 for every pc you want to use as worker or frontend.
On the frontend machine copy the MaxiNet-cfg-sample file to ~/.MaxiNet.cfg and edit the file.
Please note that every worker connecting to the MaxiNet Server will need an respective
entry in the configuration file, named by its hostname and containing its ip.
Although MaxiNet tries to guess the IP of the worker if not found in the
configuration file this is nothing one should depend on.
Copy the ./MaxiNet.cfg file to all worker machines.
7: Start MaxiNet
On the frontend machine call
> MaxiNetFrontendServer
On every worker machine call
> sudo MaxiNetWorker
You should see that the workers are connecting to the frontend.
Start an OpenFlow controller for example by calling
> cd ~/pox/ && python2 pox.py forwarding.l2_learning
Now run /usr/local/share/MaxiNet/examples/simplePing.py
Congratulations, you just set up your own SDN!