Skip to content
Snippets Groups Projects
Commit ee66d53c authored by Bob Lantz's avatar Bob Lantz
Browse files

Clean up INSTALL and make it markdown-friendly

Also fixed a few errors like the time it takes to install,
some references to NOX, etc..

Left in noxcore ref, since you can still install it.
parent f95c4a47
No related branches found
No related tags found
No related merge requests found
Mininet Installation/Configuration Notes Mininet Installation/Configuration Notes
----------------------------------------
Mininet 2.0.0 Mininet 2.0.0
--- ---
The supported installation methods for Mininet are 1) using The supported installation methods for Mininet are 1) using a
a pre-built VM image, and 2) native installation on Ubuntu. You pre-built VM image, and 2) native installation on Ubuntu. You can also
can also easily create your own Mininet VM image (3). easily create your own Mininet VM image (4).
(Other distributions may be supported in the future - if you would (Other distributions may be supported in the future - if you would
like to contribute an installation script, we would welcome it!) like to contribute an installation script, we would welcome it!)
1. Easiest "installation" - use our pre-built VM image! 1. Easiest "installation" - use our pre-built VM image!
The easiest way to get Mininet running is to start with one of our pre-built The easiest way to get Mininet running is to start with one of our
virtual machine images from http://openflow.org/mininet pre-built virtual machine images from <http://openflow.org/mininet>
Boot up the VM image, log in, and follow the instructions on the wiki page. Boot up the VM image, log in, and follow the instructions on the
Mininet web site.
One advantage of using the VM image is that it doesn't mess with One advantage of using the VM image is that it doesn't mess with
your native OS installation or damage it in any way. your native OS installation or damage it in any way.
Although a single Mininet instance can simulate multiple networks with Although a single Mininet instance can simulate multiple networks
multiple controllers, only one Mininet instance may currently be run at with multiple controllers, only one Mininet instance may currently
a time, and Mininet requires root access in the machine it's running on. be run at a time, and Mininet requires root access in the machine
Therefore, if you have a multiuser system, you may wish to consider it's running on. Therefore, if you have a multiuser system, you
running Mininet in a VM. may wish to consider running Mininet in a VM.
2. Next-easiest option: use our Ubuntu package! 2. Next-easiest option: use our Ubuntu package!
To install Mininet itself (i.e. mn and the Python API) on Ubuntu 12.10+ To install Mininet itself (i.e. `mn` and the Python API) on Ubuntu
12.10+:
sudo apt-get install mininet sudo apt-get install mininet
Note: if you are upgrading from an older version of Mininet, make sure you Note: if you are upgrading from an older version of Mininet, make
remove the old OVS from /usr/local: sure you remove the old OVS from `/usr/local`:
sudo rm /usr/local/bin/ovs* sudo rm /usr/local/bin/ovs*
sudo rm /usr/local/sbin/ovs* sudo rm /usr/local/sbin/ovs*
3. Native installation from source on Ubuntu 11.10+ 3. Native installation from source on Ubuntu 11.10+
If you're reading this, you've probably already done so, but the command to If you're reading this, you've probably already done so, but the
download the Mininet source code is; command to download the Mininet source code is;
git clone git://github.com/mininet/mininet.git git clone git://github.com/mininet/mininet.git
If you are running Ubuntu, you may be able to use our handy install.sh script, If you are running Ubuntu, you may be able to use our handy
which is in mininet/util. `install.sh` script, which is in `mininet/util`.
WARNING: USE AT YOUR OWN RISK! *WARNING: USE AT YOUR OWN RISK!*
install.sh is a bit intrusive and may possibly damage your OS and/or `install.sh` is a bit intrusive and may possibly damage your OS
home directory, by creating/modifying several directories such as and/or home directory, by creating/modifying several directories
mininet, openflow, openvswitch and noxcore. Although we hope it won't such as `mininet`, `openflow`, `oftest`, `pox`, or `noxcosre`.
do anything completely terrible, you may want to look at the script Although we hope it won't do anything completely terrible, you may
before you run it, and you should make sure your system and home want to look at the script before you run it, and you should make
directory are backed up just in case! sure your system and home directory are backed up just in case!
To install Mininet itself, the OpenFlow reference implementation, and To install Mininet itself, the OpenFlow reference implementation, and
Open vSwitch, you may use: Open vSwitch, you may use:
$ mininet/util/install.sh -fnv mininet/util/install.sh -fnv
This should be reasonably quick and the following command should work This should be reasonably quick, and the following command should
after the installation: work after the installation:
$ sudo mn --test pingall sudo mn --test pingall
To install ALL of the software which we use for OpenFlow tutorials, To install ALL of the software which we use for OpenFlow tutorials,
including NOX classic, the OpenFlow WireShark dissector, the oftest including POX, the OpenFlow WireShark dissector, the `oftest`
framework, and other potentially useful software (and to add some stuff framework, and other potentially useful software (and to add some
to /etc/sysctl.conf which may or may not be useful) you may use stuff to `/etc/sysctl.conf` which may or may not be useful) you may
use
$ mininet/util/install.sh -a mininet/util/install.sh -a
This takes about 20 minutes on our test system. This takes about 4 minutes on our test system.
4. Creating your own Mininet/OpenFlow tutorial VM 4. Creating your own Mininet/OpenFlow tutorial VM
Creating your own Ubuntu Mininet VM for use with the OpenFlow tutorial Creating your own Ubuntu Mininet VM for use with the OpenFlow tutorial
is easy! First, create a new Ubuntu VM. Then, run is easy! First, create a new Ubuntu VM. Then, run
$ wget https://raw.github.com/mininet/mininet/util/vm/install-mininet-vm.sh wget https://raw.github.com/mininet/mininet/master/util/vm/install-mininet-vm.sh
$ time install-mininet-vm.sh time install-mininet-vm.sh
5. Installation on other Linux distributions 5. Installation on other Linux distributions
Although we don't support other Linux distributions directly, it should be Although we don't support other Linux distributions directly, it
possible to install and run Mininet with some degree of manual effort. should be possible to install and run Mininet with some degree of
manual effort.
In general, you must have: In general, you must have:
* A Linux kernel compiled with network namespace support enabled * A Linux kernel compiled with network namespace support enabled
* An OpenFlow implementation (either the reference user or kernel * An OpenFlow implementation (either the reference user or kernel
space implementations, or Open vSwitch.) Appropriate kernel modules space implementations, or Open vSwitch.) Appropriate kernel
(e.g. tun and ofdatapath for the reference kernel implementation) must modules (e.g. tun and ofdatapath for the reference kernel
be loaded. implementation) must be loaded.
* Python, `bash`, `ping`, `iperf`, etc. * Python, `bash`, `ping`, `iperf`, etc.`
* Root privileges (required for network device access) * Root privileges (required for network device access)
We encourage contribution of patches to the `install.sh` script to
support other Linux distributions.
We encourage contribution of patches to the `install.sh` script to support
other Linux distributions.
Good luck! Good luck!
Mininet Team Mininet Team
--- ---
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment