2009年12月28日月曜日

Microsoftの新たな挑戦App-VとXenocodeの試み   
-Application Streaming(2)-

前回はアプリケーション・ストリーミングとVDIに至る仮想化技術について述べた。
2回目の今回はアプリケーションの仮想化に挑む新たな挑戦を紹介しよう。


◆ App-VでOffice 2010をクラウド化するMicrosoft

Microsoftの経営陣にとって、今大事なことはビジネスモデルの改革である。
クラウドの登場でソフトウェアライセンスを基本としたこれまでのビジネスモデルは変更を余儀なくされるだろう。クラウドへの移行でどの程度がユティリティー (利用料払い)に変わるのか、同社は全体のビジネスモデルをどのように将来に向けていくのだろう。そして、その結果はMicrosoftだけに留まらず、広く、コンピューター産業全体に影響を及ぼす。

ここにひとつの試みがある。
アプリケーションストリーミング技術App-VをOffice 2010に適用しようというものだ。同社は、この実験によって市場の反応を分析し、その中から今後の戦略を導き出そうと考えているように見える。多分、来年、市場に現れるOffice 2010は、これまで発表されているPC版とWeb版、そしてストリーミング版が追加されて3種類となるだろう。PC版はこれまでのように、ユーザーはCDかダウンロード版を購入し、ソフトウェアライセンスによる利用となる。Web版(正式名:Office 2010 Web Applications)は、Windows Live IDを持っている個人ユーザー向けに基本機能を無料提供し、ブラウザーベースのWord、PowerPoint、Excelの3つのアプリケーションとセキュリティーサービスOneNoteにアクセス出来る。


ここで少し、App-Vについて振り返っておこう。
App-Vは2007年に同社が買収したSoftricityのSoftGridが原形だ。
まず前回述べたように利用するソフトウェアをカプセル化したストリーミングに直す。
これを「SoftGrid Sequencer(現製品名:Microsoft Application Virtualization Sequencer)」と言い、ストリーミング化されたソフトウェアを配信サーバー「SoftGrid Virtualization Application Server(同Microsoft Virtualization Application Server)」上に置き、クライアントPCからの要求で配信する。クライアント側の実行エンジンは「SoftGrid Client(同Microsoft Application Virtualization Client)」という。補足すると、Sequencerではアプリケーション分割だけでなく、アプリケーションの実行に関するOSとの関連情報(DLLやCOM、Registry、Scriptなど)なども固有のものとして作り出す。クライアントPCに送られたこれらの情報は、実行エンジンがOSと連携させ、その上でアプリケーションが走る仕組みとなる。

話を戻し、問題のApp-Vを適用するサービスを仮にOficce 2010 CTRとする。
CTRとはClick to Runの略で、例えばCTR版のWordアイコンをクリック(Click)するとWordがApp-V技術でストリーミングとなってユーザーPCに送られて実行(Run)される。CTRはNetbookなどのように十分な容量がないがフル機能を望むユーザーにはうってつけだ。CTRでは、一度、ストリーミングをダウンロードしてしまえば、インストールしてあるかのように再使用することができる。この実験はTechnical Preview Programとして、限定テスターを対象に今年7月から始まっており、その結果次第で
リリース計画が決まる見通しだ。

-Microsoft Desktop Optimization Pack(MDOP)-
Microsoftにとって、デスクトップ仮想化分野の製品は複数あり、それらは総合製品「Desktop Optimization Pack(MDOP)」となって、大企業向けにボリュームライセンスで提供されている。このMDOPの核となる仮想化技術は、①アプリケーション仮想化(Application Virtualization)のApp-Vと、②デスクトップ仮想化のMED-V (Microsoft Enterprise Desktop Virtualization)だ。ここで、MED-VはVirtual PCを用いてWindows NTなどレガシーなアプリケーションをOSごと仮想化して利用するツールなので、クラウドではApp-Vが主役になることははっきりしている。

以上のような背景から、同社がクラウドの波に乗り、MDOP普及の要として、App-Vを用いたアプリケーションにOffice 2010を選ぼうとしていることは間違いないだろう。これが成功すれば、これまでVMwareやXenに後塵を拝してきた仮想化技術で一矢を報い、新たな仮想化市場をリードし、さらにライセンスモデルを変えることも出来る。Microsoftが挑戦する新たな試み「Office 2010 CTR」が企業向けプライベートクラウドで成功すれば、その先には同社のAzureから提供される可能性も秘めている。


◆ Xenocodeのアプリケーション仮想化とは・・・

Xenocodeの創業は2003年、Microsoftからのエンジニアが中心となって同じシアトルで起業した。CEOでFounderは日本人のKenji Obata氏だ。Xenocodeの仮想化はアプリケーション・ストリーミング技術の1種だが、他との決定的な違いがある。
簡単にいうと、クライアントには前もって実行エンジンのインストールの必要ない。Xenocodeの場合は、実行エンジンを「Xonocode Virtual OS Kernel」と言い、
非常に小型で、このエンジンも分割アプリケーションと同様にストリーミングとして送られてくる。



実際の利用にあたっては「Xenocode Virtual Application Studio」が提供される。これを利用することで、
Virtual OS Kernelを含めたアプリケーションのカプセル化が実行できるだけでなく、利用期限(Software Expiration)設定なども可能となる。出来上がったストリーミングは、同社のSpoon Streaming Technologyによって、Windows 7を含めたWindowsマルチプラットフォーム対応となり、さらに配信では、企業内に設置されている既存のMicrosoft System Management ServerやAvocent LANDesk、Symantec Altiris/AppStream、Novell ZENWorks、CA Unicenterなどがそのまま利用できる。また、USBデバイスに乗せて携行して実行することも可能だ。

さて、Xenocodeのターゲットユーザーだが、一般の企業だけではない。
もうひとつの狙いはISV(Independent Software Vendor)だ。中でも新しいタイプのソフトウェア・パブリッシャーである。このパブリッシャーにXenocodeを使ってもらい、彼等のソフトウェアをCDやインターネット・ダウンロード販売だけでなく、ストリーミングを使って、より簡便に提供しようという作戦だ。つまり、クラウドからソフトウェアを提供し、ユティリティー(利用料金払い)のサービスを行う。この目的のために、Virtual Application Studioの整備を鋭意進めている。

配信技術のSpoon Streaming Technologyを用いた同社専用サイトSpoon.netでは、Browser Sandboxとして、Microsoft Internet Explorer 6/7/8、Mozilla Firefox2/3/3.5、Apple Safari3/4(下図上)、Opera 9/10(下図下)、Google Chromeが用意され、簡単に誰でも試すことが出来る。


ゲーム(下図)も沢山用意され、使ってみたいゲーム中央の電源マークをクリックすればダウンロードが始まる。Music PlayerではQuick Time、Songbird、PANDORA、JetAudioなど、各種Video Player、さらにTwitterやGoogle Talk、Skypeだって利用できる。このようなXenocodeの狙いが当たれば、アプリケーション・ストリーミングを使って、時代がまた、大きく動くことになる。

2009年12月25日金曜日

アプリケーションの仮想化
-Application Streming(1)-

アプリケーションの仮想化が賑やかになってきた。
特にオフィス(Office Productivity)分野では、クラウドの本命になる予感がする。
そこで、今回はアプリケーション・ストリーミングと関連するデスクトップの仮想化技術についてまとめてみた。

アプリケーションのパッケージ化はLinuxで普及しているRPM(Red Hat Programing Manager)やDebianのdeb(Debian Software Package)、WindowsではMSI(Microsoft Windows Installer)が一般的だ。MSIを例にとると、MSIはWindows Installerでインストールされるプログラムファイル形式であり、幾つかに分割された実行ファイル(.EXE)以外に、DLLやCOM、Registry、Script、さらにはSystem Requirement、Version情報などが含まれている。

