2011年7月27日水曜日

次世代クラウドコンピューティング(6)       
            -OpenStackの進撃が始まった!-

◆ プロジェクトの始まり
RackspaceNASA Amesが協力してオープンソースクラウド基盤のOpenStackプ ロジェクトが始まった。昨年7月19日のことである。瞬く間にメンバーが集まり、たった1年で80社となった。ことの始まりは2009年7月、Tim O'Reilly氏率いるOSCN(Open Source Convention)でのことだ。この会議でRackspaceは、これまで自社クラウド基盤のAPIを公開してきたが、ついにコードの公開に踏み切ると宣言。すぐにCloud Filesの書き換えが始まった。2010年にはCloud Serversも書き換えた。一方、この時期、NASAでもNebulaのオープンソース化が進んでいた。NebulaはOpen Governmentの資金で構築が始まったプロジェクトだ。Rackspaceのソースコードは昨年3月、Nebulaは5月にリリース。そしてすぐに両者のコードを組み合わせてク ラウド基盤を作る話が持ち上がった。
プロジェクトは瞬く間に動き出した。
NASAが提供するのはコンピュートのエンジンだ。NASAは当初、Eucalyptusのインフラ適用を試行したが、途中で断念してNovaプロジェクトをスタートさせた。提供するコンピュートエンジンは、このNovaで作成されたものである。NovaをリードしたのはAnso Labsだった。今年2月、RackspaceはそのAnso Labsを買収、OpenStackの強力なメンバーとして組み入れた。Rackspaceからはオブジェクトストレージのエンジンが提供され、昨年10月末にはOpenStackの最初のリリース(コードネーム:Austin)が始めて姿を現した。動き出してたった3ヶ月の早業だ。

以下、OpenStack主要メンバーの取り組みを紹介しよう。

 Cloud.comが選んだOpenStackとの共存
Cloud.comはSunのJVMエンジニアが立ち上げた会社だ。同社の開発したCloudStackとOpenStackは立場が似ている。共にクラウドインフラであり、オープンソースだ。
そして製品のリリース時期(CloudStackは2010年9月、OpenStackは同10月)もほぼ同じである。違いはCloud.comが独自開発してきたのに対し、OpenStackは前述のようにRackspaceとNASAの協力から産み落とされた。
両者は本来競合関係にあるはずだが、実際にはCloud.comはOpenStackのファンディングメンバーとして協調しながら開発を進めている。周知のようにOpenStackは仮想化技術としてXenやKVM、QEMUなどをサポートしているが、VMwareやMicrosoft Hyper-Vには対応していない。しかしCloud.comはOpenStack初期版のリリース直後、Microsoftとパートナーシップを進めると発表。内容はWindows Server Hyper-V上でCloudStackをサポートするためのテクニカルアシストをMicrosoftが提供するというものだ。この技術を利用して、Cloud.comはさらにHyper-V上でOpenStack をサポートするコードを開発、それをOpenStack コード・リポジトリーに加える計画だ。つまり間接的なサポートだが、結果、OpenStackがHyper-V上で動くことになる。
同社に関する詳細は<IaaSプラットフォームCloud.comの選択>を参照されたい。

◆ Citrixと協業するGigaSpces
GigaSpacesのクラウドはJavaSpaces仕様が特徴だ。
JavaのアプリケーションサーバーではJ2EEが有名だが、もうひとつJavaSpaces仕様がある。これは複数のJVM上のオブジェクトを共用する仕組みとして制定された。同社eXtreme Application Platform (XAP)上の個々のオブジェクトは、この仕様実装によって、どのJVM上にあろうとも自由にシステム内をアクセスすることが出来る。このメカニズムを使って、システム管理者やプログラムから、スタック化されたシステムをオブジェクトとして追加・削除する。つまり、負荷の増減に応じて、並行処理システムをオブジェクトに見立てて、数を変え、システムの総合的なダイナミズムを確保する。そして今年4月、GagaSpacesはCitrixが進めるOpenStackベースのインフラ上に、同社のアプリケーションサーバーXAPをPaaSの形で提供すると発表した。


