Mininet is a container orchestration system for network emulation.
If you are using Mininet in a VM or on a physical server, it is easy to use onos.py to start up a complete emulated ONOS network, including ONOS cluster, modeled control network, and data network.
First, make sure that you have built ONOS using buck:
cd ~/onos
buck build onos
Next, use Mininet and onos.py to start up a virtual ONOS cluster and data network:
cd ~/onos/tools/dev/mininetsudo mn --custom onos.py --controller onos,3 --switch onosovs --topo torus,4,4
What does this do?
--custom onos.py: uses onos.py to extend Mininet with new controller and switch types
--controller onos,3: tells Mininet to start up an ONOS controller cluster with 3 ONOS nodes
--switch onosovs: this is currently necessary to enable Mininet to automatically connect to a controller with multiple IP addresses
--topo torus,4,4: tells Mininet to use a 4x4 torus topology for the data network