ある調査によると我々が通常デスクトップで使用するアプリケーションではソフトウェア全体の10~30%程度があれば十分であり、残りは例外処理など特殊なものだという。即ち、良く使う部分を切り出し、最初にこの部分の塊を送ればクライアントでの処理は事足りる。後は必要に応じて、小出しに送ればよいわけだ。このためベンダー各社は、ソフトウェアの分割方式や配信時の圧縮技術、さらにはクライアントでの実行エンジンなどの整備に力を入れ、特許などを競っている。

アプリケーション仮想化の手順

アプリケーション・ストリーミング市場にある製品は、多少の差はあっても実行方法の基本は同じだ。まず、クライアントで使うソフトウェアをカプセル化の概念を用いて事前にストリーミング加工を施す。つまり、動画配信時と同じようにソフトウェアを幾つかに分割し、円滑に流れるようにするわけである。この際、圧縮も行われ、分割と圧縮を「カプセル化」と呼ぶ。この処理済みのソフトウェア・ストリーミングを専用配信サーバーに格納し、クライアントPCにある実行エンジンからのリクエストによって、カプセル化された ソフトウェアを配信する。専用配信サーバーではまた、システム管理者がどのユーザーがどのアプリケーションを利用可能かなどのポリシーを設定する。

現在、この市場には大手ITベンダーから以下のような製品が出荷されている。
  1. XenApp 5.0・・・Citrixが2006年に買収したArdenceをベースに整備
  2. App-V 4.5・・・Microsoftが2007年買収したSoftricityのSoftGridベース
  3. ThinApp 4.0・・・VMwareが2008年始めに買収したThinstalベース
  4. Symantec SVS Pro 2.1・・・Symantecが2007年に買収したAltirisのSVS(Software Virtualization Solution)をベースに2008年買収のAppStream技術を統合して製品化

◆ MetaFrameからVDI(Virtual Desktop Infrastructure)まで

ここで全体理解のために、仮想デスクトップの道のりについて振り返ってみよう。
古くは1995年にMicrosoftとCitrix、Wyseの3社で始めたWBT(Windows-based Terminal)開発があり、その後、CtrixはWindowsリソース管理を擬似仮想化に見立て、Thin ClientとWindowsサーバーのアプリケーションを連動させるMetaFrameを開発。MetaFrameはプレゼンテーション仮想化技術(Virtualized Presentation Technology)だが、ネットワーク上の圧縮技術ICA(Integrated Communication Architecture)に特徴を持って、一躍、トップベンダーに躍り出た。その後、1997年には、デスクトップのマザーボードを中央の専用サーバーに移設するPCブレードシステムがClearCubeから登場した。この方式は物理的にマザーボードやHDDをクライアントPCから外して中央ブレードサーバーに移し変え、クライアントはThin Clientとするハードウェア集約技術(Hardware Consolidation Technology)となって、特に クライアントPCのソフトウェア維持保守コスト削減に大きな効果をあげた。MetaFrameがwindows上のアプリケーション選択であるのに対し、PCブレードはOSも含めた自由な環境を提供。そして、このPCブレードが今日の仮想化技術を用いたVDI(Virtual Desktop Infrastructure)への道を切り開いたと言っても良い。

現在、市場にあるVMwareやCitrixのVDI製品では、PCブレードシステムが物理的なマザーボードの移設であったのに対し、プール化された仮想マシンとThin Clientを連携させる。つまり、物理環境を置き換えるのではなく、ソフトウェア環境を彼等の仮想化技術を使った論理的な仮想マシン上に置き換えるプール資源の利用技術(Pooled Resource Technology)だ。さらに仮想マシンの適用には、静的なものと動的なものがあり、前者はこれまでのPC利用やPCブレードに近く、後者はThin Clientと仮想マシン間に管理ソフトウェアが介在する。管理ソフトウェアは、事前にOSやシステムサイズの異なる何種類かの仮想マシンを用意し、クライアントの要請を受けてマッピングさせたり、一度アサインした仮想マシンへのリモートアクセスの実行、さらにソフトウェアライセンス管理なども行うことが出来る。


このような技術の流れの中にあって、アプリケーションストリーミングは異なる性質を持つ。つまり、今日のVMwareやXenなどの仮想化技術とは別なコンセプトであり、それ故、両者の融合も可能であるし、更なる発展も期待できる。
次回はアプリケーション・ストリーミングの具体的な動きを追う。

2009年12月7日月曜日

Windows Azureアップデート  -PDC2009-

ロスアンゼルス・コンベンションセンターで毎年恒例となったMicrosoft Professional Developer Conference 2009(PDC 09)が開催(11月17-19日)された。その中から、Windows Azureに関するアップデートを報告しよう。

◆ Azure正式にスタート

PDC 09で正式に発表されたWindows Azureは、2010年1月1日から商用としてスタートする(2月1日までは無料利用)。今回の正式版(β)では、昨年PDC 08発表時の計画案(下図)から大きく絞り込まれ3つのコンポーネントとなった。


①プラットフォームとなる「Windows Azure」、そして、②これまで「.NET Services」と呼ばれていた機能はアプリケーション間連携の「Azure Platform AppFabric」と改称され、③当初「SQL Services」と呼ばれていたクラウドデータベースも途中から「SQL Azure」となった。


商用版となるAzureはクラウド分類ではPaaSに該当するが、Ozzie氏はキーノート後のインタビューで現在のPaaS機能だけでなく、近々、IaaSの提供計画があることにも言及。来年度はこのリリースの強化と共に、新しい仮想マシンの登場が期待される。また、Ozzie氏はキーノートの中で「3つのスクリーンとクラウド」というビジョンを提示し、クラウド(Windows Azure)、オンプレミス・サーバー(Windows Server)、デスクトップ(Windows 7)の3つのスクリーン間でシームレスなアプリケーション開発を追求していくと説明した。そして、特に、今回、改称されたAppFabricはオンプレミスと
クラウドを連携する重要な役割を担う。

また、建設が急がれていたAzureデータセンターは、自社だけでなく、パートナー設備を利用する。新年度からの本番とそれ以降の急拡大に向けて、短時間でのクラウドセンター建設に効力を発揮したのがAzure Cloud Containerだ。これは、同社の第4世代モジュラーデータセンター(Generation 4 Modular Datacenter)構想によるものでPDC 09では実機が展示された。




当面のデータセンタ配置は、北米のシカゴとサンフランシスコ、ヨーロッパではダブリンとアムステルダム、アジア はシンガポールと香港となり、各地域に各々2ヶ所づつ設置、来年1月から世界21ヶ国Australia, Austria, Belgium, Canada, Denmark, Finland, France, Germany, Ireland, India, Italy, Japan, Netherlands, New Zealand, Norway, Portugal, Spain, Sweden, Switzerland, UK, United States)でサービスが開始される。


◆ オンプレミス/クラウド連携 AppFabric

さて、今回改称された「Azure Platform AppFabric」が重要であることは言うまでもない。AppFabricはWindows Server 2008のオンプレミスとクラウドをシームレスに結びつけたり、クラウド上のアプリケーション間を連携させるもので、「Access Control」「Service Bus」「Workflow」から構成される。AppFbricは、英語のFabricが織物を意味するように、多様なコンポーネントを有機的に結び付けるクラウド用アプリケーションサーバーと言ったところである。ここでService Busは、オンプレミスとクラウド、さらにクラウド間を繋ぐESB (Enterprise Service Bus)であり、Access Controlはそれへの認証、WorkflowはWindows Workflow Foundation (WF)をベースとしたもののようだ。