◆ 始まったCitrixのProject OlympusとCloud.comの買収
Citrix SystemsがOpenStackベースのProject Olympusを 発表したのは今年5月末。同社はCloud.comと共にOpenStackのファンディングメンバーであり、共にオープンソースを基本としたサービスプロバイダー/企業向けのソリューションを目指している。このプロジェクトで注目すべきは、XenServer以外にMicrosoft Windows Hyper-VやVMware vSphereもサポートすることだ。
そして、同プロジェクトのEary Access Programの参加登録が始まったばかりの7月12日、CitrixはCloud.comを買収すると発表した。これは何を意味するのだろう。
発表では今後時間をかけて、Cloud.comのCloudStackと開発途上のOpenStackのギャップを埋めて行くという。想像できることは、 Project Olympusを手早く仕上げるためにCloud.comを買収したということだ。開発が進み既に市場実績のあるCloudStackとOpenStackを統合する。それよって、Cloud.comのユーザーを安全に新プラットフォームに誘導し、一方でOpenStackの機能強化したディストリビューションをProject Olympusを通して提供する。これが上手く行けば、念願のVMwareをキャッチアップできるかもしれない。
 
◆ UbuntuはEucalyptusからOpenStackへ切り替え
Ubuntuを主催するCanonical、今年5月のUbuntu Developer SummitでクラウドインフラをEucalyptusからOpenStackに切り替えると発表した。実際のところ、最新版のUbuntu 11.04(4月リリース)からOpenStackがテクニカルレビューとして登場していたので、この戦略変更は既定路線であった。理由はOpenStackの扱いやすさと対応範囲にある。そして今年10月には、次期版Ubuntu 11.10(Oneiric Ocelot)でOpenStackは正式にリリースの予定だ。こうしてCanonicalが2009年のUbuntu 9.04からサポートしてきたEucalyptusはあっけなく幕を閉じることになった。大きな流れの節目である。

◆ InternapからDual Hypervisor Stack
企業向けインターネットプロバイダーのInternap Network ServicesもOpenStackとVMwareによる2つのクラウドスタックを提供する予定だ。同社によると、多くの企業では既にVMwareが導入されており、一方でOpenStackへの期待も高い。このような環境から、同社では既にVMwareベースのプライベートクラウドをホスティングサービスとして提供し、今年始めからは、OpenStack利用のストレージクラウド(XipCloud elastic storage)を開始した。そして、今年下期にはOpenStackベースのパブリッククラウドを登場させる。これによって、ユーザー企業は異なる2つのHypervisorから選んで利用することが可能となる。

◆ Facebookの始めたOpenCompute
FacebookからもOpenStackに関する話題がある。OpenComputeだ。
このプロジェクトの目的は、Facebookの持つデータセンターノウハウと
クラウドインフラのOpenStackを統合して、クラウドセンター運営をハード/ソフトの両面から支援するものである。Facebook初のデータセンター建設はオレゴン州プラインビルで昨年初めから始まった。
2008年、Facebook設立当時の外部委託サーバー数は約1万台、現在では膨張するデータ量から4万台を超え、費用対効果を改善する狙いで自営センター建設に踏み出した。プラインビルは長方形のオレゴン州のほぼ中央の高度874mの内陸に位置し、省エネ型データセンターには欠かせない良好な気候がある。 新センターでは年間の60~70%は外気を取り入れた冷却方式となり、夏の間だけ、特別な冷却装置が稼働する。プロジェクトでは、この新設センターの図面や設置するサーバー仕様をメンバーと共有し、さらにOpenStackの参加を得て、新興国などで需要の多い効果的なクラウドデータセンター建設に役立てる。

-------------------------

以上のように、OpenStackはたった1年で大きく飛躍を見せ始めた。
OpenStackへの期待、それはある意味ではっきりしている。
コンピュータ産業は成熟し、技術は民主化したというのに、クラウドではまたまた技術が乱立気味だ。このようなことはユーザーは望まない。インターネットが公共性の徹底で成功したように、クラウドでも同じような環境整備が望まれている。
OpenStackの飛躍によって、多くのクラウドが共通の基盤上でビジネスを展開することになれば、新たな道が拓ける。その上でのビジネス競争こそが、ユーザーの望むとこ ろだ。特に急展開が期待されるのは発展途上国市場だ。これらの国々では、携帯電話が膨大な設備投資を必要とする固定電話を飛び越して、一挙に普及 したように、企業のIT化において、クラウドがオンプレミスを抑えて、ブレークする可能性は極めて高い。その視点で見れば、Facebookの始めたOpenComputeは発展途上国のクラウドセンター建設に大いに役立つ。今回紹介した企業だけでなく、最近始まったPiston Cloudや日本のベンチャーなどから、今年後半、幾つかOpenStackベースのディストリビューションが登場する。

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の方針は将来を見据えている。