Wakame-vnet / Open Source Project for Virtual Network & SDN
Upcoming SlideShare
Loading in...5
×
 

Wakame-vnet / Open Source Project for Virtual Network & SDN

on

  • 2,209 views

Wakame-vnet is a toolkit for Virtual Networking based on the Edge Networking Architecture. The user can freely design own L2/L3 network on top of physical network using Wakame-vnet.

Wakame-vnet is a toolkit for Virtual Networking based on the Edge Networking Architecture. The user can freely design own L2/L3 network on top of physical network using Wakame-vnet.

Statistics

Views

Total Views
2,209
Views on SlideShare
2,180
Embed Views
29

Actions

Likes
7
Downloads
59
Comments
0

1 Embed 29

https://twitter.com 29

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Wakame-vnet / Open Source Project for Virtual Network & SDN Wakame-vnet / Open Source Project for Virtual Network & SDN Presentation Transcript

  • OSSだけで実装する 仮想ネットワークの全て 株式会社あくしゅ   ⼭山崎泰宏   (axsh.jp  /  @sparklegate)
  • 株式会社あくしゅ • IaaS基盤  “Wakame-­‐vdc”を   ゼロから開発する会社   • OSSとして公開   • 開発、メンテナンス   • プロフェッショナルサービス   • 導⼊入⽀支援   • カスタマイズ   • 技術教育
  • 開発当初(2009)からの コンセプト •  Wakame-­‐vdc  (Virtual  Data  Center)   •  「データセンターを丸ごと仮想化しよう!」   •  「データセンターをポケットに⼊入れて     持ち運べるようにしよう!」   •  「世界中のデータセンターを     ひとつのコンピュータにしよう!」   •  必要な技術要素   •  Virtual  Server  /  Virtual  Network  /  Virtual  Storage   •  SDNは本コンセプトの実現に向けて、   重要な考え⽅方の⼀一つ  
  • 事例
  • NNTTTT PPCC CCoommmmuunniiccaattiioonnss IInncc.. WWeebbAARREENNAA VVPPSS CClloouudd
  • KKYYOOCCEERRAA CCoommmmuunniiccaattiioonn SSyysstteemmss,, CCoo..,, LLttdd.. GGrreeeennOOffffiiccee UUnniiffiieedd CClloouudd
  • 歴史・背景
  • ネットワークの機能 •  2010/04  ...  ファーストリリース  (Ruby)   •  2010/11  ...  エッジネットワーキング構成に   •  Linux  NetfilterによるSecurity  Groupsが動作   •  Tagged  VLANを⼀一切切使わずに実現した   •  2011/12  ...  OpenFlow  1.0対応   •  Trema  +  OVS  1.6   •  Security  Groupsを移植   •  2012/03  ...  仮想ネットワークの実現   •  オーバレイでL2マルチテナントを実現   •  VMが複数NICを持ち、それぞれ任意に作成された 異異なるネットワークへ接続できる
  • 弊社の周�辺動向�   二〇一二年頃 •  VDCのコンセプトは良良い   •  でも、今のところSecurity  Groupsだけでも⼗十分   •  仮想ネットワークについては、   IaaSに内蔵してあるよりも   独⽴立立性の⾼高いプロダクトとして利利⽤用したい   •  プロプライエタリ製品が多く、   無償で気軽に試せるオープンソース製品とか   ないの?  
  • Wakame-­‐vdcから   仮想ネットワークの機能を抽出して、   別のオープンソースプロダクトとして   まとめよう
  • 構造
  • Data  Center Physical  Network データセンターの ネットワークモデル WAN  Edge  Network LAN  Edge  Network Resources External  Network   (Internet) General   Servers Appliance   Servers Storage   Servers Data  Center Network Internet DNAT  /  LB Tunnel  & SNAT  /  DHCP  /  DNS Physical  /  Virtual Server  Cluster
  • エージェントを分散配置 Data  Center Network Internet Physical  /  Virtual Server  Cluster パケットを   コントロールするために、   Agentsを配置する  
  • メッセージキューによる 連携 Data  Center Network Internet Physical  /  Virtual Server  Cluster Queue Agentは、   相互にメッセージを交換し、   連携しながら動作をする  
  • エージェントと   その他コンポーネント •  vna  (Virtual  Network  Agent)   •  Open  vSwitch  1.10.xの設定を変更更するのが主な役⽬目   •  Trema-­‐edgeによるOpenFlow  1.3のコントローラを内蔵する •  vnmgr  (Virtual  Network  Manager)   •  データセンター全体のネットワーク構成を把握し、   vnaへの司令令塔となる   •  その他、MySQLをバックエンドとした   永続的データベースアクセスのサービスを提供する •  vnapi  (Virtual  Network  API)   •  Web  APIのエンドポイントになる   •  外部システムから、vnmgrへ指⽰示を引き渡す連携窓⼝口   •  vnctl  (Virtual  Network  Controller)   •  コマンドラインインターフェイス   •  vnapiと対話する   エージェント その他   コンポーネント
  • 全体像 Data  Center Network Internet Physical  /  Virtual Server  Cluster Queue vna vna vna vna vna vna vnmgr vnapi vna OpenFlow   Controller   (Trema  Edge) OpenFlow   Switch   (OVS  1.10) OF1.3                   vnctl https http
  • Control   Program Control   Program Network  OS Packet   Forwarding Packet   Forwarding Packet   Forwarding OpenFlow  Protocol スイッチネットワーク データセンター全体に   散らばるスイッチ資源を   管理理するもの スイッチネットワークに   対する司令令を出す   任意のプログラム SDNのモデル
  • Virtual  Network   (Multi-­‐Tenant) Security  Group   (Firewall) Open  vSwitch Open  vSwitch Open  vSwitch Virtual  Network  Manager vna vna vna Trema-­‐edgeTrema-­‐edgeTrema-­‐edge OpenFlow  1.3 RubyレベルでのCall ZeroMQによる通信 RubyレベルでのCall Unix  Socket通信 各コンピュートノード内の   独⽴立立したOVS群 VM   VM   VM   VM   VM   VM   貸し出される仮想マシン群 今回の場合
  • Data  Center Physical  Network デプロイメント WAN  Edge  Network LAN  Edge  Network Resources External  Network   (Internet) General   Servers Appliance   Servers Storage   Servers
  • 物理サーバへの配置 Data  Center   Physical  Network LAN  Edge Resources Physical  Server Physical  Server Open   vSwitch vna eth0 eth1 eth0 eth1 Management  Line Public  Line VM VM VM VM Open   vSwitch vna General  Servers
  • 仮想と物理のレイヤ分け Physical  Server Physical  Server Open   vSwitch vna eth0 eth1 eth0 eth1 Management  Line Public  Line VM VM VM VM Open   vSwitch vna Virtual  Server Virtual  Network  (Virtual  L2  /  L3) Physical  Network  (Physical  L2  /  L3) Physical   Server
  • パケットの物理転送方式 •  ⼀一般によく知られた⽅方法   •  GRE  Tunnel   •  VXLAN  (予定)   •  独⾃自の⽅方法   •  MAC2MAC  
  • MAC2MAC •  ARPのブロードキャストドメインをコントロールして   物理理L2配下をアイソレートする⼿手法   •  ブロードキャストパケットを、   MACアドレスを頼りにユニキャスト通信するため、   この名前で呼んでいる   •  Pros.   •  ⾼高速   •  カプセリングしないためパケットが太らない   •  通常のL2スイッチでも動作する   •  他の製品には無さそう   •  Cons.   •  物理理L3を越えられない  (その時はトンネリングを使う)
  • その他の   ネットワーク機能 •  GRE  Tunnel  /  VXLAN   •  物理理L3を越えた際のMAC2MACの代替⼿手法   •  物理理ネットワーク構成を⾒見見て、⾃自動で適⽤用する   •  仮想ルータ   •  分散したままエッジで処理理ができるルータ   •  Security  Groups(開発中)   •  動的なファイアウォール機能   •  External  IP   •  いわゆるNAT   •  グローバルIPアドレスと、   ローカルIPアドレスの相互変換を⾏行行う
  • できるだけエッジで応答する   例)  DHCP  Server 各VMが仮想ネットワークへ放出するDHCP  Discoveryは、   Open  vSwitch上でフックされ、OF1.3に乗ってvnaへ到達する。   vnaはパケットクラフトし、DHCPの応答をする。   Physical  Server Physical  Server Open   vSwitch vna eth0 eth1 eth0 eth1 Management  Line Public  Line VM VM VM VM Open   vSwitch vna
  • デモ
  • br0 VM-­‐5 Vif eth0 Vif vna3 vna VM-­‐6 br0 VM-­‐3 Vif eth0 Vif vna2 vna VM-­‐4 br0 VM-­‐1 Vif eth0 Vif vna1 VM-­‐2 vnadbavnmgr Demo  Environment Virtual  Network-­‐1   10.102.0.0/24 Virtual  Network-­‐2   10.102.0.0/24 172.16.20.11 172.16.30.11172.16.20.12 物理理Segmentが異異なる Router eth1eth1eth1 dhcp dhcp dhcp 管理理⽤用ネットワーク  191.168.2.0/24 VIF  /  Same  IP  Addr  Range  /  L2-­‐L3
  • ご覧頂くデモ •  Virtual  Networkを構築して仮想マシンを起動する   •  仮想マシンからのIPアドレス取得要求を   分散DHCPで応答し、付与する   •  2つのVirtual  Network間の疎通確認をする •  MAC2MAC   •  GRE  Tunnel  (Full-­‐mesh)
  • これから Wakame-­‐vdcがあったので、ここまで5ヶ⽉月と少し
  • 現在開発中のもの •  Packet  Filtering   •  vif毎にSecurity  Groups  +  Firewallルールを   設定できる機能   •  WAN  Edge  Networking   •  External  IP  (グローバルIPアドレスのNAT)   •  既存LANへの拡張   •  仮想ネットワークと既存LANの接続を提供   •  双⽅方向の通信を橋渡しするゲートウェイ  
  • まとめ •  Wakame-­‐vnetは、分散したOVSを管理理し、   エッジオーバレイ仮想ネットワークを   OSSだけで実現できます   •  物理理ネットワーク上に、   任意の仮想ネットワークを複数構築できます   •  OpenFlow  1.3に対応しています   •  OVS  1.10系   •  Trema-­‐edge   •  近⽇日公開いたします   •  Ruby  /  LGPL  3