ちょっと普通じゃないTremaの動かし方

第2回クラウドネットワーク研究会「OpenFlow祭」でも好評だったOpenFlowコントローラフレームワークTrema。TremaをVMWare FusionLinux上で動かしてみたときのメモを残しておこう。OpenFlowとPlan 9の関係は?と聞かれたけど、これには触れないことにしておくw

TremaはOpen vSwitchを使った仮想ネットワーク構築機能を持っているので、OpenFlowに興味はあるけど、OpenFlowスイッチを持っていない人でも気軽に動かして試すことができる。ここではVMWareのhgfs上でTremaを動かす方法を書く。TremaはトップディレクトリのtmpディレクトリにUNIXドメインソケットを張るんだけど、hgfs側が対応していないので、そのままでは動かない。tmpディレクトリを/tmpなどに切り替える必要がある。ぱっと見、環境変数TREMA_TMPってのがあるし、対応済みみたいなんだけど、Open vSwitchとの通信で抜けがあるようなので、以下のパッチを適用する。

まず、build時にTREMA_TMPを指定する。

$ git clone git://github.com/trema/trema
$ cd trema
$ TREMA_TMP=/tmp ./build.rb

実行するときもTREMA_TMPを指定する。

$ TREMA_TMP=/tmp ./trema run hello_trema.rb
Hello, Trema!
^C

こんな動かし方する人はいないんじゃないかという気がするけどね。。。

そもそも、TremaというかOpen vSwitchがMac OS X上で動くようになるとこんなことしなくてもよいのに。