OpenFlow in IaaS - Wakame
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
7,119
On Slideshare
5,168
From Embeds
1,951
Number of Embeds
8

Actions

Shares
Downloads
147
Comments
0
Likes
8

Embeds 1,951

http://blog.livedoor.jp 1,911
http://www.techgig.com 18
http://paper.li 9
http://webcache.googleusercontent.com 6
https://www.google.co.jp 3
http://leapf.org 2
http://translate.googleusercontent.com 1
https://twitter.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. OpenFlowをIaaSで使う ~Wakameの場合~ 株式会社あくしゅ 山崎泰宏
  • 2. 自己紹介•北海道出身•大手SIer (5年) •本社にて研究開発、技術営業、 ありがたいことに色々経験•起業 (5年) •株式会社あくしゅ 代表取締役 •西新宿のはずれにて11名の小さな会社
  • 3. クラウド基盤ソフトウェアを作ってOSSとして公開しています
  • 4. …の仲間 • Eucalyptus • OpenStack • CloudStack • その他色々機能は遜色無いんですけど、なかなかブレークできずにいます。
  • 5. こんなところで使われています• 電力会社様の基幹系• 国立研究所• コンシューマ向けデータセンター事業• 米国の銀行(準備中) あまり詳しく書けなくてごめんなさい
  • 6. お客様のご要望を 実装してきました• マルチハイパーバイザ対応 – KVM, LXC – High Availability (物理故障からの復旧) – 高度なインスタンススペック(複数NIC対応など)• マルチストレージ対応 – ZFS, tgt – Snapshot用外部ストレージ転送 (IIJ GIO, S3互換)• ネットワーク – Multiple Network, Security Groups, NAT, Metadata Server/Drive, DHCP, DNS, AWS Adapters, Web API
  • 7. 最近の課題ネットワーク
  • 8. 2010/04 Wakame-vdc First Release VM VMNIC NIC NIC NICVNIC VNIC VNIC VNICNIC NIC NIC NIC Global IP Network Local IP Network + Tagged VLAN
  • 9. 2010/11 Security Groups VM Allow VM NIC NIC VNIC VNIC Deny Netfilter Netfilter NIC NIC Permitted IPs Unknown IPs•全ホスト側の設定を動的に変更する仕組み•この時点でTagged VLANは必要なくなった
  • 10. Netfilter iptables, ebtablesコマンドで VM ルールを設定できる パケットフィルタリングの仕組み NIC VNIC Wakame-vdcでは、 Netfilter HVA Hyper Visor Agent (HVA)が NIC これを適宜変更する「接続元IPアドレス以外からのSSH接続はDROPして」とかそう言うご要望にお答えできる代物
  • 11. Wakame-vdc v10.11 One of the Virtual NetworkLB Web DB NIC NIC NICNetfilter Netfilter Netfilter Physical Network Virtual Network
  • 12. 現在複数NICに効くように改良中 LB Web DB NIC NIC NIC NIC192.168.1.2 192.168.1.3 10.1.1.2 10.1.1.3 Netfilter Netfilter Netfilter Physical Network Virtual Network
  • 13. データセンターネットワークを 完全に隠蔽する予定 LB Web DB NIC NIC NIC NIC192.168.1.2 192.168.1.3 10.1.1.2 10.1.1.3 Netfilter L2/L3レベルの変換を行なって Netfilter Netfilter データセンター内部の物理ネットワークは どう構成されていても良いようにする
  • 14. Design Your Network LB Web DB NIC NIC NIC NIC 192.168.1.2 192.168.1.3 10.1.1.2 10.1.1.3 Netfilter Netfilter Netfilter UIでは旧来のネットワーク図を見せるが、 フラットなネットワークでも全てEdgeでコントロールして 仮想的なネットワークとして再現できる。 192.168.1.1/24 10.1.1.1/24LB Web DB
  • 15. アーキテクチャは良さそう• 仮想ネットワークが作れる – Default Gatewayなど、 全部Edgeに持って行けるだろう – しかもスケーラビリティが高い• 実装のアプローチもこのままで良いのか? – このままLinuxのNetfilterで継続か – Software Bridgeを自作するか • より自由なルールが適用できる!
  • 16. しかし10Gbpsの世界とは…• 1 Frame as Minimum = 84 byte = 672 bit• 10Gbps / 672bpp ≒ 14.8Mpps – 10Gbps Wire Speed• A Core 1.33GHz / 14.8Mpps ≒ 90 Clock cycle VM 今後はホストKernelの上の NIC CPUリソースはVMの動作に VNIC 使われるべき Netfilter NIC ホストKernel
  • 17. ,, ―- 、_ / ‘’ - ,, / ‘’ - ,, / ヽ i / /ヽ ! ホストでやれるって言う ,i ./ / ‘’―、 ! i ,、 n て‘’ ノノ ヾ ! i ノノノ ノ ノ ‘’´ ! /訢 j ‘´ ノ( ヽ |>-,, / ,,=━━・!’ ,ノ━== ! ノ レベルじゃねーぞ!!・ ヽ | ’ニンniii、 :::::i/ィ7iii= i )\(てi iヽ ^‘ ~ -’ /} `i_ 、 \ i_ l_j `┐ i /(,,, ,n 〉 /\\ ̄ ̄へ !‘ T’‘ l| \ | ! i ン=ェェi) i ソ ) | i´\! ,, -ェ`、_ン ノノ 〈 | | \\,, `―´// | | つ !、_ / 7
  • 18. そこでOpenFlowに着目した• Netfilterの代替になる – Flow Tableの考え方とほぼ同じ• 標準化されると 組み合わせの選択肢が増える – Linuxじゃなくても良くなる – ワークロードをCPU外に託せるかもね • ここ超重要!!!
  • 19. OpenFlowにすると自由度が高まる VM NIC VM NIC VNIC VNIC HVAOpenFlow HVA OpenFlow Switch OpenFlow Controller Controller NIC NIC OpenFlow Switch High End Switch NIC VM ※Latencyはひとまず置いておいて VNIC HVA OpenFlow OpenFlow Controller Switch NIC上に別のCPUが搭載されたら、 そちらにフロー制御は任せたい NIC
  • 20. Wakame-vdc with OpenFlow• 今はOpen vSwitchをコントロールする• CPUワークロードを減らす – ここでOpenFlowの強みが出てくるはず – NICで動くOpenFlow Switchに期待大 • CPUオフロード、Low Latencyでホクホクになる NIC VM VNIC HVA OpenFlow OpenFlow Controller Switch NIC
  • 21. OpenFlow Controller: Trema• コードが一番理解しやすかった• Wakame-vdc同様にRubyでも書ける• コミュニティも良い – メインループのイベントハンドリングを修正 したかったので、コードコミットしたら取り 込んでくれた ありがとうございます!
  • 22. Wakame-vdcは 分散するTremaと連携する NIC VM NIC VM NIC VM VNIC VNIC VNIC Open HVA Open HVA Open HVAvSwitch Trema vSwitch Trema vSwitch Trema NIC NIC NIC Wakame-vdc •HVAを通じてControllerへ司令を出す Data Center Manager •ControllerとSwitch間はLow Latency •高いスケーラビリティ
  • 23. 1つのOpen vSwitchを管理する 論理構成 Trema Open vSwitch OpenFlow Open vSwitch switch_manager Controller daemon fork openvswitch_mod switch.{n} NIC Ruby (Bridge)Event Loop Wakame AMQP Extention Wakame-vdcData Center Manager Wakame
  • 24. 802.1Qbg - Edge Virtual Bridging• IEEEのワーキンググループ• Virtual Ethernet Bridge (VEB)• Virtual Edge Port Aggregator (VEPA) – VEBの拡張 – 外部スイッチへ オフロードする
  • 25. Wakame-vdcは、このBridge技術を使って、特別なハードウェアに依存せず仮想ネットワークを実現していきます。
  • 26. Project: Big Bridge ※すでに商標登録されているかも…と言う情報をいただきました
  • 27. いつリリースできる?• 今年中を目標• 実装が遅れに遅れています – Tremaにコミットするコードを書いていた – 実装が出回っているOpenFlow v1.0準拠だと 色々制約が多い • v1.1が使いたい • 今はそこのワークアラウンドをしています
  • 28. 物理ネットワークはどう扱うか?• データセンター内部の運用を考えると 物理の管理は必須だと思っています – 情報は管理する – コントロールまでやっても良いけど今はやらない • ハードウェアはお金がかかる – 他社さんが頑張っている• でも激安スイッチだけで 仮想ネットワークができるのも大切 – エッジに寄せた最大のメリット – プロダクション環境は ちゃんとしたハードウェアを買いましょう
  • 29. 参加者募集中• Wiki作りました – http://wakame.jp/wiki/ • インストールDVDもあります• ぜひ開発にご参加ください – 参加したい人は • Twitter @sparklegateへDMをください • Skypeでチャットルーム作ります
  • 30. まとめ• Wakame-vdcでは OpenFlowを分散させてEdgeで使う – OpenFlow for Virtual Ethernet Bridge • Distributed Control • ハイスケール & Low Latency • ハードウェアを選ばない – Software-Defined Networkingを実現 • まずはSecurity Groupsの実装に • 今後は仮想ネットワークに進展させる• OpenFlow v1.1以降にも期待大!
  • 31. Q&AOpenFlow祭