◆ アプリ交換サイトPinPointと公開データカタログDallas

キーノートではRay Ozzie氏から各種の新機能も発表された。
ひとつはWindows Azure向けサードパーティ・アプリケーションのマーケットプレイスPinpoint.comの開設。同サイトは、Salesforce.comが生き残りを賭けて2005年秋に発表し、2006年始めから開設したアプリケーション交換販売サイトAppEchangeの Azure版だ。このサイト開設に尽力したのはSunから移籍したLew Tucker氏。氏は伸び悩んでいたSalesforceのビジネスを復活させるため、プラットフォームを整理させ、APIとSDKを提供することで、 ISVやユーザー企業がCRMアプリケーションの追加や修正が出来る方法を考え出した。このアプリケーション交換の方法は、既に、SunではJava Store、IBMでもSmart Marketを開設しているし、モバイルではAppleのApp StoreやGoogleのAndroid Marketなどユーザ参加型の開発手法として花盛りである。Tucker氏は、その後、Sunに戻り、現在はSun Open CloudのCTOだ。

そしてDallas(開発コード名)。
これはPinpointの一部となって、連邦政府の行政情報公開データサイトData.govやNASAの月情報サイトMars Pathfinder、地理情報サイトのNational Geographicなどの公開データを扱うオープンカタログとなる。デベロッパーは、これらのデータを使って独自のアプリケーションサービスを開発する。このDallasも実は、Amazonが膨大なヒトゲノム(Human Genome)情報を公開して有名となった公共データセット・サービスPublic Data Set on AWSのAzure版だ。


◆ Azureストレージ

AzureのAppFablicに次ぐもうひとつの核は「SQL Azure」、つまりクラウドのAzureストレージで、ここにもアップデートがあった。このAzureストレージを利用することで、デベロッパーは大きなオブジェクトやファイル処理、さらにQueueを用いたメッセージデータの扱いも可能となる。少し整理するとAzureストレージには、①構造化データ処理用のTable(表)形式「Azure Table Storage」、②オブジェクトなどの非構造化データに向いた「Blob」、③仮想マシン連携の「Queue」がある。 そして、今回、以下の2つが追加された。

-Windows Azure Drive
新機能のAzure Driveは、Azureクラウド上で稼動するアプリケーションにNTFSへのアクセスを提供する。当該ドライブは、ひとつのNTFSボリュームVHD(Virtual Hard Disk)として扱われ、Blobデータの読み書きに使われる。Blobには、これまでのBlock Blobと新たなPage Blobがある。Block Blobはストリーミングファイルなどをブロック分割(最大4MB)して利用し、さらに複数サーバーに分散させて、スループットを向上させることができる。また、これらの分割ブロックは自動複製も可能で耐障害性が高く、バックアップ処理も基本的には要らない。 もうひとつのPage Blobは、ランダムファイルの読み書きに用い、ファイルの分割単位は固定512Bの「Page」となる。このPageの概念はAmazon S3のBucketに当たり、最大10GBのTableにPage番号としてマップピングされる。XDrive自身は、EC2のEBS(Elastic Block Store)のNTFS版だと思えば良いだろう。

-Geo-Replication-
Azureストレージに、もうひとつ追加があった。
完全なデータベース保全のための地域的な複製機能「Geo-Replication」だ。これはSQL Server 2008で強化されたGeo-Replication機能をクラウドにも適用するものだが、SQL Server 2005と比べて100倍以上高速だという。実際にはプログラムから地域間複製の要求が出され、その処理が完了すると通知が返され、ユーザープログラムは完璧なデータベース保全が完了(Commit)したことを知ることが出来る。

◆ AzureコンテンツデリバリーContent Delivery Network(CDN)

もうひとつ、CDNについても説明があった。
CDNは11月始めにアナウンスがあり、PDC 09ではその実際が紹介された。Azure CDNは全世界のデータセンターからコンテンツデータをより迅速に届けるもので、現在の評価版(α)Community Technology Preview(CTP)でも利用が可能だ。デベロッパーはAzure Developer PortalのStorege Accountからカスタム・ドメインネーム(Custom Domain Name-CNAME)を指定することで、BlobデータをPublic Container経由で自動的に送り出す。


Windows Azureは、年が明ければ、実戦体制に入る。
先行するAmazon Web Serviceを追って、.NETの世界のクラウドを切り開くAzureがどの程度頑張るか、楽しみだ。

2009年11月28日土曜日

ベンチマーク Amazon EC2 .vs. HPC

今回はHPCクラウドの最終回として、ベンチマークを報告しよう。
このベンチマークはテキサス大学TACC(Texas Advanced Computing Center)で、Fault-Tolerant Distributed SystemsやHPC Programming Languagesで活躍するEdward Walker博士のチームによって行われたものである。
以下、博士の承認のもと、要約を試みた。


◆ベンチマーク・ハードウェア仕様 Amazon EC2 .vs. HPC

こ のベンチマークで利用するAWS(Amazon Web Service)EC2は最大インスタンスの「High-CPU Extra Large Instance」 。AWSの説明曰く、High-CPU Extra Large Instance 7 GB of memory, 20 EC2 Compute Units (8 virtual cores with 2.5 EC2 Compute Units each), 1690 GB of instance storage, 64-bit platformだという。つ まり、64ビット版2.5コア相当の8個の仮想CPU(合計20 EC2コンピュート・ユニット)に7GBメモリー、内臓ストレージは1960GBを持つ。ネットワーク・インターコネクト(ノード接続)は、EC2は高速 (High I/O Performance)接続だが詳細は不明、NCSAのHPCはInfiniBand。


ただ、これでは抽象的でベンチマークには不十分であるのでLinuxカーネル内の/proc/cpuinfoから、Amazonはクワッド(4コア)の Intel Xeon(2.33 GHz)であることを確認。ノード当たりはデュアルソケットに2プロセッサーで8コア、メモリー(7GB)とストレージ(1960GB)の構成となり、一 方のHPCはSun Ranger機で同様のクワッドCPUのノード構成で8GBメモリー、73GBストレージの構成である。(上図参考)

◆ ベンチマークツールNPBと並列プログラミング(MPI & OpenMPI、OpenMP)

さてベンチマークは、ここシリコンバレーにあるNASA Ames Research Centerが開発したNAS Parallel Benchmarks(NPB)を基本とし、大所高所から、幾つかの
ア プローチを試みている。NPBはHPCのベンチマーク用に仕様が開発されたもので、下図のように、5つのパラレルカーネル(Parallel Kernel Benchmarks)と、3つのシュミレーテッドアプリケーション(Parallel CFD-Computational Fluid Dynamics-Application Benchmarks)から構成されている。NPBは、さらにオリジナル仕様のNPB 1と、MPI(Message Passing Interface)を適用したNPB 2、OpenMPを適用したNPB 3に分かれている。ここでMPIとは、メッセージパッシング(受け渡し)型の並列プログラミング規格であり、MPIライブラリーとのインターフェースが定められている。
一般にグリッドやHPCのように分散メモリー型並列コンピュータでは、計算結果を相互に授受しながら処理を進める。このための役割がMPIであり、CとFortran 77がある。
また、MPIの延長にあるOpenMPIでは、テネシー大学のFT-MPIや、国立ロスアラモス研究所のLA-MPI、インディアナ大学のLAM/MPIなど各種のメッセージングを取り込んだMPI-2規格となっている。次に、共有メモリ型並列コンピュータ用に開発されたOpenMPが ある。MPIでは明示的にメッセージの交換をプログラム内に書かなければならないが、OpenMPでは、OpenMPが使用できない環境において、無視さ れるディレクティブを挿入する。この仕組みによって、並列環境と非並列環境でほぼ同一のコードを使用できる。その他の並行処理技術にはHPF(High Performance Fortran)やJavaなどがある。

