今回は広義のSDN(Software Defined Network)として、ネットワーク関連のスタートアップを追ってみよう。
=Docker標準となるか:SocketPlane!=

=もうひとつの試み:Weave=
SocketPlaneと殆ど同時期、ロンドンを拠点とするWeaveWorks(旧Zettio)もDocker向けSDNを開発していた。設立は2014年、最初のバージョンが出たのは同年9月のことだ。創設者でCEOのAlexis Richardson氏とCTOのMatthias Radestock氏はオープンソースメッセージングシステムで有名なRabbitMQを開発したメンバーである。この経験を活かして開発したのがWeaveだ。複数のコンテナーからなるホストにはWeaveルータがインストールされ、識別子を持ったピアーとなる。それらピアーが連携してTCPコネクションを確立し、さらにトポロジー情報を交換し合う。これがWeave Network(下図)だ。このコネクションによって外部からのアクセスやコンテナーから他システムへのアクセスが可能となる。こうしてみると、WeaveはRabbitMQの経験を活かした独自のトンネル技術であることが解る。

=Googleの息のかかったCoreOSからも:Flannel=
CoreOSにもFlannelがある。
周知のように同社製品はGoogleのクラウドGCEやKubernetesとの親和性が高い。両社は緊密な関係にある。CoreOSのファウンダーでCEOのAlex Polvi氏とBrandon Philips氏は共にRackspaceの出身だが、CoreOSはもともとGoogle Chrome OSからフォークしたものだ。直近のSeries-AはGoogle Venturesがリードして$12M(14.4億円)を調達した。実のところ、このFlannelもGoogleの旧Rudderプロジェクトを引き継いだものだ。Googleのコンテナー管理Kubernetesは各コンテナーの連携にRudderを用いていた。それを一般化したものがFlannelである。FlannelではDocker本来のポートマッピングではなく、各コンテナーにIPアドレスを付与し、SSHで暗号化されたネットワーク通信を行う。 このゲートウェイとなるのが各ホストでデーモンとして起動させるFlannelだ。これがトンネルとなる。現バージョンでもFlannelをマルチで走らせることが出来るが、今年5月のCoreOS Fest 2015では、さらに進化させたマルチテナント化やOpen vSwitchの採用なども発表された。

周知のように同社製品はGoogleのクラウドGCEやKubernetesとの親和性が高い。両社は緊密な関係にある。CoreOSのファウンダーでCEOのAlex Polvi氏とBrandon Philips氏は共にRackspaceの出身だが、CoreOSはもともとGoogle Chrome OSからフォークしたものだ。直近のSeries-AはGoogle Venturesがリードして$12M(14.4億円)を調達した。実のところ、このFlannelもGoogleの旧Rudderプロジェクトを引き継いだものだ。Googleのコンテナー管理Kubernetesは各コンテナーの連携にRudderを用いていた。それを一般化したものがFlannelである。FlannelではDocker本来のポートマッピングではなく、各コンテナーにIPアドレスを付与し、SSHで暗号化されたネットワーク通信を行う。 このゲートウェイとなるのが各ホストでデーモンとして起動させるFlannelだ。これがトンネルとなる。現バージョンでもFlannelをマルチで走らせることが出来るが、今年5月のCoreOS Fest 2015では、さらに進化させたマルチテナント化やOpen vSwitchの採用なども発表された。
以上見てきたようにDockerのネットワーク課題を解決する取り組みは幾つかある。Dockerが買収したSocketPlaneが逃げ切るのか、はたまた別のものが抜け出すのか、それはこれからデベロッパーが決めることになる。注目すべきはGoogleの動きだろう。CoreOSを押さえながら、FlannelやKubernatesなどをGCE上で戦略的に統合し始めた。さらにGoogle自身、Google Container Engineを開発しており、現在はβとなった。これらが上手くいけばAWSやAuzreをキャッチアップ出来るかもしれない。