今日はSDNカンファレンスに行ってきました。
テレビ朝日のSDN導入事例や、IBM、マクニカ、NEC、ブロケードなどのベンダーの製品情報などが聞けました。
初めはテレビ朝日の導入事例で、EX THEATERやEX TOWERにSDNを使っているというお話。
こちらはNECのSDN製品を使用したようです。
つないだ機器のMACアドレスで認証し、適切なネットワークに接続する技術が使われいるみたいです。
その他にもネットワークのレイヤー管理など。
他のベンダーは、大体は製品紹介が主でした。
前から言われている事だと思いますが、サーバの仮想化が進んだものの、ネットワークが足かせになっている。
それをどうにかする製品を用意した、といった感じです。
他には大体どの製品も以下の共通点があるようです。
・主なターゲットはデータセンターやクラウド
・GUIでネットワークの設定ができること
・OpenStackなどのオーケストレーターとの連携ができる
NECはデータセンターと、テレビ朝日のようなオフィスLANへの導入が半々ぐらいと聞きました。
いずれにしても、サーバやスイッチの数が数十、数百といった規模でないと、メリットが受けられない可能性があるようです。
あと、今の課題としてはエンジニア不足や監視や管理の方法が不十分、トラブルの原因特定方法、この技術が続くかが不確定といった事があるそうです。
とある理由で、SDN / OpenFlowを調査することになったネットワークエンジニア2人のブログ。
SDN / OpenFlowや関連する技術、情報ついてふわっとした感じで取り上げていきます。
2014年2月18日火曜日
2014年2月17日月曜日
OpenFlow Mininetで別サーバのコントローラに接続する
今回もMininetとTremaを使います。
今回はMininetを動かしているゲストOSとは別のゲストOSで起動しているTrema(コントローラ)に接続してみます。
前に掲載した「Openflow MininetのコントローラをTremaにしてみる その2」と「VirtualBoxのゲストOS同士で通信する」の組み合わせです。
ゲストOS #1
・Trema(コントローラ)を動かしているゲストOS
・IPアドレスは192.168.56.10
ゲストOS #2
・Mininetを動かしているゲストOS
・IPアドレスは192.168.56.20
まずはゲストOS #1でTremaを起動します。
コントローラのプログラムは、例によってhello-tremaです。
次にゲストOS #2でMininetを起動します。
以前と違うのは、コントローラが起動しているサーバのIPを指定することです。
Mininetを起動するとゲストOS #1のTremaを起動した画面に以下のようなメッセージが表示されました。
今後は、この環境を使っていろいろ試してみたいと思います。
今回はMininetを動かしているゲストOSとは別のゲストOSで起動しているTrema(コントローラ)に接続してみます。
前に掲載した「Openflow MininetのコントローラをTremaにしてみる その2」と「VirtualBoxのゲストOS同士で通信する」の組み合わせです。
ゲストOS #1
・Trema(コントローラ)を動かしているゲストOS
・IPアドレスは192.168.56.10
ゲストOS #2
・Mininetを動かしているゲストOS
・IPアドレスは192.168.56.20
まずはゲストOS #1でTremaを起動します。
コントローラのプログラムは、例によってhello-tremaです。
trema run hello-trema.rb
次にゲストOS #2でMininetを起動します。
以前と違うのは、コントローラが起動しているサーバのIPを指定することです。
sudo mn --controller remote,ip=192.168.56.10,port=6653
Mininetを起動するとゲストOS #1のTremaを起動した画面に以下のようなメッセージが表示されました。
$ trema run hello-trema.rb Hello 0x1!
今後は、この環境を使っていろいろ試してみたいと思います。
2014年2月15日土曜日
VirtualBoxのゲストOS同士で通信する
今回はVirtualBoxの中のゲストOS同士で通信をします。
VirtualBoxのバージョンは4.3.6です。
1.VirtualBoxの設定
ホストOS側の仮想環境とのインターフェイスの設定をします。
メニューから、ファイル>環境設定で設定画面を開きます。
ネットワークをクリックし、ホストオンリーネットワークのタブを開きます。
「VirtualBox Host-Only Ethernet Adapter」をダブルクリック(もしくは選択して画面右側にあるドライバーのアイコンをクリック)します。
IPV4アドレスを入力します。
今回はデフォルト値(192.168.56.1)を使います。
次にゲストOSのネットワーク設定を行います。
メイン画面で、変更するゲストOSをクリックし、上部の「設定」アイコンをクリックします。
設定画面左側のネットワークをクリックします。
続いて画面右側のアダプタータブで設定を変更します。
【アダプター1のタブ】
・「ネットワークアダプターを有効化」にチェック入れます。
・割り当ては「NAT」を選択します
【アダプター2のタブ】
・「ネットワークアダプターを有効化」にチェック入れます
・割り当ては「ホストオンリーアダプター」を選択します
・名前は「VirtualBox Host-Only Ethernet Adapter」を選択します
アダプター1はインターネットなどができるように、NATにしておきます。
ホストOSからゲストOSにsshでログインできるように、アダプター2はホストオンリーアダプターにします。
ホストオンリーアダプターでもゲストOS同士の通信ができるようです。
今回使用するゲストOS(ゲストOS #1、ゲストOS #2とします)に同じ設定をします。
2.ゲストOSのネットワーク設定
ゲストOSを起動し、固定IPアドレスを変更します。
今回は以下のように設定します。
【ゲストOS #1】
eth0 IPアドレス:DHCP
eth1 IPアドレス:192.168.56.10
【ゲストOS #2】
eth0 IPアドレス:DHCP
eth1 IPアドレス:192.168.56.20
変更をする前に、ifconfigコマンドで変更前の情報を表示しておくと良いと思います。
vi等で設定ファイルを書き換えます。ゲストOS #1の場合は以下のようにします。
設定ファイル:/etc/network/interfaces
↓この設定は残しておきます。
設定を変更したら、有効にするためインターフェースの再起動をします。
再起動しても変わらなかったり、画面がちゃんと表示されなくなるようだったらOSを再起動した方がよさそうです。
もしくは
ゲストOS #2も同様に(IPはゲストOS #2にIPで)設定します。
3.通信してみる
ゲストOS #1からpingを3回送ります。
ゲストOS #2からpingを送ります。
ゲストOS同士で通信出来ました。
後はホストOSからゲストOSにログインしてみます。
teratermなどでゲストOSのeth1に設定したIPアドレスで接続して、ログインできればOKです。
今回は以上になります。
VirtualBoxのバージョンは4.3.6です。
1.VirtualBoxの設定
ホストOS側の仮想環境とのインターフェイスの設定をします。
メニューから、ファイル>環境設定で設定画面を開きます。
ネットワークをクリックし、ホストオンリーネットワークのタブを開きます。
「VirtualBox Host-Only Ethernet Adapter」をダブルクリック(もしくは選択して画面右側にあるドライバーのアイコンをクリック)します。
IPV4アドレスを入力します。
今回はデフォルト値(192.168.56.1)を使います。
次にゲストOSのネットワーク設定を行います。
メイン画面で、変更するゲストOSをクリックし、上部の「設定」アイコンをクリックします。
設定画面左側のネットワークをクリックします。
続いて画面右側のアダプタータブで設定を変更します。
【アダプター1のタブ】
・「ネットワークアダプターを有効化」にチェック入れます。
・割り当ては「NAT」を選択します
【アダプター2のタブ】
・「ネットワークアダプターを有効化」にチェック入れます
・割り当ては「ホストオンリーアダプター」を選択します
・名前は「VirtualBox Host-Only Ethernet Adapter」を選択します
アダプター1はインターネットなどができるように、NATにしておきます。
ホストOSからゲストOSにsshでログインできるように、アダプター2はホストオンリーアダプターにします。
ホストオンリーアダプターでもゲストOS同士の通信ができるようです。
今回使用するゲストOS(ゲストOS #1、ゲストOS #2とします)に同じ設定をします。
2.ゲストOSのネットワーク設定
ゲストOSを起動し、固定IPアドレスを変更します。
今回は以下のように設定します。
【ゲストOS #1】
eth0 IPアドレス:DHCP
eth1 IPアドレス:192.168.56.10
【ゲストOS #2】
eth0 IPアドレス:DHCP
eth1 IPアドレス:192.168.56.20
変更をする前に、ifconfigコマンドで変更前の情報を表示しておくと良いと思います。
vi等で設定ファイルを書き換えます。ゲストOS #1の場合は以下のようにします。
設定ファイル:/etc/network/interfaces
auto eth0 iface eth0 dhcp auto eth1 iface eth1 inet static address 192.168.56.10 netmask 255.255.255.0
↓この設定は残しておきます。
auto lo iface lo inet loopback
設定を変更したら、有効にするためインターフェースの再起動をします。
再起動しても変わらなかったり、画面がちゃんと表示されなくなるようだったらOSを再起動した方がよさそうです。
sudo service networking restart
もしくは
sudo /etc/init.d/networking restart
ゲストOS #2も同様に(IPはゲストOS #2にIPで)設定します。
3.通信してみる
ゲストOS #1からpingを3回送ります。
ping -c3 192.168.56.10
$ ping -c3 192.168.56.20 PING 192.168.56.20 (192.168.56.20) 56(84) bytes of data. 64 bytes from 192.168.56.20: icmp_seq=1 ttl=64 time=0.395 ms 64 bytes from 192.168.56.20: icmp_seq=2 ttl=64 time=0.764 ms 64 bytes from 192.168.56.20: icmp_seq=3 ttl=64 time=0.775 ms --- 192.168.56.20 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2000ms rtt min/avg/max/mdev = 0.395/0.644/0.775/0.179 ms
ゲストOS #2からpingを送ります。
ping -c3 192.168.56.20
$ ping -c3 192.168.56.10 PING 192.168.56.10 (192.168.56.10) 56(84) bytes of data. 64 bytes from 192.168.56.10: icmp_req=1 ttl=64 time=0.335 ms 64 bytes from 192.168.56.10: icmp_req=2 ttl=64 time=1.05 ms 64 bytes from 192.168.56.10: icmp_req=3 ttl=64 time=0.844 ms --- 192.168.56.10 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2003ms rtt min/avg/max/mdev = 0.335/0.746/1.059/0.303 ms
ゲストOS同士で通信出来ました。
後はホストOSからゲストOSにログインしてみます。
teratermなどでゲストOSのeth1に設定したIPアドレスで接続して、ログインできればOKです。
今回は以上になります。
2014年2月12日水曜日
Openflow MininetのコントローラをTremaにしてみる その2
以前「Openflow MininetのコントローラをTremaにしてみる」の中で一部うまくいかなかった所が解決しました。
内容は、Mininetで使用するコントローラをTremaにしてみましたが、vmwareに作ったUbuntu13.10、Trema0.4.6では接続できなかった件です。
原因はTremaの待ち受けポートが6633から6653に変わっていたためです。
以下のリンクからその事がわかりました。
https://github.com/trema/trema/commit/0699ffd3a73f56e810096a9ce3c5ea9781596783
http://trema.hatenablog.jp/entry/20120312/1331548450
うまく動いた環境のTremaは、バージョンが少し古く、まだポート番号が6633だったのでしょう。
以下ではMininet側の接続ポートを6653にして試してみます。
前回同様、端末を2つ用意し、まずはTremaを起動します。
続いてMininetを起動します。
今回は「port=6653」を追加します。
Mininetが起動するとTremaを起動した端末に以下のメッセージが表示されました。
コントローラのプログラムがhello-tremaなので通信は出来ませんが、Mininetのスイッチと接続出来ました!
内容は、Mininetで使用するコントローラをTremaにしてみましたが、vmwareに作ったUbuntu13.10、Trema0.4.6では接続できなかった件です。
原因はTremaの待ち受けポートが6633から6653に変わっていたためです。
以下のリンクからその事がわかりました。
https://github.com/trema/trema/commit/0699ffd3a73f56e810096a9ce3c5ea9781596783
http://trema.hatenablog.jp/entry/20120312/1331548450
うまく動いた環境のTremaは、バージョンが少し古く、まだポート番号が6633だったのでしょう。
以下ではMininet側の接続ポートを6653にして試してみます。
前回同様、端末を2つ用意し、まずはTremaを起動します。
trema run hello-trema.rb
続いてMininetを起動します。
今回は「port=6653」を追加します。
sudo mn --controller remote,port=6653
Mininetが起動するとTremaを起動した端末に以下のメッセージが表示されました。
$ trema run hello-trema.rb Hello 0x1!
コントローラのプログラムがhello-tremaなので通信は出来ませんが、Mininetのスイッチと接続出来ました!
2014年2月7日金曜日
気になるSDN関連ニュース OpenDaylightを使った新製品
IBMからSDNの新製品である「IBM SDN VE OpenFlow Edition」と「IBM SDN VE KVM Edition」が発表されました。
「SDN VE OpenFlow Edition」はOpenDaylightをベースにした初の商品という事です。
OpenDaylightは先日書きましたが、2月4日にリリースされたばかりですね。
この商品はOpenFlow1.0に準拠した仮想、物理スイッチを管理できるようです。
「IBM SDN VE KVM Edition」はKVMの仮想環境でのオーバーレイネットワークの構築や、VMwareと混在したネットワークの構築、管理が可能という事です。
◆報道資料
http://www-06.ibm.com/jp/press/2014/02/0501.html
◆関連トピック
http://itpro.nikkeibp.co.jp/article/NEWS/20140205/534922/?ST=openflow
http://cloud.watch.impress.co.jp/docs/news/20140206_634108.html
http://enterprisezine.jp/article/detail/5581
◆OpenDaylightについてはこちら
http://www.opendaylight.org/
「SDN VE OpenFlow Edition」はOpenDaylightをベースにした初の商品という事です。
OpenDaylightは先日書きましたが、2月4日にリリースされたばかりですね。
この商品はOpenFlow1.0に準拠した仮想、物理スイッチを管理できるようです。
「IBM SDN VE KVM Edition」はKVMの仮想環境でのオーバーレイネットワークの構築や、VMwareと混在したネットワークの構築、管理が可能という事です。
◆報道資料
http://www-06.ibm.com/jp/press/2014/02/0501.html
◆関連トピック
http://itpro.nikkeibp.co.jp/article/NEWS/20140205/534922/?ST=openflow
http://cloud.watch.impress.co.jp/docs/news/20140206_634108.html
http://enterprisezine.jp/article/detail/5581
◆OpenDaylightについてはこちら
http://www.opendaylight.org/
2014年2月6日木曜日
SDN OpenDaylightリリース
当初2013年12月に最初のリリースされる予定だったOpenDaylightですが、米国時間の2月4日にとうとうリリースされました。
そういえばリリースされてなかったですね、忘れていました。
OpenDaylightと言えばSDNのオープンソースのプロジェクトで、多数の企業がそのプロジェクトに参加しています。
今回のリリースされたのは「Hydrogen」と言うらしいです。
個人でダウンロードして試す事も出来るようです。
コチラからダウンロードできます。
http://www.opendaylight.org/software/downloads
◆OpenDaylightプロジェクト
http://www.opendaylight.org/
◆関連ニュース
http://www.atmarkit.co.jp/ait/articles/1402/05/news050.html
http://sourceforge.jp/magazine/14/02/06/144500
http://news.mynavi.jp/news/2014/02/05/304/
http://www.publickey1.jp/blog/14/sdnopendaylighthydrogen.html
そういえばリリースされてなかったですね、忘れていました。
OpenDaylightと言えばSDNのオープンソースのプロジェクトで、多数の企業がそのプロジェクトに参加しています。
今回のリリースされたのは「Hydrogen」と言うらしいです。
個人でダウンロードして試す事も出来るようです。
コチラからダウンロードできます。
http://www.opendaylight.org/software/downloads
◆OpenDaylightプロジェクト
http://www.opendaylight.org/
◆関連ニュース
http://www.atmarkit.co.jp/ait/articles/1402/05/news050.html
http://sourceforge.jp/magazine/14/02/06/144500
http://news.mynavi.jp/news/2014/02/05/304/
http://www.publickey1.jp/blog/14/sdnopendaylighthydrogen.html
2014年2月5日水曜日
Openflow MininetのコントローラをTremaにしてみる
今回はMininetのコントローラにTremaを使ってみます。
まずTremaを起動します。
今回は試しにhello_trema.rbで。
次に、別の端末でMininetを起動します。
Mininetを起動するとTremaを起動した端末にメッセージが表示されます
Mininetが起動したら、pingを投げてみます。
hello-tremaはパケットを処理する機能が実装されていないので、当然pingは通りません。
しかし、コントローラがTremaになったことは確認できました。
ここまではVirtualBoxに作ったUbuntu12.04、Tremaのバージョン0.3.20の話。
vmwareに作ったUbuntu13.10、Trema0.4.6では上手くいきませんでした。
何かわかったらまたお知らせします。
まずTremaを起動します。
今回は試しにhello_trema.rbで。
trema run ./hello-trema.rb
次に、別の端末でMininetを起動します。
sudo mn --controller remote
Mininetを起動するとTremaを起動した端末にメッセージが表示されます
$ trema run ./hello-trema.rb hello 0x1!
Mininetが起動したら、pingを投げてみます。
h1 ping -c2 h2
hello-tremaはパケットを処理する機能が実装されていないので、当然pingは通りません。
しかし、コントローラがTremaになったことは確認できました。
ここまではVirtualBoxに作ったUbuntu12.04、Tremaのバージョン0.3.20の話。
vmwareに作ったUbuntu13.10、Trema0.4.6では上手くいきませんでした。
何かわかったらまたお知らせします。
登録:
投稿 (Atom)


