• tel
  • お問い合わせ

【SDNチャレンジ】 第5回 Raspberry Pi2にOpen vSwitchをインストール

2015.5.15

弊社ブースへのご来場、誠にありがとうございます!

 

ブースの様子.jpg

東京ビックサイトで開催中の組込みシステム開発技術展が、本日で最終日を迎えております。前回記事でご紹介をした弊社検証自動化デモの出展ブースには、これまで多くの方に来場を頂きました。本当にありがとうございます。

デモの様子.jpg

ご来場様にはデモを閲覧して頂くと同時に、日々の検証業務 の中で抱えていらっしゃる課題を共有して頂く機会も多々ありました。お話をさせて頂く中で、実際に以下の様なお悩みをお聞かせ頂きました。

「受託開発により開発~検証まで業務範囲が広がった分、社内で対応できない」
「Webシステムの開発で頻繁にバージョンUPが発生し、対応し切れない」

弊社の検証サービスでは、調査~設計のフェーズに基いたお客様の既存検証プロセスの最適化を目的としております。PJの実事例やツールとしてのCloudShellのご紹介を含め、少しでも参考として頂ける様な情報をお伝えできる様、受け答えをさせて頂いております。

Raspberry Pi2に最新版Open vSwitchをインストールする

 操作中.jpg

今回構成したデモ環境で最も特徴的なのは、組込み用PCボードであるRaspberry P2iにOpen vSwitchのインストールし、OpenFlowスイッチとして動作させているという点です。実はこのOpen vSwitchは、Raspberry Pi2用OSとなるRaspbianにもパッケージ(weezyはバージョン1.4.2、jessieは2.3.0)は存在しますが、今回はあえて最新バージョンのインストールに挑戦しようと、githubにある最新版(2.3.9)からソースコンパイルをしました。
それでは以下手順に従い、Open vSwitchを作成してみましょう。

以下ブログ執筆時最新版のRaspbian(Release date:2015-05-05)をインストールした状態にて行いました。

・まずは利用可能なパッケージのリストを更新します。
 $ sudo apt-get update

・カーネルのバージョンを確認します。(ここでは3.18.11-v7+)
 $ uname -a
 Linux raspberrypi 3.18.11-v7+ #781 SMP PREEMPT Tue Apr 21 18:07:59 BST 2015 armv7l GNU/Linux

・kernelのバージョン3.18.11-v7+に合わせて、linux-headersをインストールします。(今回インストールするパッケージは、個人が作成されたものを使用しました。) 
 $ wget http://www.niksula.hut.fi/~mhiienka/Rpi/linux-headers-rpi/linux-headers-3.18.11-v7%2b_3.18.11-v7%2b-2_armhf.deb

・kernel-headersのインストールに先駆け、必要なパッケージをインストールします。またインストールにgcc-4.7が使用されるように設定します。
 $ sudo apt-get install gcc-4.7 dkms
 $ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 40
 $ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.7 50

・gccのバージョンが4.7になっていることを確認します。
 $ gcc -v
 gcc version 4.7.2 (Debian 4.7.2-5+rpi1)

・次にkernel-headersパッケージをインストールします。以下コマンドの後、多数問いかけられますが、全てデフォルトを選択しています。
 $ sudo dpkg -i linux-headers-3.18.11-v7+_3.18.11-v7+-2_armhf.deb

・Open vSwitchのインストールのためにビルドツールをインストールし、更にgccのバージョンを4.8に変更します。
 $ sudo apt-get install libtool autopoint gcc-4.8 cpp-4.8 automake autoconf libssl-dev
 $ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60
 $ gcc -v
 gcc version 4.8.2 (Raspbian 4.8.2-21~rpi3rpi1)

・githubから最新版のOpen vSwitchを取得します。
 $ git clone https://github.com/openvswitch/ovs.git

・以下、インストールコマンドを実行します。実行中は少し時間がかかることにご留意下さい。パッケージ不足や手順に間違い等がありますと、ここで処理が止まってしまいます。(実際、だいぶ手こずりました。。。)
 $ cd ovs/
 $ ./boot.sh
 $ sudo ./configure --with-linux=/lib/modules/`uname -r`/build
 $ sudo make
 $ sudo make install

 $ sudo insmod ./datapath/linux/openvswitch.ko
(ここでモジュールがロード出来ないという事象が起きました。その時は、kernelとkernel-headersのバージョンを変えて再ビルドし、何とかモジュールのインストールに成功したのですが、ここまで紹介した手順では今の所うまく行っています。)

