When ever I try to login SSH to my mininet VM from Host terminal it shows Permission denied error and even from within VM terminal where the Mininet is hosted using command:
sudo mn --topo single,3 --mac --switch ovsk --controller remote`
it shows the following error:
ubuntu@ubuntu:~$ sudo mn
*** Creating network
*** Adding controller
*** Adding hosts:
h1 h2
*** Adding links:
(h1, s1) (h2, s1)
*** Configuring hosts
h1 h2
*** Starting controller
Cannot find required executable ovs-controller.
Please make sure that it is installed and availabe in your $PATH:
(/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin/:/bin)
ubuntu@ubuntu:~$
So I can't continue using the SDN network! How can it be fixed manually and why this error happens!
I had the exact same problem when I upgraded to Open vSwitch 2.1. In the release notes of ovs (NEWS) I found this:
- ovs-controller has been renamed test-controller. It is no longer
packaged or installed by default, because too many users assumed
incorrectly that ovs-controller was a necessary or desirable part
of an Open vSwitch deployment.
I also found test-controller
under ./tests/test-controller
(source distribution), so I just tried
sudo cp tests/test-controller /usr/bin/ovs-controller
and that works fine for me! I'm using Mininet 2.1 as well, but I had to do the above for it to work. Here's the output:
$ sudo mn --controller=ovsc
*** Creating network
*** Adding controller
*** Adding hosts:
h1 h2
*** Adding switches:
s1
*** Adding links:
(h1, s1) (h2, s1)
*** Configuring hosts
h1 h2
*** Starting controller
*** Starting 1 switches
s1
*** Starting CLI:
mininet> pingall
*** Ping: testing ping reachability
h1 -> h2
h2 -> h1
*** Results: 0% dropped (2/2 received)
mininet>
It's interesting that they discourage the use of test-controller
, and even more so that Mininet seems to rely on it. Perhaps there is a better executable for this purpose?
Let me know if this works for you!