Continue…


延續上一篇在安裝 Ryu 3.5 的過程遇上一些小地雷。有網友因為安裝失敗,寫信來問詳細安裝過程才赫然發現安裝 Ryu 3.6 的地雷似乎變少了!

不過 Ryu 官方一直沒有把所需要的相依套件寫在首頁的 INSTALLATION IS A SNAP,而是寫在 Gitub 上的 Wiki 這個小角落,造成按照 INSTALLATION IS A SNAP 的方法做的人 Ryu 執行會失敗。

3/27 更新 : 安裝 Ryu 3.7 如果遇到 pkg_resources.DistributionNotFound: six>=1.4.0 請嘗試以下方法:

1
2
3
$ sudo apt-get install curl 
$ sudo su
$ curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | python

注意:需要取得 root 權限


3/19 更新 : Ryu 3.7 出來後又有一個套件 (gcc) 必須先裝好,在用 pip 安裝 sudo pip install Ryu 3.7 時,請先安裝好gcc

1
$ sudo apt-get install build-essential

Install on Linux/Ubuntu


這次主要紀錄,重剛灌好的 Linux/Ubuntu 上開始安裝 Ryu 的過程,強烈建議安裝 Ryu 時,使用 python pip 套件庫 Step by Step 來安裝。

Step 0 :
安裝Ryu 之前需要下載 python 的套件庫,請用 $sudo apt-get install 來安裝,並且更新pip (因為下載下來的pip 並不是最新版本的)

1
2
$ sudo apt-get install python-pip python-dev build-essential
$ sudo pip install --upgrade pip

注意 : 套件 python-dev 是選用的安裝,因為 Ryu with GUI 裡面有個相依性的套件 python-websocket 需要 python-dev 故強烈建議安裝。

Step 1 :
Ryu 有一些相依性的套件必須要安裝,請用 sudo apt-get install 來安裝

  • python-eventlet
  • python-routes
  • python-webob
  • python-paramiko
1
2
3
4
$ sudo apt-get install python-eventlet
$ sudo apt-get install python-routes
$ sudo apt-get install python-webob
$ sudo apt-get install python-paramiko

Step 2 :
使用 pip 下載並安裝 Ryu

1
$ sudo pip install ryu

Step 3 : [Option]
若要使用 Ryu with GUI 此步驟要做,下載 Ryu source code (需要使用git 套件)

1
2
$ sudo apt-get install git
$ git clone https://github.com/osrg/ryu.git

Step 4 :
完成安裝後,請執行 ryu-manager 驗證看看有沒有出現錯誤,沒問題的話顯示的訊息應該像下面這樣:

1
2
3
linton@linton-virtual-machine ~ $ ryu-manager 
loading app ryu.controller.ofp_handler
instantiating app ryu.controller.ofp_handler of OFPHandler

End…


若安裝過程還是有問題,可以寄信給我或是在下面留言與我討論 =)

十分歡迎有在研究 SDN 的朋友一起討論!!
Email Address : linton@iii.org.tw ; linton.tw@gmail.com