●グリッドコンピューティングの動向とそれを支える技術●
第2回 グリッド・コンピューティングの始まり
日本アイ・ビー・エム グリッド・ビジネス事業部 技術理事 関 孝則
前回は、グリッド・コンピューティングの始まりとして、その語源、サイエンスでの取組み、ビジネスでのニーズ、そして技術的な定義やサービス化といったことについて述べた。今回は、具体的に現在のグリッドの姿と、今後のビジョンについてご紹介していこう。
■グリッドの適用と発展
グリッドは最終的にユーティリティ・コンピューティングを実現する技術であることは、今までの定義でお分かりいただけたかと思う。
しかし、究極のユーティリティ・コンピューティングは今日現在ではまだ実現してはいない。グリッド技術はここ数年開発が急速に進んではいるが、ユーティリティ・コンピューティングを完全に実現するまでには、まだ時間がかかると思われる。しかし、そうかといってグリッド技術の適用は、その仮想化という側面から、いろいろな適用が現れてきている。
まずは分散しているコンピュータのCPU、つまりプロセシングパワーを中心に、それをできるだけ集めて大きな計算パワーとしてみせようとする、プロセシング・グリッドと呼ばれる分野である。つぎに現れているのが、分散しているデータ、データベースやフラットファイルをできるだけ仮想化して、一つに見せようという、データ・グリッドの分野だ。そして、複数の計算機全体を一つに見せかけることにより、どの計算機の可用性が落ちても、全体としては安定したサービスを提供できるようにする、回復力(Resiliency)のグリッドという分野である。
最後に、これらのグリッド技術の分野は、すべてが揃って最終的に必要になったときに、必要なサービスを安定して供給するオンデマンドのコンピューティング・サービスとして、つまりユーティリティ・コンピューティングを含んだ形として、その完成をみることであろう。
これらの分野はどんな形にせよ、すでに出現しつつある。しかし、その完成にはそれぞれ時間がかかると思われる。
現在は、プロセシング、データ、回復力、オンデマンドといった順番でその成熟化がすすんでいるところだ。
図1 グリッドの適用と発展
■プロセシング・グリッド
まず、プロセシング・グリッドを少し詳しくみていくことにしよう。
この分野は、冒頭説明したPCの空きCPUを使って巨大な計算をさせようとする、宇宙人探しのSETI@Homeなどが有名で、新聞にも盛んに「これがグリッドだ」といわんばかりにとりあげられているものである。一言でいえば、たくさんのアプリケーション、特にバッチ系のアプリケーションやそれと並行して動かせる多くのアプリケーション、また、膨大なデータを細切れにして同じアプリケーションをいくつも動作処理させることなどで実用化している。
たんぱく質や遺伝子のパターンの計算処理は、データ量が膨大なためそれらを細切れにしてから、ライフサイエンスで有名なアプリケーションなど、同じアプリケーションを複数のコンピュータに投げて処理するというようなことが、このグリッドを使って行われている。
また、昔から電子回路の設計をする技術者は、その動作のシミュレーションに膨大な計算を行わなければならないため、サーバをグリッドで束ねて、空いているサーバにバッチをサブミットし、そのサーバに最適なスケジューリングで迅速に処理させるといったことが行われてきた。まさにプロセシング・グリッドの始まりといえるものであった。
現在はリアルタイム性の高いアプリケーションで、かつ計算処理に膨大な時間がかかるものの、並行処理をアプリケーションに持ち込み、プロセシング・グリッドにより個々の計算を最適に分散処理し、全体としてリアルタイム性を高めるといった新しいアプリケーションエリアが広がりはじめている。
このようにアプリケーションの特定分野ではあるが、多くの分散したコンピュータからCPUパワーを集めることで、通常では、高価で手に入りにくいスーパーコンピュータをも超える処理能力の価値が得られている。
サーバの平均使用率は、20%ともそれ以下ともいわれ、ましてクライアントでは5%ともいわれている。これらでプロセシング・グリッドを構成することの意味は、IT資源の最適化という観点でも十分意味のあることだと思われる。
図2 プロセシング・グリッド
■データ・グリッド
2 つ目の分野はデータ・グリッドである。
プロセシング・グリッドでは、計算がどこのコンピュータに任せられるかは、そのスケジューリングのタイミングでないとわからない。そのタイミングによっては、計算に必要なファイルをそのコンピュータから性能よくアクセスできるところにコピーしたり、事前に複製したりといったことが必要となる。これがデータ・グリッドの始まりで、より透過的に、仮想的にできる仕組みが提供され始めている。
ライフサイエンスでは、遺伝子の情報が世界中に分散しているケースが多々ある。これらを仮想的、かつ透過的に一つのファイルシステムに見せて、内部ではキャッシングや変更の反映などを自動的にやるような仕組みが開発されており、ファイルシステムのデータ・グリッドといえるだろう。
また、ビジネスの分野を考えてみると昨今の企業間のデータ、または企業内の組織間のデータの共有や、やりとりはそのニーズが膨大なものになっている。可能ならば、複数のデータベースにまたがっても、仮想的な一つのデータベースに見えるような仕組み、必要な部分だけを安全に仮想的に見せる技術があると、アプリケーションやシステムのつくりもかなり簡素化され、かつデータの共有が迅速になる。この分野は、データベース統合(Information
Integration)とか連合データベース(Federated Database)と呼ばれ、昔から研究が進められてきた。まさにこれは異機種のIT
資源を仮想的に一つに見せるデータ・グリッドと呼べるだろう。
図3 データベースでのデータ・グリッド
■回復力グリッド
3つ目が回復力グリッドである。これは弾力的なシステムで、最終的には高可用性を実現することから高可用性グリッドといってもいいだろう。この分野はメインフレームだけなら、ずいぶん前からワークロード管理に始まり、負荷分散、障害回復、災害復旧など基本技術が確立していた。しかしグリッドのいう、組織をまたがり、異機種で分散したシステムではまったく手付かずの分野であった。それが、昨今の企業をまたがるビジネスプロセスの出現で急速にニーズを高めつつある。
個別のプラットフォームでは、その仕組みは独自に作られていてもかまわないが、異機種となるとそうはいかない。グリッドのミドルウェアを介して、それらの資源を仮想的にみせ、そのミドルウェアの上で回復力を実現するソフトウェアが必要になってくる。このような分野は、昨今IBMがオートノミック・コンピューティングという、イニシアチブで自律的にシステム全体を管理する、といった分野と同じことを実現するものである。
つまり、組織をまたがり異機種で分散した環境で、オートノミック・コンピューティングを実現するためには、グリッド・ミドルウェアが必要だといえる。また逆の言い方をすれば、グリッドで高可用性を実現するには、オートノミックのソフトウェアが必要となるともいえるであろう。このように回復力グリッドは、オートノミック・コンピューティングとグリッド技術との総合的な分野といえる。
現在は、特定プラットフォーム間のオートノミック機能として実現が始まっており、将来はそれらがグリッドによるオートノミックに進化することと期待されている。
図4 回復力グリッドの機能
■オンデマンドの世界
さて、このような技術により、将来どのようなIT の世界がやってくるのであろうか。今の時点では予測は難しいかもしれないが、今考えられている、または開発が進んでいる2つのシナリオをご紹介しよう。
図5は、グリッドとオートノミックが中心となって実現されるユーティリティ・コンピューティングのITインフラである。
図5 グリッドによるユーティリティ
今まで、図の左にあるように、アプリケーションごとにインフラとアプリケーションを構築していた場合、突然の負荷増加に対しては、たとえ隣のサーバ群が空いていても対応できなかった。一般にアプリケーションのピークがやってくる時間帯は、アプリケーションごとに違うので、このサーバ群を共用できると、かなりのコストメリットを得るだけでなく、対応できるピークも大きくなる。右のようにサーバをプールし、グリッドとオートノミックの技術で作ったユーティリティサービスの層を通すことで、それぞれのアプリケーションがそれぞれのサービスレベルを定義(SLA)し、動的にサーバが利用できる環境となる。
このような高負荷にも耐え、コストも安く、回復性にも優れた環境に、さらに従量制の課金ができる仕組みを加えることで、ITを一般の公共サービス、ユーティリティ・コンピューティングとして提供できるものに近づくだろう。
広い概念として、必要なサービスを、必要な時に、必要なだけ得られる、こういった仕組みを一つのオンデマンド・コンピューティングとも呼んでいる。
図6はグリッドとWebサービス、そして背後にオートノミックが機能して作り出すWebサービスのオンデマンドの環境を示している。
図6 Webサービスによるオンデマンドの例
Webサービスが今後進化し、企業アプリケーションに浸透してくると、社内アプリケーションの部品化の方法として、Web サービスが使われるようになるだろう。さらに、社内で作ってそのまま稼動するWebサービスや外部のサービス・プロバイダーなどから提供、実行されるものなどいろいろ出てくるであろう。また、ある汎用のものは、複数のプロバイダーから同様のものが提供される場合も考えられる。
OGSAのグリッドは、その稼動実績や提供能力の違いも踏まえて、Webサービスベースで企業アプリケーションの一部として、動的に最適なWebサービスを実行していくだろうし、全体としては、企業アプリケーションのサービスレベルを維持するためにオートノミックが機能することも必須となってくる。
NEXT >>
|