SDN オプションの Apache CloudStack における応用

SDN 簡介

SDN(ソフトウェア定義ネットワーク)は、ネットワークをソフトウェアで構築し、制御平面とデータ平面を分離することで、ルーティングの分散管理を実現します。Apache CloudStack は、複數の SDN 解決策をサポートしており、特に VMware NSX と Open SND(Tungsten Fabric)に焦點を當てて解説します。

VMware NSX 結構と統合

NSX 構造

  • 中央化されたポリシー定義と分散型実行:Orchestrator でポリシーを設定し、制御平面とデータ平面を分離します。
  • T0 網関(南北流量処理)と T1 網関(東西流量処理):T1 網関は BGP ペアリングとルーティング機能を備えています。
  • Transport Zones:CloudStack の Zone と類似し、複數の Zone 跨ぎで設定可能で、Overlay と伝統的ネットワークの混合をサポートします。
  • VTEP 端點:各ホストが IP を取得し、IP 封裝による流量転送が行われます。

CloudStack 統合

  • T1 網関機能:CloudStack VPC ルーターと同等で、VPC 間のルーティングと BGP ペアリングをサポートします。
  • ルーティングモードと NAT モード:後者は IPv6 に限定されます。
  • ルーティング能力:NSX は 20-30 Gbps の東西流量処理を実現し、CloudStack VPC の 3-4 Gbps に比べて大幅に優れています。
  • ネットワークポリシー:カスタムルーティングルール(UDP/SMP 協議など)をサポートし、CloudStack の VPC 管理と統合可能です。

Open SND(Tungsten Fabric)構造と統合

歴史と現狀

  • 開発経緯:Juniper によって開発され、Linux Foundation に寄付されましたが、Juniper の撤退によりコミュニティが再開し、今後 Apache Foundation への移行が予想されます。

操作モード

  • PPDK、Linux コア、スマートネットワークチップ(DPDK):複數のルーティング方式を混合して使用可能です。
  • コンテナアーキテクチャ:管理平面を複數のホストに分散し、柔軟性を向上させます。

CloudStack 統合

  • 隔離ネットワークとポリシー:VRF を用いてネットワーク間の完全な隔離を実現します。
  • ネットワークポリシー設定:HTTP/ICMP などの流量ルールを定義し、アプリケーション層のポリシー(データベース VM 間の通信など)をサポートします。
  • XMPP 協議によるルーティング:動的ルーティングと暗號化を実現します。
  • 多データセンター支援:Overlay ネットワークにより Praga、Ang、Rio などのデータセンター間の接続を実現し、プライベートネットワークを必要としません。
  • 管理平面アプリケーション:CloudStack 管理ネットワークに適用され、パブリックネットワークをカバーし、自動暗號化を実現します。

功能と制限

NSX 功能

  • サポート機能:IGMP、ファイアウォール、ロードバランシングをサポートしていますが、IPv4 動的ルーティングは開発中です。
  • 環境要件:VMware 環境が必要で、コストが高めです。

Open SND 功能

  • 進階機能:サービスグループやアプリケーションポリシーを提供しますが、一部の機能(VPC ルーターのサポートなど)は完全に統合されていません。
  • コミュニティ活動:月に1回の會議や GitHub のコードレビューが開始され、活発化しています。

結論

  • NSX は VMware 環境で高拡張性と成熟した機能を備えていますが、コストが高いため、特定の環境に適しています。
  • Open SND はオープンソースで柔軟性が高く、コミュニティの成長が目覚ましく、今後 CloudStack との統合の可能性が広がっています。
  • 現在、CloudStack 4.20 は NSX の統合をサポートしており、Open SND は段階的に機能を完備していく予定です。