◆ NPB OpenMPベンチマーク

さ て、最初のベンチマークは並列/非並列のどちらにも適用できるOpenMP。正式にはNPB (NPB3.3-OMP) Class Bという。つまり、NBPにOpenMPを適用したNPB 3の一種である。これをNCSAクラスターとAmazon EC2の各々8コアノー ドに適用。 ベンチマークに当たっては、8コアに満遍なく各々のベンチマークプログラムを走らせるパラレルスレッドとして実行した。NCSAとEC2上でのコンパイル は、Intel製コンパイラーでオプションは、“-openmp -O3.”を設定。結果は左図の通り。全般的にみて、Ec2がNCSAよりランタイムにおいて、7%~21%遅いことが解る。Walker博士によると、 この差は、かなりの驚きであったという。


◆ NPB MPIベンチマーク

2番目のベンチマークはMPIを用いたもの。
この場合も正式にはNPB (NPB3.3-MPI) Class Bという。ベンチマークにあたって、4つのEC2 High-CPU Extra Large Instanceをクラスターとしてプロビジョニング、つまり32 コア(4x8)となる。各々、前述同様にIntelコンパイラーでオプションは"O3."とした。実際に利用したライブラリーはEc2がMPICH2 MPI library (1.0.7)、NCSAはMVAPICH2 MPI library (0.9.8p2)。ベンチマークプログラムのBTとSPは16コアで、他の6つは全て32コアで実行。結果は、EC2がNCSAより40%~1000% 遅い。200%以上の差があるプログラムはCG、FT、IS、IU、MGの5つ。そして驚くことに、EC2上のEPでは、メッセージの授受が計算の間に実 行されず、全体的にメッセージングだけで約50%の差があった。

◆ MPIパフォーマンス・ベンチマーク

2つのベンチ マーク結果から、Walker博士チームはノード接続のInfiniBandが大きな効果を挙げているのではないかと仮定し、それを証明しようと試みた。 つまり、計算能力は同じ筈なので、メッセージ受け渡しの能力差がランタイムの大きな違いとなるのではないかと考えた。ノード接続は、NCSAのクラスター がInfiniBandのファブリック接続であるのに対し、EC2は高速だが簡単な仕組みである。そこで以下の計測のためにOpenMP仕様にあ る"mpptest"ベンチマークを利用した。以下の結果から解るように、バンド幅(Bandwidth)と呼び出し時間(Latency)は、EC2と HPCのクラスターで2分割されたような異なる状態を示し、明らかにEC2が劣っている。テストで使われたジョブは"32-CPU MPI"、メッセージ長は0~1024。従って、これらの接続性能を反映したHPCクラスターではランタイムが大きく短縮されることとなった。












◆ 結論

今 日、Amazon EC2の「High-CPU Extra Large Instance」のように、HPC向けアプリケーションサービスが始まったことは画期的であり、これまでの大型専門コンピュータ崇拝に区切りがつく可能 性を示した。しかしながら、本稿のベンチマークで、まだ商用クラウドはその性能に達していないことがはっきりした。2つのクラスター間のギャップは、分散 メモリー型並列コンピュータでは著しく、共有メモリー型並列コンピュータでもかなりの差が見られる。商用クラウドは高計算処理を伴う科学演算コミュニ ティーにも大いに魅力的であり、今後のプロバイダーの努力に期待したい。

2009年11月24日火曜日

HPCなど大型クラウドをサポートするベンダー (2)

◆ Scale vSMP (ScaleMP)

これまで見てきたように、仮想化には2つの領域がある。
ひとつは通常の仮想化などに見られるもので大型サーバーを分割して、論理的に複数台に見せる方式だ。これはAmazonなど、今日的なCloud Computingの基本となっている。一方、ハイエンドの領域では、複数台のサーバーを統合して論理的に1台として利用する。つまり、Grid Computingの世界だ。この後者を実現する手っ取り早い方法に、完全に分散されたGrid Computingより、HPCやSMP(Symmetric Multiple Computer)-対称型マルチプロセッサ-の利用があるが、しかし、これでもその特殊性からコスト高だ。そこで通常のサーバーを使ってSMPに見せかける企業ScaleMPが現れた。
同社が開発したversatile SMP(vSMP)アーキテクチャーでは、ラックマウントやブレードなどにvSMP Foundationを実装し、ソフトウェアによって大型SMPに見せかけることが出来る。サーバーのクラスタリングには、より高速化のため InfiniBandが必須だ。さらに言えば、市販のx86ボードをInfiniBandのスイッチで結合しただけでもよい。こうすることによって、複数台 のサーバーをひとつのOSで制御し、その上で大型アプリケーションを走らせることが可能となる。こうして作られたソフトウェアSMPシステムは、最大32プロセッサー(Quad Coreを用いれば128コア)、4TBメモリーのシステムとなる。通常、クラスタリングでは、接続された各システムにプロセッサーとメモリーが専用化される。しかし、vSMPシステムのメモリーは共用となって、大きな空間を作ることが出来る。

vSMP Foundationのポートフォリオは3つ。
① vSMP Foundation for Cluster-前述のようなクラスタリングへの適用、②vSMP Foundation for SMP-市販のSMPへ適用して効率をあげることも可能だ。③vSMP Foundation for Cloud-さらにクラウドのために、オンデマンドでSMPシステムを提供することも出来る。

◆ Shared Systemサービス(R-Systems)

R Systemsは、若きMarc Andreessen氏があのモザイク(Mosaic)を開発していたイリノイ大学NCSA(National Center for Supercomputing Applications)からスピンアウト、以来、研究者向けのLinuxベースHPCビジネスを手掛けてきた。同社の子会社R Poepleでは、同社ファシリティーを使ったコンサルテーションやオペレーションなどのサービスを提供。今年7月、同社はWindows HPC Server 2008の適用を発表した。これによって、同社のファシリティー(564ノードと288ノードの大型クラスター)はデュアルブート環境となりLinuxとWindowsのスイッチバックが可能となった。さらに小型のクラスターが数台Windows HPC Serverで稼動しており、これらを動員して、コマーシャルビジネスの開拓に乗り出した。ただ、同社サービスは一般のクラウドとは異なり、基本的にカスタムサービスである。サービスメニューの ①Dedicated Hostingとは顧客の特別要求仕様に従ったもので、物理的にも独立なマシンが適用可能となって、特別なOSなどでも構わない。②Shared Systemsサービスは、HPCやSMPを共用するクラウド型サービスとなり、③Virtual Private Clustersでは、共用システムからクラスターを切り出して、ユーザー固有のアプリケーションに対応させる。④Off-site/Remote Facilitiesとは、パートナー企業のファシリティーを用いて同社サービスの幾つかを実行したり、ユーザーマシンを同社に持ち込んで運用管理するものだ。

実際のところ、Windows HPC Serverを使用したサービスはIBMからもComputing on Demandとして提供されている。DellではData Center Solution部門が同社と提携し、最大578ノードのHPCを組み上げてDell Cloud Computing Solutionsとしてユーザー企業に提供しており、またデスクサイドにおけるWidows HPC Server 2008搭載の廉価版パーソナル・スーパーコンピューターCray CX1もあって、HPCクラウドは身近になっている。


◆ UniCloud 2.0 (Univa UD)

