« Logitec W150N/U2がホストモードで動くまでの長い道のり(3) | トップページ

2013年3月31日 (日)

SL6.3+kernel 3.4でOpen vSwitchを動かす

KernelコードにマージされたOpen vSwitchを動作させた際のメモです。

Kernelのビルド。まず、オプションを有効にしてカーネルをつくります。Networking support>Networking option>Open vSwitchにチェックを入れビルドします。
これで出来上がるのはopenvswitch.koというローダブルモジュールだけなので出来上がったら、modules_installして、modprobe openvswitchしてもちゃんとうごきます。つまり、既存のbridgeと干渉したりはしません。
その代り、brcompatというモジュールはできません。
さて、モジュールを組み込んだだけでは使えません、制御するためのソフトはディストリビューション側で用意するものなのでしょうが、red hat系には既成のバイナリはないようです。
なので、ソースからこれらを作る必要があります。後々のメンテナンスを考え、サイトからダウンロードして、いったんrpmを作った後にインストールすることにします。今回は1.9を使いました。
アーカイブをダウンロードしたら展開して、rhelディレクトリにあるopenvswitch.specをとりだします。ソースアーカイブをrpmbuild/SOURCESに入れ、rpmbuildするのですが、openvswitch-kmod-rhel6がないと言ってエラーになります。上でも書きましたが、カーネルモジュールはすでにあって、このrpmは作る必要がないので、ここは削除します。
無事rpmができたら、yum localinstallでインストールします。
スイッチの設定を行うにはコントローラを動かす必要があるのでovsdb-toolを使って初期化します。この辺は本家のインストールガイドを始めあちこちに書かれているので割愛します。
dbができたらservice openvswitch startしてコントローラを立ち上げ、スイッチをコンフィグします。
前のエントリで書きましたが、すでにブリッジ構成なのでそれを手直ししてopenvswitchに移行するのを前提にスイッチを組みます。
ovs-vsctl add-br br0
ovs-vsctl add-port br0 eth0
ovs-vsctl add-port br0 wlan0
そして、/etc/sysconfig/network-scriptsのファイルを手直しします
ifcfg-br0
TYPE=Bridge > TYPE=ovsBridge
ifcfg-eth0
BRIDGE=br0 > コメントアウト
つまり、eth0,wlan0といったポートはコンフィグですでにつながっているのでifupする際にさらにブリッジに接続する必要はないのです。そして、br0インタフェースですが、TYPEにovsBridgeと指定するとbr0という仮想スイッチのbr0というポートにつながります。これで、bridge互換モジュールをがなくてもちゃんと従来のbridgeと同様に使えます。
準備ができたらservice network restartして、OKならchkconfig openvswitch onした後に再起動すると新環境で使う使うことができます。
めでたしめでたし。と思ったのですが、hostapdがちゃんと動かないようです。具体的には接続したあとすぐにパスワードを再要求されるようになってしまいます。
もしかしたら続編があるかもしれません。

« Logitec W150N/U2がホストモードで動くまでの長い道のり(3) | トップページ

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/60027/57074101

この記事へのトラックバック一覧です: SL6.3+kernel 3.4でOpen vSwitchを動かす:

« Logitec W150N/U2がホストモードで動くまでの長い道のり(3) | トップページ