2010年7月21日水曜日

NASAがNebulaプロジェクトで採用していたEucalyptusの使用中止:スケーラビリティ/オープン性に問題:OpenStackの開発に踏み切る

NASAがEucalyptus社の技術から撤退し、Rackspace Hostingと組んだ事の背景には2つの大きな問題が表面化した、という事が議論されている。

1) Eucalyptus社のコードでは、NASAが必要としているScalabilityが達成出来ない
2) Eucalyptus社のコードが完全なオープンソフトウェアではない

NASAのCTOであるChris Kemp氏によると、NASA内で開発したコードが、Eucalyptus社の有償版の機能と重複する為に、オープンソフトウェアとして配布する事を却下された事が直接的な原因。このため、NASAは独自に(Eucalyptus社のコードを一切使用せず)演算エンジンとファブリックコントローラを開発し、Apache 2.0のライセンスを通して配布する事を決定し、現在はRackspace社のOpenStackの一環として提供されている。

NASAの推進するプロジェクトは、国の税金によって支えられているものである故、コストを最低限に抑える為にオープンソフトウェアを採用することはいわば前提条件であり、尚且つ、成果物は無償でオープンソフトウェアとして配布し、納税者に還元する事も重要な要件である、としている。

"Nebula is designed to be both massively scalable and incredibly cheap, and you cannot certify commercial software in Nebula. We're not even going to think about that."

とChris Kemp氏は述べている。

一方、Eucalyptus社は、元々カリフォルニア大学、サンタバーバラ校のオープンソースプロジェクトとして発足し、2009年に企業として独立した、という経緯をもっている。現在のCEOはMartin Mickos氏で、元MySQL社のCEO。同社はOpen Coreというコンセプトをもって、無償提供版と有償版との間のソフトウェア製品の明確な境界線をもつビジネスモデルを採用している。

Ubunto Linuxコミュニティとの協業関係を通して、オープンソフトウェア業界においてAmazon Web Serviceの互換機能をサポートする点が評価され、NASAや、Eli Lilly社等で採用されて事が話題になっていた。

NASAの構築しようとしているクラウドインフラは、100万台のマシン、6000万台のサーバーを接続する規模をもつ巨大なインフラであり、Eucalyptus社のコードはこの規模のスケーラビリティをサポートできるレベルには達していない、とChris Kemp氏が述べている。その原因の一つはEucalyptus社がフレームワークではなく、製品である、という事を同氏は指摘している。システムの一部を取り出して、特定用途の為に最適化するのが不可能である事が発覚した。

Eucalyptus社の技術を評価得する上で非常に重要な要件が一つある、とEucalytpus社のCTOであるRich Wolski氏が述べている。 それは、Amazon Web Servicesに対抗できる規模のシステムを構築する事をEucalyptusに期待してはいけない、という点。Wolski氏によると、Amazon級のスケーラビリティを達成する為には、Eucalyptusの提供するコードベースのみならず、その下を支えるハードウェアのインフラ、複数のタイムゾーンに渡るデータセンタの運営、等のインフラもAmazonに対抗できるレベルの投資を行う必要がある、 という事である。この点、NASAの目指しているレベルと、Eucalyptusの提供できるレベルが一致していなかった、という結論になる。