一般にクラスターシステムには、3つのタイプがある。
まず、かなり普及しているのが ①HA(High Availability)クラスターだ。このタイプは処理系とバックアップ系を切り替えて高可用性を実現する。次に、②分散クラスターがある。この場合は、処理量の多いWebやデータベース関連の処理をロードバランサーによって振り分けて負荷分散処理を可能とする。そして、③HPCクラスターでは、グ リッドなどの技術を用い、複数の計算ノードを集めてより高い計算能力を提供する。このように、HAでシステム切り替え、分散ではロードバランサー、HPCではグリッドエ ンジンなど核となるコンポーネントがあり、クラスターのソフトウェアスタックには、核コンポーネント、関連ライブラリー/ツール、実行環境ソフト、運用関連ソフトなど関連ソフトウェアが含まれ、パッケージとして提供されることが多い。さら に、これらの提供には、導入時のチューニングサービスやソフトウェア更新など、ライフサイクル管理も提供される。

ここで紹介するUniva UDは、元々、Sunの開発したN1 Grid EngineをHPCクラスター(以下、クラスター)上に適用してチューニングすることから始まった。その後、クラスターのソフトウェアスタックを整備して、ライフサイクル管理のUniClusterをオープンソースとして開発、現在はコンサルテーションなどのサービスをビジネスの主体としている。同社がサポートするオープンソースサイトGrid.orgからは、クラスターのモニタリングを行うGanglia 統合が済んだ最新版の4.1、さらに評価版5.0のダウンロードが可能だ。4.1以降では、Grid Engineだけでなく、Globusも適用できるし、Amazon EC2への適用も可能となった。UniClusterのライフサイクル管理では、デスクのパーティショニングの実行から、MPIライブラリーや各種ツールの提供、そして分散型リソース管理(Distributed Resource Manager)によって、ハードウェアに合った完全なソフトウェアスタックを組みあげる。ポイントとなるクラスタリングでは、クラスターパッケージの管理、仮想化の適用、クラウド対応、そして実行時のモニターは勿論、ファイルの同期化などを実行する。

そして、同社が7月にアナウンスしたUniCloud 2.0とは、UniClusterを核にクラウドに適用したものである。UniCloudではプロビジョニングやコンフィギュレーション、さらに仮想化など を全てRESTfulウェブサービスフレームワークで対応する。これによって
リソースやポリシー管理は簡略化され、ノードは物理的でも論理的な配置でも可能となった。クラウドユーザー向けに提供されるWebインターフェースのUniPortalではアプリケーションの実行、追 跡、監視などが行われ、付帯製品のUniPlanはワークロードのシュミレーションや分析を通してシステムの最適化を実行する。


以上見てきたように、クラウドは進化し続けている。
今や仮想マシンを束ねたGrid Computingは一般化が進み、Amazon EC2上でも、より大型のアプリケーションを実行させるためにHigh CPUやHigh Memory Instanceのサービスを開始した。ここベイエリアではバイオ系のスタートアップが
こぞって、これらを使い始めている。

2009年11月18日水曜日

HPCなど大型クラウドをサポートするベンダー (1)

今回は、HPCなどの大型クラウドをサポートするベンダーを紹介しよう。
この領域には、幾つものベンダーやオープンソースプロジェクトが存在する。ここで取りあげたベンダーの多くは、HPCやMulti-Clusterなど(以下、HPCと記す)のリソース管理などに傾注しているが、中には仮想化技術の適用手法などに工夫を凝らしているものもある。

◆ Moab Adaptive HPC プラットフォーム(Adaptive Computing)

Adaptive Computing (旧Cluster Resources)はデータセンターの自動化ソフトウェアを手掛け、とりわけ、HPCなど大型サーバーを得意としている。フラッグシップのMoabには、Moab Adaptive HPCとMoab Cluster、Moab Gridのバリエーションがある。
これらはGrid Computingの技術を基本的にクラウドに適用したもので、LinuxとWindowsが混在したクラウド環境を提供する。Moabの機能を大別すると ①自動リソース管理(Automatically Acquire Cloud Resources)、②プロビジョニング(Provisioning Cloud Resources on the Fly)、③リソース維持制御(Maintain Resource Control)の3つだ。リソース管理では、ユーザーの要求するワークフローに沿って必要なリソースをアロケーションし、プロビジョニングで、OSなど 必要なソフトウェアスタックをダイナミックにレイアウトして実行、これらリソースはオートマテック・ロードバランシングによって全体の維持制御が行われる。もし、OSやハードウェアなどに障害が起こると、Moabは別なノードをアロケートすることが出来るし、全体ノードのLinuxやWindowsの初期設定から、状況に応じて、バランスよく再アロケーションすることも可能だ。また、優先順位の高いジョブが投入されると、他のジョブのスワップアウトなどを行い、それにあったリソースを作り出して実行したり、時間的に急ぐジョブはスケジュールキューの順位を入れ替えることも出来る。












Moab Gridの場合(左図)は、通常、ユーザーはローカルクラスターにアクセスして必要なサイズを要求する。Moabは全体のリソース管理から、ローカルリソースを含めて要求の適正化を図る。これらいずれの場合も、全体リソースの稼動状況(右図)をシステム管理者は詳細に見ることが出来る。ローカルな管理者は、自分の領域内の管理、ユーザーはポータルを介して同様に自分の利用域内をみることができる。Adaptive ComputingのMoabは、これまでLinuxだけで利用されることが一般的であったHPCをWindows OSにも開放し、バランスよく実行する世界を開いている。

◆ Penguin on Demandクラウドサービス(Penguin Computing)

Penguin Computingの場合はユニークだ。
1998年の設立以来、同社はLinuxに傾注し続け、HPCに行き着いたと言ってよい。
そして今年8月、HPCを使ったクラウドPenguin on Demand (PoD)を発表。PoDでは、Amazonに代表される通常のクラウドサービスでは得られない高性能な並列コンピュータサービスを提供する。
このため、同社に設置された高性能マルチクラスターに高速ストレージを搭載、それらをInfiniBandで接続してHPCを構成する。また、超高速グラフィック処理にはスーパーGPUのNVIDIA Teslaが利用できる。さて、クラウドというとすぐ仮想化技術との関連が気になるが、PoDには、所謂、通常の仮想化技術は使われていない。同社では、クラウドとはインターネット越しに動的かつ拡張的にリソースを提供する利用形態であり、細分化された仮想マシンを提供する一般のIaaSはそのひとつで、PoDは高性能な並列処理を提供するため、より大きなコンピューティングの塊を提供するものだと説明する。

同社は設立以来、大型Linuxサーバーのハードウェアとソフトウェアの提供をビジネスとしていた。そして、2003年、NASAでLinuxサーバーを用いてスーパーコンピューターを開発するBeowulfプロジェクトでクラスタリングを手掛けていたScyld Computingを買収。これが同社のクラスタリング技術の中核Scyld Clusterwareとなっている。HPCを用いたPoDサービスは、このクラスタリングソリューションを複数台のLinuxサーバーに適用、その上に並列処理プログラミングの標準規格MPI (Message Passing Interface)ライブラリー、並列ファイル処理としてLustrePanasas PanFSPVFS2、さらに各種ツール、リソース管理、スケジューラーなどを組み入れて仕上げたものである。

◆ Platform LSF HPCプラットフォーム(Platform Computing)

Platform Computingは、この分野の老舗だ。
同社は1980年代後半、UC Berkeleyで次世代コンピューティングを予見し、無数のノードに分散されて実行するグリッドシステムの負荷分散を研究していたSongnian Zhou 博士によって始まった。主力となるLSF(Load Sharing Function)はバッチ型のワークロードが基本となり、Linux、Solaris、Windowsなどの各種OS、ハードウェアでは通常のサーバーだけでなく、クラスターやHPCなど多面的な適用が可能となっている。












