Statistics
| Branch: | Tag: | Revision:

mininet / INSTALL @ 21366afc

History | View | Annotate | Download (3.67 KB)

1

    
2
Mininet Installation/Configuration Notes
3

    
4
Mininet 2.0.0
5

    
6
---
7

    
8
The supported installation methods for Mininet are 1) using
9
a pre-built VM image, and 2) native installation on Ubuntu. You
10
can also easily create your own Mininet VM image (3).
11

    
12
(Other distributions may be supported in the future - if you would
13
like to contribute an installation script, we would welcome it!)
14

    
15
1. Easiest "installation" - use our pre-built VM image!
16

    
17
The easiest way to get Mininet running is to start with one of our pre-built 
18
virtual machine images from http://openflow.org/mininet
19

    
20
Boot up the VM image, log in, and follow the instructions on the wiki page.
21

    
22
One advantage of using the VM image is that it doesn't mess with
23
your native OS installation or damage it in any way.
24

    
25
Although a single Mininet instance can simulate multiple networks with
26
multiple controllers, only one Mininet instance may currently be run at
27
a time, and Mininet requires root access in the machine it's running on.
28
Therefore, if you have a multiuser system, you may wish to consider
29
running Mininet in a VM.
30

    
31
2. Next-easiest option: use our Ubuntu package!
32

    
33
To install Mininet itself (i.e. mn and the Python API) on Ubuntu 12.10+
34

    
35
  sudo apt-get install mininet
36

    
37
Note: if you are upgrading from an older version of Mininet, make sure you
38
remove the old OVS from /usr/local:
39

    
40
  sudo rm /usr/local/bin/ovs*
41
  sudo rm /usr/local/sbin/ovs*
42

    
43
3. Native installation from source on Ubuntu 11.10+
44

    
45
If you're reading this, you've probably already done so, but the command to
46
download the Mininet source code is;
47
   
48
  git clone git://openflow.org/mininet.git
49

    
50
If you are running Ubuntu, you may be able to use our handy install.sh script,
51
which is in mininet/util.
52

    
53
WARNING: USE AT YOUR OWN RISK!
54

    
55
install.sh is a bit intrusive and may possibly damage your OS and/or
56
home directory, by creating/modifying several directories such as
57
mininet, openflow, openvswitch and noxcore. Although we hope it won't
58
do anything completely terrible, you may want to look at the script
59
before you run it, and you should make sure your system and home
60
directory are backed up just in case!
61

    
62
To install Mininet itself, the OpenFlow reference implementation, and
63
Open vSwitch, you may use:
64

    
65
$ mininet/util/install.sh -fnv
66

    
67
This should be reasonably quick and the following command should work
68
after the installation:
69

    
70
$ sudo mn --test pingall
71

    
72
To install ALL of the software which we use for OpenFlow tutorials,
73
including NOX classic, the OpenFlow WireShark dissector, the oftest
74
framework, and other potentially useful software (and to add some stuff
75
to /etc/sysctl.conf which may or may not be useful) you may use
76

    
77
$ mininet/util/install.sh -a
78

    
79
This takes about 20 minutes on our test system.
80

    
81
4. Creating your own Mininet/OpenFlow tutorial VM
82

    
83
Creating your own Ubuntu Mininet VM for use with the OpenFlow tutorial
84
is easy! First, create a new Ubuntu VM. Then, run
85

    
86
$ wget https://raw.github.com/mininet/mininet/util/vm/install-mininet-vm.sh
87
$ time install-mininet-vm.sh
88

    
89
5. Installation on other Linux distributions
90

    
91
Although we don't support other Linux distributions directly, it should be
92
possible to install and run Mininet with some degree of manual effort.
93

    
94
In general, you must have:
95

    
96
* A Linux kernel compiled with network namespace support enabled
97

    
98
* An OpenFlow implementation (either the reference user or kernel
99
  space implementations, or Open vSwitch.) Appropriate kernel modules
100
  (e.g. tun and ofdatapath for the reference kernel implementation) must
101
  be loaded.
102

    
103
* Python, `bash`, `ping`, `iperf`, etc.
104

    
105
* Root privileges (required for network device access)
106

    
107
We encourage contribution of patches to the `install.sh` script to support
108
other Linux distributions.
109

    
110
Good luck!
111

    
112
Mininet Team
113

    
114
---
115

    
116
  
117