2010年9月14日火曜日

共通APIでクラウド連携を目指すDeltacloud 
                 -クラウドマネージメント(2)-

ApacheのDeltacloud Projectは、現在インキュベーションステージにある。
元はRed Hatが始めたものをApacheに寄贈したのが始まりだ。Deltacloudは2009年9月始めのRed Hat SummitでProject Hailと共に発表された。Hailはプログラミング言語やOSに依存しない可用性の高い分散コンピューティングを目指し、もうひとつの Deltacloudは現存する複数の有力クラウド間の差異を抽象化する。この2つによって、デベロッパーは真に自由になり、クラウド上でのアプリケー ション開発に専念することが出来る。

Apache Deltacloud Project
Red Hatの寄贈したDeltaCloudは今年5月に、プロジェクト準備となる“Incubation Stage”に入り、現在最終調整が進められている。DeltacloudのようにApacheには
ベンダーが開発した多くの案件が持ち込まれ る。Apacheでは、これらの中からオープンソースとしての有用性を判断し、且つ、既存Apacheプロジェクトとの関連、さらに大事なことは持ち込ん だベンダーの言い分だけでなく、競合相手などの異なる意見を聞き、その上でプロジェクトを興すかどうかを判断する。そして実行にあたっては、プロジェクト マネージメントとデベロッパーの構成が重要となる。一般にコードを持ち込んだベンダーが自社社員をそのまま提供するケースが多いが、これだけでは公平な作 業としてリスクがあるので他のデベロッパーの参加を募り、かつマネージメントは経験あるApacheメンバーから出す。こうしてプロジェクトの全景が描き 出せればスタートだ。


Deltacloudとは何か
さ てDeltacloudの仕組みを見てみよう。Deltacloudは既存クラウドを抽象化して、同一に扱えるようにする試みだ。そのためにデベロッパー には仮想マシンのスタート/ストップなどのREST APIを提供する。デベロッパーはこれらのAPIを使ってクラウドプロバイダーを意識することなく、仮想マシンの制御ができる。そして、それらのAPIは Amazonなどのクラウドプロバイダーが提供する本来のAPIに翻訳されて実行される。DeltacloudではRest APIからNative APIに変換するコンポーネントをドライバーという。

もちろんドライ バーの論理的な数は、対応するクラウドと制御動作の種類を乗じたものになるが、物理的にはどこまで束ねるかに依存する。現在のコードで対応しているクラウ ドはAmazon(Xen)、GoGrid(Xen)、OpenNebula(Xen/KVM)、Rackspace(Xen)、RHEV- M(KVM)、RimuHosting(Xen)、Terremark(VMware)、vCloud(VMware)の8種類だ。括弧内は採用している 仮想化技術であり、聞きなれないRimuHostingはオーストラリアのプロバイダーである。クラウドの制御機能はComputeとStorageに分 れ、ComputeではInstance(仮想マシン)のCreate(作成)、Start(起動)、Stop(停止)、Reboot、Destroy、 Hardware Profileなど9種類。Storageは当初のAmazon S3とRackspace CloudFilesに、Windows AzureとGoogle Storageが追加されることになった。ストレージのAPIは構造化された一般ファイルと、ストリーミングなどのの非構造化データを扱うBlobがあ る。


DeltaCloudをDMTFに標準化要請したRed Hatの思惑
さ てその後、2つの動きがあった。ひとつは今年6月末のRed Hat Summitで発表したCloud Foundationの続編だ。このCloud Foundationとは、パブリックやプライベートクラウド構築をツールからトレーニングまで総合的にサポートするプログラムで、これにはRed Hat Enterprise Virtualization(RHEV)やJBossなどが含まれていたが、さらにDeltacloudを加えるというものだ。そしてもうひとつは8月 27日、同社はDeltacloudをDMTF(Distributed Management Task Force)に標準化として申請し、Working Groupに参加すると発表した。

これら一連の動きを見ていると慌しい感じがする。
Red HatのKVM実装が正式に登場したのはちょうど1年前のRed Hat Summitだ。
このバージョンはRHEL 5.4だった。そして半年後の今年3月末にRHEL 5.5、さらに4月26日にはRHEL 6βをリリースした。事前の予告とおりこの6βにはKVMのみでXenは含まれていなかった。問題は何時RHEL 6が正式にリリースされるかである。というよりは、周りの環境整備がいつまでに揃い、先行するVMwareやCitrixと戦う体制になるかだ。そうでな ければ6だけ出してもユーザーはついて来ない。単純に製品だけみれば、要となるのは運用管理のRHEV-M(Red Hat Enterprise Virtualization Manager)だ。
しかし、これだけでは後発として何とも歯がゆい。VMware Infrastructure 3の数年前と同じだからだ。その後、VMwareは改良型のvSphare 4を出し、クラウド構築vCloudの整備、Spring FrameworkによるSalesforce(VMforce)やGoogle(Google App Engine Business Edition)との提携をものにしている。Citrixにしても、基軸のXenがXen 4になり、XenServer(サーバー仮想化)とXenCenter(運用管理)はXenServer 5.5から統合されて無償化となった。さらにXen Clientを発表し、XCP(Xen Could Platform)の開発も進んでいる。追う立場のRed HatにとってDeltacloudはだからこそ大事なのである。気がかりは、ApacheとDMTFへの対応だ。同社としては既にApacheプロジェ クト立ち上げの見通しが立ったとの判断から、DMTFへの標準化を申請したのであろうが、もう少し丁寧な取り組みが必要なようにも思う。いずれにしても RHEL 5のXenは2014年まで5年間サポートが続けられるので、それまでが勝負である。