現在、最も興味を引くのは、多様なシステムを総合的に管理するPlatform Enterprise Grid Orchestrator(左図-EGO)である。このEGOの利用でマルチOS対応のGrid Computingシステムを構成することが出来、さらにPlatform VM Orchestrator(右図)を用いて、VMware ESXやXen、Microsoft Hyper-Vで仮想化することも可能となっている。

2009年11月15日日曜日

グリッドとクラウドの融合
-Nimbus & OpenNebula-

前回、米エネルギー省(DOE-Department of Energy)傘下の国立研究所で始まったHPCベースのCloud Computingに関する実証実験-Magellan Project-の開始を紹介した。ただ、HPCというと、現OGF(Open Grid Forum)-旧GGF (Global Grid Forum)-などのGrid Computingを思い浮かべ、そして、Grid Computingはアカデミックの人たちのもので、古く、現在のCloud Computingとは異質のものだと漠然と考える人たちが多い。この誤解については、Globusが2007年にリリースしたWorkspace ServiceのAmazon EC2 Gatewayによって解かれたところまでを説明した。つまり、Grid ComputingとCloud Computingは補完関係にあり、EC2のComputing NodeをGrid Computingで束ねて、より大きな作業領域を作り出すことが出来る。そこで今回は、引き続き関連するテーマとして、米国と欧州の2つのオープンソー スプロジェクトを報告しよう。

◆ Nimbus

Globusの始めたWorkspace Serviceは、GGFのWSRF(Web Service Resource Framework)を基本的なベースにして、Grid Computingの流れを汲みながら、徐々にCloud Computingへと進化した。この新たな試みをNimbusプロジェクトという。Nimbusは、Globus toolkit同様、シカゴ大学(University of Chicago)とアルゴンヌ研究所(Argonne National Laboratory)が中心となって開発したオープンソースのソフトウェアセットで、HPCはもとより、クラスタリングサーバーなどのIaaS構築をサポートする。ライセンスはApache License 2。

Nimbusの提供するサービスは下図で示されるように「Compute」と「Storage」の2つ。ComputeがWorkspace Serviceであり、StorageはFTP Serviceである。

Nimbus の仮想化技術はXen(最新版TP2.2)だが、近々、KVM(Kernel-based Virtual machine)も予定されている。グリッドをクラウドに重ね合わせ、利用者により大きな空間を提供する「Workspace Service」では、Xenによって出来上がった仮想マシン(VM-Virtual Machine)をクライアントからの要求(Client Initiation)に従ったサイズにすべく、VMM(Virtual Machine Monitor)-仮想化ソフトウェア-と連携し、結果をクライアントに返す。この際のリソース管理は2つ。デフォルトはプールされた仮想マシンを直接利 用する「Resource Pool」、もうひとつはNASAが開発した分散環境下のジョブスケジューリングが出来るワークロード管理OpenPBSな どのLRMS(Local Resource Management System)を用いる方式である。Nimbusでは、また、次に紹介するOpenNebulaをWorkspace Serviceのバックエンドとして連携させる試みも行われ、将来は本格的な連携も期待されている。

Nimbusのクライアントからの使い方を見てみよう。
標 準となるのは「Cloud Client」で、構築したNimbusシステム上でWSRFと連携したWorkspace Serviceを受け「EC2 Client」はWSDL(Web Service Definition Language)でNimbusと連動し、EC2リソースを利用したWorkspace Serviceを受ける。また「Context Client」とは、Workspace Serviceベースではなく、仮想の大型クラスターをContext Broker経由でNimbus上で利用する形態をいう。

◆ OpenNebula

NimbusがGlobus/OGFを核とした米国中心の活動であるのに対し、OpenNebulaプロジェクトは、ヨーロッパがベースだ。2002年から始まったスペイン最大マドリード・コンプルテンセ大学(Universidad Complutense de Madrid)のDistributed Systems Architecture Research Groupが 開発したものだ。ユーザーはこのツールを適用して、HPCや企業内データセンターのクラスターシステムなどを仮想インフラ化してクラウド利用する。 OpenNebulaはIaaS構築のVirtual Infrastructure Managerとして機能し、仮想マシンだけでなく、ストレージやネットワークの管理も実行する。最新版のOpenNebula 1.4では、仮想化はXenだけでなく、KVM、VMwareにも対応し、Virtual Boxも1.4.2で計画されている。また、利用リソースは、Nimbus同様、自前のローカルリソースだけでなく、Amazon EC2、英ElasticHostsをハイブリッドクラウドとして利用することができる。ライセンスもNimbus同様、Apache License 2。














-特徴-
  • Dynamic Resizing/Dynamic Cluster Partitioning-新らたに物理ホストを追加すると瞬時に自動システムサイズ拡張を実行、またパーティショニングによるクラスターサイズも動的変更ができる。
  • Centralized Management全ての仮想・物理マシンを中央管理し、カスタマイズのためにユーザーやシステム管理者にAPIを提供。
  • Higher Utilization of Existing Resources-異なる組織で管理するサーバーや異機種などの現存するリソースを組み入れることができる。
  • Lower Infrastructure Expenses-自前リソースと外部クラウドをハイブリッド利用し、実質コストを抑制する。
さて、このOpenNebulaには、幾つかヨーロッパとしての大事な役割がある。
まず、欧州連合(EU-European Union)がファンディングしているResevior(後述)、次がスペイン工業・観光・通商省が後援し、スペイン最大の電話会社Telefonica が民間8社のコーディネーターとなって進めるNUBA(Normalized Usage of Business-oriented Architecture)プロジェクト、来年からはスペイン科学・革新省のスポンサーによるHPCを本格的に利用したクラウドHPCcloudプロジェ クトなどだ。OpenNebulaはこれらプロジェクトの基盤ソフトウェアとして利用され、一方で、その成果を民間にオープンソースとして提供する役割を 担っている。

◆ Reservoir


Reservoirは EUがスポンサーのプロジェクトで、第7次研究・技術開発のための枠組み計画(FP7)に沿い、ソフトウエアや通信分野の大手企業が中心となって、 2005年に発足したオープンスタンダードにもとづくソフトウエアとサービス開発を目指すNESSI(Networked European Software and Services Initiative)と連携するものである。プロジェクトの課題は、異なるITシステムやサービスのバリアを無くし、真にユーザーフレンドリーな環境の 提供を目指すもの。このためにCloud Computingを用いて異なるITプラットフォームやITサービスを境目無く提供する管理技術を研究する。プロジェクトの実際の活動は、イスラエルに あるIBMのHaifa Research Labが核となり、パートナーとして独SAP Research、米Sun Microsystems、スペインTelefonica Investigacion y Desarrollo、仏Thales、スウェーデンUmea University、英University College of Londonなどが参加。また、NESSIには、仏Atos Origin、英BT Group、伊Engineering Ingegneria Informatica、IBM、HP、フィンランドNokia、独SAP、独Siemens、独Software AG、伊Telecom Italia、スペインTelefoica、仏Thales、現OW2(旧ObjectWebコンソーシアム)などが参加。

◆ LHC Computing Grid