・インストールドキュメントに従い、OpenvSwitchデーモンを起動します。
 $ sudo mkdir -p /usr/local/etc/openvswitch
 $ sudo ovsdb-tool create /usr/local/etc/openvswitch/conf.db vswitchd/vswitch.ovsschema
 $ sudo ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Open_vSwitch,manager_options --private-key=db:Open_vSwitch,SSL,private_key --certificate=db:Open_vSwitch,SSL,certificate --bootstrap-ca-cert=db:Open_vSwitch,SSL,ca_cert --pidfile --detach

 $ sudo ovs-vsctl --no-wait init

 $ sudo ovs-vswitchd --pidfile --detach

・ブリッジを作成します。

 $ sudo ovs-vsctl add-br br1

 $ ifconfig
  (実際にブリッジが作成されていることを確認します。)

作成されたブリッジ(br1)は、Raspberry Pi2を再起動すると原因不明で、消えてしまいます。これでは不便なので、/etc/rc.localファイルを「sudo vi」コマンドで編集し、以下のコマンドを追加し、Raspberry Pi2の起動時に自動的に実行するようにしました。(以下のソースコードの右上にマウスを置くと、テキストファイルにコピーできます)

sudo insmod /home/pi/ovs/datapath/linux/openvswitch.ko

sudo ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock \
--remote=db:Open_vSwitch,Open_vSwitch,manager_options \
--private-key=db:Open_vSwitch,SSL,private_key \
--certificate=db:Open_vSwitch,SSL,certificate \
--bootstrap-ca-cert=db:Open_vSwitch,SSL,ca_cert \
--pidfile --detach

sudo ovs-vsctl --no-wait init

sudo ovs-vswitchd --pidfile --detach

Rc-Loacl-1.PNG

/etc/network/interfacesファイルを「sudo vi」コマンドで編集して、ネットワークの設定も行いましょう。

eth0には、IPアドレスを192.168.137.251/24とデフォルトゲートウェイを192.168.137.1に設定します。Raspberry Pi2はDHCPを実行しているので、DHCPパケットを送信しないように、全てのポートを静的(static)に設定します。

#iface eth0 inet manual
iface eth0 inet static

address 192.168.137.251
netmask 255.255.255.0
gateway 192.168.137.1

iface eth1 br1 static
iface eth1 inet static
iface eth2 inet static
iface eth3 inet static
iface eth4 inet static

interfaces-2.PNG

・ブリッジの作成/確認ができたら、OpenFlowコントローラへ接続をしてみましょう。

 $ sudo ovs-vsctl set-controller br1 tcp:(OpenFlowコントローラのIPアドレス):(ポート番号)

ここまでで、Open vSwitchの作成とOpenFlowコントローラへの接続できました。
これまでご紹介してきたOpenFlowコントローラ-Trema-にて接続確認をするコマンドは以下です。

(ここはTremaがインストールされたホストで実行して下さい。)

 (Trema) $ trema run ./apps/show_switch_features/show-switch-features.rb

おわりに

 正常にインストールが完了しましたでしょうか。

上記インストール手順に至るまでは躓く箇所も多く苦労もしましたが、その分少しでも皆さんの参考にして頂ければと思い、今回ご紹介をさせて頂きました。

最後までお付き合いを頂き、ありがとうございました。

ステップアップ.jpg


Raspberryと同じカテゴリーの記事


SDN/NFVと同じカテゴリーの記事


Tremaと同じカテゴリーの記事



RSS
             
資料請求 お問合せ リクルート特設サイト
     
OSPについてもっと知るなら

