2011年7月8日金曜日

次世代クラウドコンピューティング(5)
                        -Apacheの憂鬱-

クラウド市場の活況と裏腹に標準化は進まない。
仮想化技術ではVMwareが先行、Xenが追い、さらにMicrosoft Hyper-Vが登場し、そしてLinux KVMも現れた。クラウドプロバイダーではAmazonが先行、RackspaceやSAVVIS、Terremark、GoGrid、Verizon、 続いてOpSource、Hosting.comなどが追う形となった。ここでAmazon、Rackspace、GoGridなどがXen採用組であ り、VMware採用組は、SAVVS、Terremark、Verizon、OpSourceなどである。仮想化技術が違えば、イメージファイル形式は 異なり、互換性はない。標準化としてはDMTFが制定したOVF(Open Virtualization Format)があるが、これとてラッパーであり、中身を解いて、変換しなければ相互運用ができない。
さらにクラウドプラットフォーム分野を見る と、Cloud.com、Enomaly、Eucalyptus、Nimbus、OpenNebula、OpenStack、Nimbusなどがある。 ユーザー企業はこれらのプラットフォームを利用してプライベートクラウドを構築し、加えて複数のパブリッククラウドと連携しなければいけない時代となっ た。まさにクラウドの世界は乱立状態だ。

◆ 理想と現実
Apache Software Foundationのメンバーと話す機会があった。
Apache コミュニティーの存在意義は主要なソフトウェア領域において、ベンダーロックインを解き離すために、Apache Licenseによるオープンソース化を実行し、利用者に使用と改造の自由を与えることにある。しかしクラウド分野は、ユーザーが望まない乱立状態が現実 だ。
このような状況では、Apacheが得意とする大型プロジェクトによるプラットフォーム開発の余地は無い。それよりも状況を緩和し、これらの連携を円滑化する方が賢明だ。
Apacheにはこのためのプロジェクトが3つある。各クラウドプロバイダーやインフラソフトは運用管理のために独自のAPIを提供している。これらバラバラなAPIを共通化することがプロジェクトの目的だ。

◆ LibcloudとCloudkick
Pythonのライブラリーとして共通API化を進めるLibcloudの歴史は古い。
2009 年11月にApacheのインキュベーションステージ入りし、今年5月25日、TLP (Top Level Project)に昇格した。一番の有望株である。このプロジェクトはAlex Polvi氏がリードし、Dan Di Spaltro氏らが参加して始まった。この2人はCloudkickのファウンダーでもある。同社はLibcloud 技術を使い、複数クラウド上で稼働する仮想マシンモニタリングと管理サービスをSaaSとして提供している。Libcloudがカバーするクラウドは、 Amazon、Dreamhost、GoGrid、IBM Cloud、OpSource、Rackspaceなど、クラウドプラットフォームではEucalyptus、OpenNebula、OpenStack など合計20にのぼる。LibcloudのAPIを利用することで、デベロッパーは複数クラウドサービスを共通に管理が可能となった。
プロジェクトは、今後、クラウド上の仮想マシン管理だけでなく、ストレージや負荷分散などにも焦点を当てる予定だ。そして、昨年末、この注目のCloudkickをRackspaceが買収した。


 DeltaCloudとRed Hat
DeltacloudはRed Hatが2009年9月に始めたプロジェクトである。
提 供するAPIはRESTベースでセルフサービスポータルから複数の異なるクラウド上の仮想マシンを管理できる。昨年5月、同プロジェクトはRed HatからApacheに移管されインキュベーションステージ入りした。現在のところ、DeltaCloudがカバーするのはAmazon、IBM Cloud、OpenNebula、Rackspace、Terremarkなど、そして忘れてはならないのはRHEV-M(Red Hat Enterprise Virtualization Manager)をサポートしていることだ。Red Hatが仮想化技術でKVMの正式実装を発表したのは2009年夏のこと、翌年11月にRHEL 6が出荷された。Red Hatにとって、この時期はやっとKVMを実装し、先行するVMwareやCitrix/Xenを追撃する体制が出来た頃だ。DeltaCloudは Red Hatが整備を進めるクラウド基盤と共に追撃の重要な武器である。2010年8月、同社はDeltacloudをDMTF (Distributed Management Task Force)に標準化として申請し、Working Groupに参加すると発表した。この辺りの事情は<共通APIでクラウド連携を目指すDeltaCloud>に詳しく書いたので参照されたい。


 Nuvemプロジェクト
Nuvemプロジェクトは3つの中では一番若く、昨年6月、インキュベーション入りした。
目的はLibcloudやDeltacloudのように外部から持ち込まれたものではなく、Apacheの独自性発揮にある。プロジェクトはSOAの実装仕様SCA(Service Component Architecture)準拠Apache Tuscanyのサンドボックスとして開発中だ。当面の目標はAmazonやGoolge App Engine、Microsoft Azureとの連携だ。

この流れには夢がある。
SOAの実装ではSunが主導していたJBI(Java Business Integration)、そしてIBMなどのSCAと2つの流れがあるが、はっきり言ってSCAが優勢だ。これらはクラウドと共存する。既存システムは 徐々にだが着実にクラウドに移行し、一方でSCA準拠のビジネスプロセス開発が進む。これは企業ユーザーにとって朗報である。一般企業やISVによって開 発されたSOAコンポーネントは、いずれ、クラウド上に登場し、コードやプロセスの統合が可能となるだろう。上手く行けば、この次世代シリーズ(2)で述 べたプロセス拡張型仮想マシンに最適な組み合わせになるかもしれない。

Apacheの憂鬱はユーザーと共有している。
過去、多くのコンピュータメーカーが独自技術を競い合い、ユーザーは混乱した。
しかし時間の経過と共にそれらは収斂し、さらに共通化が進んでLinuxが登場した。
これらは時代の要請であり、我われが既に学習してきたことだ。
だというのに、クラウドはまたまた乱立だ。Apacheの悩みはここにある。
乱立クラウドの自然淘汰までには時間がかかる。
だとすれば、当面はこれらの相互運用の円滑化こそが大事だ。
そう考えるApacheの方針は将来を見据えている。