世界最大のGrid Computing、それは昨年7月に運用が開始されたWorldwide LHC Computing Gridである。CERNとして知られる欧州原子核機構がジュネーブ西方の
レマン湖畔にフランスをまたぐ全周 27km の円形加速器LHC(Large Hadron Collider)を設置し、2008年から実験が開始された。LHC Computing Gridは、この加速器を用いた実験分析用として作られたものである。
世界34ヶ国、170のコンピューティングセンターの100,000 CPUをグリッド結合して、各 国の研究所や大学から直接利用することが出来る。この巨大な分散ネットワークは、3つのTierと呼ばれるレイヤーからなり、Tier 0はCERN自身のComputing Centerで、全てのジョブのLHCデータはこのハブを通して供給され、主要な他のレイヤーとは10GBで接続されている。次のTier 1は、LHCデータ保存のため、比較的大きなストレージ容量を持った11のコンピュータセンターが選ばれ、LHCデータは、このTier 1からさらに160のTier 2となるデータセンターに送られて使用される。ミドルウェアとして利用されているのは、Grid Computing構築のGlobus Toolkit、ウィスコンシン大学で開発した分散スケジューリングのCondorとグリッドソフトウェアの統制図るVirtual Data Toolkit、欧州のEnabling Grids for E-sciencE(EGEE)が開発した軽量のグリッドツールgLite Toolkitなどだ。Worldwide LHC Computing Gridの試運転は昨年7月、本格的な運用は10月からだった。そして1年、これまでの稼動実績は18,500万ジョブにのぼる。今後はグリッドとクラウドの融合技術が検討予定だと聞く。


本稿では、米欧、2つのHPC用クラウド構築プロジェクトを紹介した。
こ れらを詳しく調べると、現在の商用Cloud Computingの将来展望が見え始める。サーバーはラックマウントなどの単なるコモディティーから、ブレードサーバーより高度なHPCへ、さらにはデ スクトップからサーバーへと進化した仮想化技術も無数のノードが前提となる。この分野が実用化されれば、より効率的で巨大なクラウドが出現する。

2009年11月8日日曜日

HPCを使ったクラウドコンピューティング
-DOEのマジェラン・プロジェクト(Magellan)-

米エネルギー省DOE(Department of Energy)傘下の国立研究所には大型のHPC (High Performance Computing)が多数設置されている。
そこで、これらのHPCを利用したCloud Computingの実証実験がスタートすることになった。マジェランプロジェクト(Magellan Project)という。資金はObama政権下で
2月に成立した米経済再生法American Recovery and Reinvestment Act (ARRA)から$32Mが使われる。中心となるのは国立アルゴンヌ研究所(Argonne National Laboratory)のArgonne Leadership Computing Facility (ALCF)とローレンス・バークレイー研究所(Lawrence Berkeley National Laboratory)のNational Energy Research Scientific Computing Center (NERSC) だ。ALCFには複数台のタイプの異なるIBM Blue Geneがあり、NERSCにはCrayのFranklinやSGIのDaVinc(Altix 350)などが設置されている。

プ ロジェクトの目的は、科学アプリケーションがどのようなCloud Architectureに向くのかを調べ、その上でHPCをどうすればクラウド化することが出来るかを見極めること。これはまた、HPCアプリケーショ ンをどうやってCloud Computingに最適化するかでもある。一般のPublic Cloudで科学アプリケーションを動かすにはネットワークパフォーマンスの問題、さらにメモリーや計算処理能力そのものも不足しており、もっとハイパ ワーでなければならない。HPCは計算能力は高いが、仮想化などの実績に乏しい。

Public Cloudに限らず、通常のCloud Computingでは、仮想化ソフトウェアを用いて無数の仮想化マシンを作り出し、それらにOSを含めたソフトウェアが搭載される。一方、HPCでは無数のノードを論理的に束ねて、大きな仕事を実行する。その意味で、HPCを用いたCloud ArchitectureはGrid Computingに近い。大きなものを分割して利用する今日的なCloud Computingと、
小さなものを集めて大きな仕事をするGrid Computing。この2つは共に異なる仮想化の世界作り出し、補完関係にあると考えられるが、技術的にはまだ隔たりも大きい。

◆ GridとCloudの融合

こ こで少しGrid Computingの歴史を振り返ってみよう。旧GGF-Global Grid Forum(現OGF-OpenGrid Forum)がGrid ArchitectureにWeb Service/SOA技術を適用したOGSA(Open Grid Service Architecture)を定め、全体のリソース管理を司るWeb Service Resource Framework (WSRF)を発表したのは2004年のこと。Xenがリリースされたのは2003年、Amazon EC2が2006年であるから、WSRFはその中間の時期に登場した。そしてGGFと関係が深く、オープンソースグリッド作成ツールで有名なGlobusがこのWSRFをもとにWorkspace Serviceを2005年にリリース。
このサービスは、分散処理を前提にしながら、より快適な大型作業空間を提供する。

つ まり科学アプリケーションなど向けに、より大型のコンピューティング環境をGrid Computing技術で可能としたものだ。2007年には、Amazon EC2向けのGatewayも用意され、EC2の仮想マシンを無数に利用したWorkspace Serviceが可能となった。これによって、Grid ComputingとCloud Computingは、技術的に補完関係であることが証明されたわけである。

◆ 国立研究所を繋ぐ100 Gpsネットワーク

Magellan Projectに先立ち、同じARRA資金-$62M-を使った100 Gigabit Ethernet Projectも動き出した。このプロジェクトは、ローレンス・バークレイー研究所が中心となって今年8月にスタートし、DOE傘下の複数の国立研究所 (Sandia、Lawrence Livermore、Lawrence Berkeley、Oak Ridge、Los Alamos、Brookhaven、Argonne、Pacific Northwest)とシリコンバレーにあるNASA Ames Research Centerが結ばれる。この高速ネットワーク網とHPC内のInterconnect-ブレード接続ネットワーク(Back Panel)-を最適化することでネットワークパフォーマンスは大幅に改善される筈だ。

◆ 並列処理ソフトウェア

Grid Computingにとって並列処理は欠かせない。
Goolge が稼動させる巨大な検索エンジンプラットフォームこそ、まさに並列処理の塊である。ここで使われているGFS(Google File System)は、高信頼分散ディスクシステムであり、MapReduceは並列処理そのものだ。これらのオープンソースクローンとしてYahoo Labが開発したHadoopはその後、Apache Software Foundationに寄贈されてプロジェクトとなり、さらにプロジェクトメンバーによる商用サポートのClouderaも 設立された。Hadoopでは、GFSがHadoop Distribution File Systemとなり、その上にHadoop MapReduceとGoogleのデータベースBigTableに相当するhBaseがある。さらに大規模データセットの並列処理言語として、これも Yahoo Labが開発したPigHiveも用意されている。この分野には他に、2007年9月、Sunが買収した大規模分散ファイルシステムのオープンソースLustre既報)、 Oracle RAC(Real Application Cluster)などもある。RACは、複数のアプリケーションサーバーから分散データベースをアクセス可能とするクラスター型ディスク共用技術 Common Disk Clusteringとサーバー間を高速で同期化させるChache Fusionからなる技術だ。
◆ HPCに熱中するITベンダー

もうひとつ大事なことがある。ITベンダーの動きだ。
IBM やSunなどのITベンダーは、Grid Computingがいずれ科学計算分野から抜け出て、商用に展開できることを期待している。なかでもIBMは強力にGGF を支援して来たし、Sunは初のグリッド商用プラットフォーム構築ツールN1 Gidを開発、今日、その技術はHPC適用のSun Grid Engineとして提供されている。

DOEに導入されている沢山のHPCがクラウド化されれば、商用への道程は近い。
マジェランプロジェクトの作業は、科学アプリケーションワークロードのクラウド適用だが、ここまでくれば、次はHPCに適したクラウドインフラや並列処理の各種ソフトウェアが搭載されて、企業データセンターへ適用するという別な世界が開ける。

2009年10月24日土曜日

OpSourceがCloud Computer事業に参入
-SaaaSの経験をIaaSにも-

