グリッドとは何か?のパワーポイント

Grid Computingとは?
goo 辞書での”grid”の翻訳結果
• grid
━━ n. (鉄)格子; 焼き網; (地図・街路の)碁
盤目; 【電子工】(電子管の)グリッド; 送電[交
通,放送]網; (自動車レースの)スタート場
所; 【コンピュータ】(画面上の)格子, グリッド
Grid Computingとは?
• 格子、碁盤の目:
– 地理的に散らばっている計算機資源を、ネット
ワークで格子状につなげる。
• 送電[交通,放送]網:
– 電気を使うさい、どこで発電され、どんな経路を
辿って輸送されているか気にしないように、
計算機資源も自由に、いつでもどこでも、必要な
ときに使う。
Grid Computingとは?
• グリッド・コンピューティングとは?
– 利用者の需要に必要な種類/量のリソースを世
界中からその時々で集め、それらを高度に連携
させて目的を果たし、その後は利用者の視界か
ら消滅するソリューション、あるいはそのためのイ
ンフラである。
「グリッド・コンピューティングとは何か」
日本アイ・ビー・エムシステム・エンジニアリング株式会社●著より、
Grid Computingの分類
• プロセッシング・グリッド
• データ・グリッド
• サービス・グリッド
プロセッシング・グリッド
• とは?
– 演算処理を行うための資源(CPUやメモリなど)を
仮想化して、共有・利用すること。
• クラスタマシンやスーパーコンピュータ同士の接続
• PC同士の接続
• その恩恵
– 一時的に膨大なコストの演算が必要なとき、他の
コンピュータを借用して利用することができる。
– CPUの空き時間を利用して、膨大な計算を短時
間で行うことができる。
データ・グリッド
• とは?
– 膨大なデータを地理的に異なった場所に分割して保存し、
それらのデータを共有して利用すること。
• ファイルレベル・ブロックレベル・データベースレベルで仮想化で
きる。
• その恩恵
– データを必要なマシンごとに、それぞれ全て配置しなくて
もすむ
– データが破損・紛失しても、そのデータを保有しているマ
シンから入手する事ができる。
サービス・グリッド
• とは?
– ハードウェア・ソフトウェアの処理をサービスとい
う形で仮想化して、共有・利用すること。
• Ex. WEBサービス
• その恩恵
– あるサービスをする専用のマシンを作り、その
サービスを他のマシンが利用することで、効率化
が図れる。
Grid Challengeの課題について
• 問題
– 「多数のマシンに分散する画像ファイルに含まれ
る「物体」の総数を求めよ。 」
• 初級: 一つの物体は複数のファイルをまたがない.
• 上級: 一つの物体が複数のファイルをまたぐことがあり
うる.
問題点1
• 問題点1:
– 画像データが複数のマシンごとに分散されている。
– 各マシンが全ての画像データを扱えるわけではない。
– 課題上級では、直接扱えない画像データ(の一部)が必
要。
• 妥協策:
– 初級では、各マシンは使える画像データのみを扱う。
– 上級では、直接扱えない画像データは、所有しているマシ
ンを探しだして、逐次画像データを送信してもらう。
問題点1
• 妥協策の問題点
– 初級では、マシンの計算パワーに対して、多すぎ
る画像データを保有している場合、そのマシンの
処理がボトルネックになってしまう。
– 上級では、扱えない画像データがどこにいるのか
を探し出す処理にコストがかかる。面倒な処理に
なるためプログラミングが困難。
問題点1
• Grid Computingを用いた解決案
– データ・グリッド技術を用いる。
• それによりあらゆる場所にある画像データも、容易に
扱うことができる。
• 自分のマシン内の画像データの処理が終わったら、他
のマシンの画像データを処理をすることができる。
問題点2
• 問題点2
– 個々のマシン内で数え上げた物体の総数を、全
てのマシンで足し合わせないといけない。
– 上級では、隣接する画像データと比較して、境界
に属する物体が一致するか調べないといけない。
• 妥協案
– Linuxのソケットを用いて、逐次必要なマシンと通
信する。
問題点2
• 妥協案の問題点
– どこのマシンと通信するべきかを常に考えないと
いけない。
– 通信するさい、正しいユーザからの通信かを確認
することができない。もしくは、通信ごとに認証技
術を用いる必要があり、面倒。
• Ex.他のグリチャレ参加者からの妨害工作。グリチャレ
主催者が賞をあげたくないがための妨害工作。
問題点2
• Grid Computingを用いた解決案
– グリッド技術における、基盤技術を用いる。
• それにより、どこのマシンにあるプロセスと通信するべ
きかを、意識する必要がなくなる。
• シングル・サインオン技術を用いることで、複数のサー
ビスや機能を、一度の認証で利用可能になる。
その他の活用
• データの解凍、復号化、Morton順序の解釈、
数え上げ処理を、専用のマシンが処理するこ
とができる。(サービス・グリッド技術)
– おそらく単一の処理をすることでの高速化より、
通信のオーバーヘッドの方が多くなり無意味。
• マシンがクラッシュするなどで利用不可能に
なったとき、他のマシンが代行して処理をする
ことができる。
Grid Computing技術の具体化
• グリッドコンピューティング技術を具体化する
において、どのような機能が必要か?
– Ian Foster博士の論文「The Anatomy of the
Grid」が提唱した、砂時計モデルを用いて考えて
いく。
• TCP/IP技術における、OSI参照モデルのようなもの。
砂時計モデル
• グリッドコンピューティングを実現するには、
CPU、メモリ、ストレージなどのリソースを仮
想化する必要がある。
• 砂時計モデルは、この仮想化のレベルを、5
段階に分割して説明する。
砂時計モデル
各層の概略
• ファブリック層:リソースとそのインタフェース
• コネクティビティ層:ファブリック層にアクセス
するためのセキュリティプロトコル
• リソース層:仮想化された単一のリソース
• コレクティブ層:仮想化されたリソースの扱い
を手助けするサービス
• アプリケーション層:直接ユーザが操作・実行
するアプリケーション・ツール
ファブリック層
• ローカル・リソースをグリッド環境で利用する
ためのインタフェースを上位層に提供する。
• 代表的なリソース
– 処理能力:CPU、メモリなど
– ストレージ:ファイルの読み書き、転送など
– ネットワーク:処理能力やストレージなどの遠隔ア
クセス
コネクティビティ層
• ファブリック層のリソースにアクセスするため
に必要な通信と認証のプロトコルを規定する。
• 通信はTCP/IPを用いる。
• 必要な機能
– シングル・サインオン
– デリゲーション
– ローカルセキュリティへのマッピング
シングルサインオン
• それぞれに認証を要求する複数のサービス
や機能を、一度の認証で利用可能とする認
証システム
– 集中的に認証管理をする、認証局を設置する。
– これがないと、サービスを要求するごとに、逐次
認証する必要がでてくる。
デリゲーション
• ユーザからプログラムへ、プログラムからプロ
グラムへ権限を委譲(デリゲート)する仕組み
– これがないと、プログラムを起動するごとに、認証
局に権限をもらいにいかないといけなくなる。
ローカルセキュリティへのマッピング
• グリッド・レベルのセキュリティと、ローカル・レ
ベルのセキュリティへと対応する仕組み。
– グリッド・レベルでプログラムに権限を与えたつも
りになっても、実際にUNIXなどが権限を与えてい
なければ意味がない。
リソース層
• 自分のマシンのリソースと、他人のマシンのリソース
を、1つのVO(仮想的な1つの組織)内のリソースと
する。
– コネクティビティ層により、セキュアにアクセス可能になる。
– 他人のマシンのリソースを、容易にアクセス可能になる。
• 必要な機能
– インフォメーションプロトコル
– マネジメントプロトコル
インフォメーションプロトコル
• リソースを利用するための、リソースの情報を
提供する。
– CPU、HDD、メモリなどのリソースの種類
– クロック数、容量などのリソースの能力
– リソースの所有者
マネジメントプロトコル
• リソースの利用要求や、利用状況を管理する。
– リソースへのデータアクセス・転送を要求する
– 操作の状況(エラーなど)の管理
– 所有者が違った場合の、リソース利用料の管理
コレクティブ層
• リソース全体を扱い、総括や、相互作用を管
理するプロトコルおよびサービス
– あると便利、必須ではない。
• 例
– ディレクトリ・サービス
– スケジューリングおよびブローカーサービス
ディレクトリ・サービス
• リソースのリストや、固有情報をまとめて、管
理するサービス。
– PCのディレクトリではなく、グリッド環境全体の
ディレクトリになるイメージ。
スケジューリングおよびブローカー
サービス
• ユーザが必要なリソースを、要求に合わせて
自動的に探し出してくれる。
• 複数の利用者に対して、動的にリソースを割
り当てることができる。
アプリケーション層
• グリッド環境内で、実際に実行されるアプリ
ケーションやツール。
• コレクティブ層、リソース層、コネクティビティ
層を通してリソースにアクセスし、活用する。
– コレクティブ層、リソース層は通さなくても良い。
– これにより、グリッド環境を意識せずにリソースを
利用することができる。
グリッド環境のためのツール
• Globus Toolkit
• Ninf-G
• GXP
Globus Toolkit
• 現在は、Globus Toolkit 3が最新。
• もうすぐGlobus Toolkit 4が出る。
• グリチャレでは実績のあるGlobus Toolkit 2を
用いる。
• Grid Computingの実現に必要な機能をいく
つか実装している、ツール群
Globus Toolkit
•
•
•
•
GSI:セキュリティ管理
GRAM:リソースとジョブの管理
MDS:リソース情報の収集
GridFTP:データの管理
Ninf-G
• Globus Toolkitを用いたツール
• グリッドにおける遠隔手続き呼び出しを可能
とする、GridRPCを実装している。
GXP
• グリッド環境内のプロセスの一斉起動
• ゾンビプロセスなどのクリーンナップ