*** errRun: ['grep', '-c', 'processor', '/proc/cpuinfo']
https://mailman.stanford.edu/pipermail/mininet-discuss/2016-January/006672.html
[root@kunpeng82 sdn-ip-topology]# grep -c processor /proc/cpuinfo 64 [root@kunpeng82 sdn-ip-topology]#
*** errRun: ['which', 'controller'] /usr/local/bin/controller 0*** errRun: ['grep', '-c', 'processor', '/proc/cpuinfo'] 64 0*** Setting resource limits *** Creating network *** Adding controller *** errRun: ['which', 'mnexec'] /bin/mnexec 0*** errRun: ['which', 'ifconfig'] /sbin/ifconfig 0_popen ['mnexec', '-cd', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:c0'] 44950*** c0 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m *** errRun: ['which', 'telnet'] /bin/telnet 0*** c0 : ('echo A | telnet -e A 127.0.0.1 6653',)
[root@kunpeng82 devuser]# grep CONFIG_NET_NS /boot/config-`uname -r` CONFIG_NET_NS=y CONFIG_NET_NSH=y [root@kunpeng82 devuser]#
*** errRun: ['grep', '-c', 'processor', '/proc/cpuinfo'] 64 0*** Setting resource limits *** Creating network *** Adding controller *** errRun: ['which', 'mnexec'] /bin/mnexec 0*** errRun: ['which', 'ifconfig'] /sbin/ifconfig 0_popen ['mnexec', '-cd', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:c0'] 46927*** c0 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m *** c0 : ('echo A | telnet -e A 127.0.0.1 6653',) Telnet escape character is 'A'. Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is 'A'. telnet> Connection closed. Connecting to remote controller at 127.0.0.1:6653 *** Adding hosts: *** errRun: ['which', 'mnexec'] /bin/mnexec 0*** errRun: ['which', 'ifconfig'] /sbin/ifconfig 0_popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:bgp'] 46934*** bgp : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m bgp *** errRun: ['which', 'mnexec'] /bin/mnexec 0*** errRun: ['which', 'ifconfig'] /sbin/ifconfig 0_popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h1'] 46938*** h1 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m h1 _popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h2'] 46941*** h2 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m h2 _popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h3'] 46943*** h3 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m h3 _popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h4'] 46945*** h4 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m h4 _popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:r1'] 46947*** r1 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m r1 _popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:r2'] 46949*** r2 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m r2 _popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:r3'] 46951*** r3 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m r3 _popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:r4'] 46953*** r4 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m r4 *** errRun: ['which', 'mnexec'] /bin/mnexec 0*** errRun: ['which', 'ifconfig'] /sbin/ifconfig 0_popen ['mnexec', '-cd', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:root'] 46957*** root : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m root _popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:sdnh1'] 46959*** sdnh1 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m sdnh1 _popen ['mnexec', '-cdn', 'env', 'PS1=x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:sdnh2'] 46961*** sdnh2 : ('unset HISTFILE; stty -echo; set +m',) unset HISTFILE; stty -echo; set +m sdnh2
[root@kunpeng82 mininet]# mn --version 2.3.0d6
[root@kunpeng82 sdn-ip-topology]# mn --host cfs *** Creating network *** Adding controller *** Adding hosts: -------------------------------------------------------------------------------- Caught exception. Cleaning up... Exception: errFail: ('cgcreate -g cpu,cpuacct,cpuset:/h1',) failed with return code 87: cgcreate: can't create cgroup /h1: Cgroup, operation not allowed -------------------------------------------------------------------------------- *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes killall controller ofprotocol ofdatapath ping nox_core lt-nox_core ovs-openflowd ovs-controller udpbwtest mnexec ivs 2> /dev/null killall -9 controller ofprotocol ofdatapath ping nox_core lt-nox_core ovs-openflowd ovs-controller udpbwtest mnexec ivs 2> /dev/null pkill -9 -f "sudo mnexec" *** Removing junk from /tmp rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log *** Removing old X11 tunnels *** Removing excess kernel datapaths ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/' *** Removing OVS datapaths ovs-vsctl --timeout=1 list-br ovs-vsctl --timeout=1 list-br *** Removing all links of the pattern foo-ethX ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)' ip link show *** Killing stale mininet node processes pkill -9 -f mininet: *** Shutting down stale tunnels pkill -9 -f Tunnel=Ethernet pkill -9 -f .ssh/mn rm -f ~/.ssh/mn/* *** Cleanup complete. [root@kunpeng82 sdn-ip-topology]#
A few comments - apologies for repeating myself a bit: As noted, this probably isn't a problem with Mininet but with your environment. Try to reproduce it in the official Mininet 2.2.1 VM. I don't have an EC2 account at the moment unfortunately. CPULimitedHost isn't useful by itself unless you specify the cpu fraction. Make sure that cgroups is installed and working on your system (e.g. make sure that /sys/fs/cgroup/{cpu,cpuacct...} are all there and that the utilities are installed and working) You should run with setLogLevel('debug') (aka -v debug) and take a look at the commands and output to make sure that everything is operating as expected. You should make sure that sudo mn --host cfs -v debug works. Since that doesn't do anything useful, you may wish to consider sudo mn --host cfs,cpu=.2 -v debug instead. You may also wish to look at/try mininet/mininet/test/test_hifi -v, possibly also changing it to setLogLevel('debug') Since you're a grad student, you will probably find it easy to figure out what is going wrong and fix it yourself! And share it with other people in your class and/or your TAs. ;-) Assuming you took the time to look at the error message and the code, it should be obvious that cgdelete -r is failing. Why do you think that might be happening?
Can you at least please include the result of running cd ~/mininet git checkout 2.2.1 sudo make install sudo mn -v debug --host cfs,cpu=.2 --test pingpair vs. cd ~/mininet git checkout 2.2.0 sudo make install sudo mn -v debug --host cfs,cpu=.2 --test pingpair
版本问题
有"RedHatEnterpriseServer"的地方添加 CentOS DIST=`lsb_release -is` [root@kunpeng82 util]# lsb_release -is CentOS [root@kunpeng82 util]
install.sh -nf 安装好依赖
[root@kunpeng82 mininet]# pip uninstall mininet DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2.7 in January 2021. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support Found existing installation: mininet 2.2.2 Uninstalling mininet-2.2.2: Would remove: /usr/bin/mn /usr/lib/python2.7/site-packages/mininet-2.2.2-py2.7.egg Proceed (y/n)? n [root@kunpeng82 mininet]# git branch -d 2.2.0 error: branch '2.2.0' not found. [root@kunpeng82 mininet]# git checkout 2.2.0 HEAD is now at c75eb47... 2.2.0rc1 -> 2.2.0 [root@kunpeng82 mininet]# make install cc -Wall -Wextra -DVERSION="`PYTHONPATH=. bin/mn --version`" mnexec.c -o mnexec PYTHONPATH=. help2man -N -n "create a Mininet network." --no-discard-stderr bin/mn -o mn.1 help2man -N -n "execution utility for Mininet." -h "-h" -v "-v" --no-discard-stderr ./mnexec -o mnexec.1 install mnexec /usr/bin install mn.1 mnexec.1 /usr/share/man/man1