「SaaSプラットフォーム・サービスプロバイダーOpSourceがCloud Computing市場に参入した」と聞いてもピンとこないかも知れないが、これまで同社がSaaSビジネスで経験した実績をもとにIaaS(Infrastructure as a Service)も開始したと言ったらはっきりするだろう。

◆ SaaSプラットフォームの提供(OpSource On-Demand)

まず始めに、OpSourceのこれまでの基本ビジネスについて説明しよう。
米 国では、独立系のソフトウェアベンダーISV(Independent Software Vendor)などを中心に、これまでの販売形態からの脱皮を目指してSaaS化が進んでいた。しかし、自前でSaaSシステムを構築することは、時間的 にも資金的にも容易ではない。これまでのOpSourceのビジネスはこれらの潜在顧客にSaaSプラットフォームを提供することだった。つまり、彼らが 必要とするプラットフォームソフトウェアやデータセンターなどの一式を提供、結果、ユーザーは自分のアプリケーションのみに集中することができた。これがOpSource On-Demandである。


こ のサービスを用いると、委託されたアプリケーション群は、OpSource Service Bus (OSB)上で稼動し、同一委託ベンダー分に限って、アプリケーション間の連動が可能となる。さらにこれらのアプリケーションは、OSBを介して、 OpSourceが用意した各種ツールとも連携が取れる。これらを利用すれば委託ベンダーは、特別なツールを使う
ことなく、詳細情報を手に入れることが可能だ。下図の分析(Analytics)ツールでは、日別や期間別のトランザクション量、同様に日別/業務別のレスポンスタイムの把握
などができる。


◆ ビリング・ライフサイクル管理(OpSource Billing CLM)

同様に用意されたビリング機能は、特に優れものだ。
使 用コンピューティング・リソースや各種サービスをもとにした請求処理は、どのCloud Computingでもあるが、委託アプリケーションを利用するエンドユーザー向けビリング機能はなく、その内容には感心する。このエンドユーザー向け OpSource Billing Customer Lifecycle Management(CLM)を使うことで、エンドユーザーの利用情報の収集、請求書の発行、支払いなどが一連の処理として実行できる。例えば、ISV が自社開発のパッケージソフトウェアをSaaSとして提供する場合、エンドユーザーは自分のアカウントを作り、ログオンして利用し、オンボードで自分のビ リング情報を常時閲覧しながら利用分の請求を受ける。これらの一連の処理は、CLMに用意されたAPIを用いて、アプリケーションと統合することで可能と なる。委託ベンダーはまた、ユーザー課金を自社戦略に従い、サブスクリプションなのか、使用量払い(Pay by USE)なのかを決めて組み込むことも出来る。支払いは、クレジットカード、デビッドカード、小切手にも対応し、PayPalなど他のマイクロペイメン ト・システムと比べて大幅な機能向上が図られている。

◆ 委託企業ブランドによるカスタマーケア

OpSource On-Demandで、もうひとつ重要なのは、カスタマーケア(Customer Care)だ。SaaSビジネスはコンピュータだけでは処理が出来ない。そのため委託企業名で、エンドユーザー向けコールセンターを24時間対応で提供し ている。委託企業とのチームワークによって、トレーニングされた要員が全てをサポートする。この仕組みによって委託企業は、ITインフラだけでなく、コー ルセンターの人的資源も削減することが出来る。

◆ 新しいIaaSサービス(OpSource Cloud)

今回、発表された新IaaSサービスのOpSource Cloudは、SaaSプラットフォーム
ビ ジネスの経験の延長にある。SaaSは当然、何らかのインフラとなるIaaS上にあり、新たに登場したサービスは、この部分を切り出し、ユーザープロビ ジョニングなど幾つかのサービス機能を付加したものだ。仮想マシンとして利用可能なOSは、Windows Server 2003と各種Linux。主な特徴は、①VPN(Virtual Private Network)を利用したセキュアーなVPC(Virtual Private Cloud)の構築、②仮想マシンを利用する複数エンドユーザー向けアクセスコントロール(ID/Password)の設定、③米SAS 70や欧Safe Harborなどへの準拠だ。SAS 70は、SOX法でアウトソーシングなどを行う外部企業の内部統制を第三者が監査する規定である。


OpSource Cloudは、新たに作り上げたわけではない。
実 績のあるSaaSの土台を開放したものだ。8月末に限定β版がリリースされ、10月5日から公開βとなった。この短期間のステップアップも実績ならではの ことである。当面の目標はAmazon EC2のキャッチアップだ。そのためには、SaaSで培った多くの機能を提供し、マーケティングには、世界中に販売のためのパートナーを構築する。公開β 後、オーストラリアのPacTec、そして日本のビープラッツ(株)がパートナーになることが決まった。ユーザーによる評価がまさに始まろうとしている。

2009年10月20日火曜日

企業向けパブリッククラウド市場予測
-Enterprise Public Cloud Adoption- 

調査会社のIDCから昨年に続き、企業向けPublic Cloudの市場予測が発表された。
対象となったのは、①アプリケーション・ソフトウェア(Application Software)、②アプリケーション開発/適用ソフトウェア(Application Development and Deployment Software)、③システムインフラ・ソフトウェア(Systems Infrastructure Software)、④ディスクストレージ、⑤サーバーの5つのカテゴリーである。

下段の昨年度調査と比べて、大きな変化は見られない。
昨年度(2008年)の全世界のIT総経費$383.274Bに対し、企業利用の外部クラウド(Enterprise Public Cloud Computing)は4%に当たる$16.235Bだった。そして5年後の2012年には総IT経費$493.713Bに対し、9%の$42.270Bと増加する。Enterprise Public CloudのCAGRは27%という見通しだった。

今回の調査では今年度(2009年)の全世界IT総経費が約$376B、対してEnterprise Public Cloudは$17.4Bとなって、昨年調査と同様に4%となる。5年後の2013年には、総IT経費が約$493B、Enterprise Public Cloudは$42Bとなって9%を占め、CAGRでは27%の成長となる。

このように昨年と今年の調査で大きな変化は見られず、依然としてCloud Computingは底堅いというのが結論のようだ。5つのカテゴリーを5年間の推移でみると、数字ではアプリケーションが49%から38%に減って、アプリケーション開発/適用ソフトウェアが10%から13%へと伸びる。この変化で考えられるのは、想像の域を出ないが、Cloud Computingのうち、SaaSが頭打ちとなり、IaaSやPaaSが伸び始めるという予想だ。
次いで、インフラソフトは20%と変わらず、ハードウェアではサーバーがやや増加(12%→15%)、ディスクは大きく増加(9%→14%)する。



以上のように、Enterprise Public Cloud Computingは堅調に推移しそうだが、5年後の10%という数字が大きいか、小さいのかの判断は難しい。何故なら、Enterprise Private Cloud Computingがどうなるのかが気にかかるからだ。


-参考-
最後に、この調査の前提となった『Cloud Serviceとは何か』について、IDCの定義を紹介する。
①Shared Standard Service-1ユーザーではなく公共のマーケットを創造するものであること、②Solution-Packaged-必要なリソースを統合したターンキーとして提供できること、③Self Service-アドミン/プロビジョニングがセルフで出来、オンボードのサポートがあること、④Elastic Scaling-動的な拡張性を持っていること、⑤Use-Based Pricing-メータリングのよる利用量払いであること、⑥Accessible via the Internet/IP-インターネット経由でユビキタス利用が可能なこと、⑦Standard UI Technologies-標準のBrowserやRIA(Rich internet Application)が利用されていること、⑧Polished Service Interface/API-洗練されたインターフェースやAPIがつかわれていること。