Ubuntu12.04にRyuのトポロジーのGUI表示機能を設定
https://github.com/yamada-h/ryu/wiki/GUIのページを参考にしました。
Pythonのバージョンが2.6では失敗し、2.7では成功しました。
事前にPythonのバージョン確認を行ってください。
Ryuの公式のブランチにはマージされていませんが、トポロジー表示機能も存在します。公式のryuではなく、以下のようにyamada-hさんのgitリポジトリからソースコードを取得します。
# apt-get install python2.7 # python --version ←2.7と表示されることを確認 # apt-get install git python-setuptools python-dev libevent-dev # easy_install pip # pip install flask # pip install gevent # pip install gevent-websocket # git clone https://github.com/yamada-h/ryu.git ←yamada-hさんのgitリポジトリから取得 # cd ryu # git checkout -b origin/gui-patch-v3 origin/gui-patch-v3 # chmod +x setup.py # python setup.py install # python ./ryu/gui/controller.py ←実行後ログで画面が埋まるので、次のコマンドは別のターミナルで実行する。 # PYTHONPATH=. ./bin/ryu-manager --verbose --observe-links ryu/topology/switches.py ryu/app/rest_topology.py ryu/app/ofctl_rest.py ←別のターミナルで実行する
上のコマンドを実行しているUbuntu上のOpenFlowコントローラに、別の端末上のOpenvSwitchを接続したところ、以下のような画面が表示されました。NICやフローエントリも確認できるようです。
mininetと組み合わせると、容易に検証環境を構築できます。