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のサービスを開始した。ここベイエリアではバイオ系のスタートアップが
こぞって、これらを使い始めている。