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に適したクラウドインフラや並列処理の各種ソフトウェアが搭載されて、企業データセンターへ適用するという別な世界が開ける。