最近のエントリー
2015.9.25
【SDNチャレンジ】 第21回 POX編
2015.9.18
【OpenStackチャレンジ】 第2回 コンポーネント紹介編
2015.9.11
【SDNチャレンジ】 第20回 Floodlight編
2015.9. 4
【OpenStackチャレンジ】 第1回 Kiloインストール編
2015.9. 3
【ウェブサイトのロードテストをする】 最終回 Siege編
2015.8.28
【SDNチャレンジ】 第19回 Raspberry Piでユースケースに挑戦!
2015.8.21
【SDNチャレンジ】 第18回 OF-Patch動作編
2015.8.13
【SDNチャレンジ】 第17回 OF-Patch紹介編
2015.8. 7
Windows10をインストールしてみました!
2015.8. 4
【ウェブサイトのロードテストをする】 第3回 Tsung編
2015.7.31
【SDNチャレンジ】 第16回 Ryuコントローラインストール編
2015.7.25
【SDNチャレンジ】 第15回 Open vSwitch性能試験編
2015.7.17
【SDNチャレンジ】 第14回 Tcpreplay編
2015.7.17
RedHat OpenStack 管理者認定試験に合格しました!
2015.7.11
【SDNチャレンジ】 第13回 Vyattaコントローラ REST API編
2015.7. 3
【SDNチャレンジ】 第12回 Vyattaコントローラ動作編
2015.7. 1
【ウェブサイトのロードテストをする】 第2回 curl-loader編
2015.6.26
【SDNチャレンジ】 第11回 OpenDaylight動作編②
2015.6.19
【SDNチャレンジ】 第10回 OpenDaylight動作編①
2015.6.18
【ウェブサイトのロードテストをする】 第1回 Apache JMeter編
2015.6.12
【SDNチャレンジ】 第9回 リピーターハブとラーニングスイッチの動作比較編
2015.6. 5
【SDNチャレンジ】 第8回 Tremasharkインストール編
2015.5.25
【SDNチャレンジ】 第7回 帯域制御・ファイアウォール・パケット書換え編
2015.5.22
【SDNチャレンジ】 第6回 ラーニングスイッチ作成編
2015.5.15
【SDNチャレンジ】 第5回 Raspberry Pi2にOpen vSwitchをインストール
2015.5. 8
【SDNチャレンジ】 第4回 5/13(水)、14(木)、15(金)の展示会にて検証自動化デモを実施します!
2015.4.27
【SDNチャレンジ】 第3回 Tremaリピーターハブ編
2015.4.21
【SDNチャレンジ】 第2回 OpenFlowコントローラ作成編
2015.4.14
【SDNチャレンジ】 第1回 Tremaインストール編
2014.8.20
【注意!】8月13日のWindows Updateを適用すると起動できなくなる事例が報告されています!
2014.5.23
約6割の企業が悩んでいるのに、対策しないんですか...?
2014.1. 9
新年あけましておめでとうございます。
2013.12.24
2013年エンジニアブログ アクセスランキング発表!
2013.12.17
コミュニケーション「活性化」の第一歩
2013.10.29
なぜ儲かっているのか分からない!?
2013.10.15
「何を変えるのか、何に変えるのか、どのように変えるのか」
2013.9.17
ブラック企業にドラッカーがアドバイスするとしたら?
2013.9. 4
蟻の穴から堤も崩れる
2013.8. 6
派閥じゃなくて、理念の元に仕事をしよう!
2013.7.31
知識は使ってナンボです!
2013.7.30
御社の相互理解度はどれくらい?
2013.7. 3
何故、それが読まれたか~上半期・エンジニアブログ閲覧数ランキング~
2013.6.12
「何」を知っているかではなく、「誰」が知っているか
2013.5.28
戦後、人間尊重の信念を貫きとおした1人の経営者がいた!
2013.5.24
健康な心が、健康な会社を作る。
2013.4.26
『社長にはもうついていけません・・・』
2013.4.23
仕事と生活をバランスさせるには?
2013.4. 2
組織に必要なのは「ゆらぎ」と・・・?
2013.3.21
代表小林、バングラディシュの地に再度降り立つ
2013.3.14
色々作っちゃいました!
2013.3. 5
「心のバランスシート」に着目していますか?
2013.2. 6
Office2013発売!で、何が変わった?
2013.2. 1
「想いを語る夕べ」が新宿から30分の場所で開催可能に!
2012.12.25
エンジニアブログ番外編:決戦は「ひなたかなた」
2012.12.19
2012年エンジニアブログ&Facebook閲覧数ランキング発表!
2012.11.29
プロセス見直すのはいいけれど...大事なこと忘れてません?
2012.10.31
「仕事」と「個々の生活」の両立~ワーク・ライフ・バランス~
2012.10.26
Windows8発売!で何が起こる?
2012.10. 9
腹が減っては打ち合わせは出来ぬ?~アドック近辺ランチスポット・カフェ編~
2012.10. 2
iPhone5発売!LTE普及には切実な背景が...
2012.9.12
「だれを選ぶか」をまず決めて、その後に「何をすべきか」を決める。
2012.8.17
会社を回すのに大事な3つの感覚。
2012.8. 7
プロジェクトはたいてい失敗に終わるんです。
2012.7.19
『目の前に壁があったら、突き破るしかねえんだよ』by鬼塚
2012.7. 2
大手企業も多数協賛する「東京経営塾」の塾長とは!?
2012.6.15
メンタルヘルスケアジャパン2012報告!
2012.6. 4
御社の理念浸透力はどれくらい?!
2012.5.14
メンタルヘルスケアジャパン2012参加のお知らせ
2012.4.27
東京スカイツリーと地デジとADOC
2012.4.17
マイボトル・マイカップキャンペーン/エンジニアブログ1周年記念
2012.3.14
第1回「想いを語る夕べ」体験会レポート~伝えることの難しさ~
2012.2.29
想いを語る夕べ報告書を新聞にしちゃいました!
2012.2. 6
月刊『ニュートップリーダー』に記事掲載&"想いを語る夕べ"体験会やります!
2012.1.31
【第4回】想いを語る夕べ~フォロー編~
2012.1.23
タニタの社員食堂は"トップの想い"から生まれた!?
2012.1.13
【第3回】想いを語る夕べ~実施編~
2011.12.27
オフィスで簡単エクササイズ!
2011.12.13
【第2回】想いを語る夕べ~準備編~
2011.11.24
【第1回】想いを語る夕べ~誕生編~
2011.11.17
「責任感だけで仕事をしていた・・・。」が「自らサービスを作り上げ、喜びを感じたい!」という熱い想いに変わるまで
2011.11. 8
アドックインターナショナルはGoogleのまわし者!?
2011.10.11
あなたのその行動、誰かに監視されてませんか?
2011.9.28
たったこれだけのことで、チームに一体感が生まれる!?
2011.9.22
ADOCersがITS健康保険組合の野球大会に出場します!
2011.9.21
アドックに入社するとコンサートホールで歌えてグァムに行けるってホント?
2011.8.30
アドック社員元気の素!?
2011.8.16
電力使用制限発動!罰金は100万円!?PC電力管理ソフトのススメ
2011.8. 9
「ネットトラブル調査隊」対象エリア拡大しました!(後日談付き)
2011.8. 1
Windows7にはメールソフトが付いてない!?
2011.7.22
「社長の想いを語る夕べ」プログラムのご紹介
2011.7.12
64ビット版Windowsへの移行について
2011.7. 8
検証やテストを自動化する際に気を付けなければいけない3つの事
2011.7. 5
地デジと周波数再編とADOC
2011.6.29
アドックインターナショナルの節電対策とスーパークールビズ
2011.6.27
あるレンタカー事業会社のケース
2011.6.20
ラボルームのご紹介
2011.6.17
Interop Tokyo 2011に行ってきました!
2011.6. 7
ADOCの保守サービスと震災対応
2011.5.31
"メンタルヘルスケア・ジャパン2011"レポート
2011.5.19
「おばあちゃん家」
2011.5.11
スマートフォンは急速に普及している・・・?
2011.5. 9
ADOCの品質改善活動への取り組み事例をご紹介
2011.4.19
ADOCのお花見と節電への取り組み
2011.4. 6
復興支援のため東北へ向かっていた弊社の社員2名が戻ってきました!その2
2011.3.31
復興支援のため東北へ向かっていた弊社の社員2名が戻ってきました!
2011.3.28
弊社パートナーが被災地支援のサービス開始
2011.3.25
震災により表面化した携帯通信網の弱さ
2011.2.28
エンジニアブログスタートのお知らせ
カテゴリー
月別アーカイブ

「やるしん」

「スマート会計」

東京の社長

「想いを語る夕べ」


  • エンジニアブログ
  • メディア掲載実績
  • よくある質問
  • NSP特設サイト
  • プレスリリース
  • 通信事業者の方はこちら

ホーム

サービス一覧
調査・業務改善
ヘルプデスク
キッティング
センドバック保守
定期メンテナンス
オンサイトサポート
IT資産管理サービス
サーバーセキュリティー診断
通信系サービス
システム検証
やるしん

OSP
OSPの流れ
OSP-4D
QIC
サービス品質

OSPブログ

エンジニアブログ

新着情報

会社案内
会社概要
企業理念
社長挨拶
会社沿革
アクセスマップ
組織図

よくある質問

スタッフ紹介
伊藤 雄司
坂部 公彦
荒木 道明

採用情報

NSP特設サイト

スペシャルインタビュー
「OSPを語る」

サイトマップ

プライバシーポリシー

お問合せ

資料請求

組織力強化合宿
「想いを語る夕べ」

管理会計
導入支援サービス
「スマート会計」