Grid超入門 Society for Massively Parallel Processing 28 June, 2002 JAERI KANSAI Research Establishment 谷村 勇輔 同志社大学大学院 [email protected] 1 Chapter 1 Gridとは何か? Globusとは何か? 概要,各種サービス バージョン,インストール 使用方法 Gridを手軽に利用するために Grid構築に関する諸活動 参考資料 私の研究 2 Global Computing 広域に配置された複数の計算資源を結びつけて分散 / 並列 / 協調処理を行うための環境 いわゆる Grid (グリッド) 次世代の大規模計算(科学技術計算など)や大規模ストレージなどの 社会的 / 産業的基盤を構築する Computational Grid, Data Grid, 多地点遠隔ビデオ会議 Internet Computing / Volunteer Computing 一般ユーザのPC性能を結集して計算を行う SETI@home, RC5 Cracking Contest P2P Napster, Gnutella, ICQ 各個人,各PC同士の結びつきから,何らかのコラボレーションを行いな がら計算 / 検索 / データおよび情報の共有を行う 3 Grid(グリッド)とは? Power Grid (電力網) が語源 電力網が現在の社会基盤であるように, コンピュータ資源が将来の産業的・社会的 基盤となりうる 対抗して Information Grid とも 例えば・・ ネットワーク上に研究機関・企業などの仮 想組織が作られる あえてコンピュータを買う必要がなくなる!? Grid を利用すれば,いつでも必要なス ペックのコンピュータが手に入る I.Foster, C.Kesselman, S.Tuecke “Anatomy of the Grid: Enabling Scalable Virtual Organizations” International Journal of Supercomputer Applications, 2001 4 Gridの利用例 実験 計算要求 コラボレーション ビジュアル化 大規模データ 提供 5 何が新しいのか? 従来 telnet Not telnet リソース・その他の共有 Computing Portal 簡単に利用できる バーチャル組織 telnet ダイナミックに変化する 多分野の研究者が集まる 今後 telnet http 仮想コンピュータ (数100~数1000台) 6 WAN Cluster? HPC Cluster との違い 多数の組織から,様々なタイプのリソースが提供されて構築されるヘテロ 環境 動的に変化する環境 外乱の多いネットワークでつながれている 手にできる計算リソースの規模が格段に大きい HPC だけではなく,HTC (High Throughput Computing) などHPC Cluster とは異なる要求 考えなければいけないこと これまでの並列処理技術がそのまま適用できない 非同期通信,ヘテロ環境下での計算モデル ポータビリティ,セキュリティ 簡単に使える仕組み Cluster of Cluster, Hyper Cluster 7 なぜGridなのか? 何らかの仕事を行ったり,問題解決を図ったりするモデ ルが変化し,遠隔地の研究者がチームを組んだり,コラ ボレーションを図る必要性が高まった. インターネットの普及により,全世界的なネットワークが 構築され,多くの高性能計算機がネットワーク上に存在 する. ネットワーク性能が劇的に向上している. 1986年~2000年 2001年~2010年 計算機 : 500倍 ネットワーク : 340,000倍 計算機 : 60倍 ネットワーク : 4000倍 「Scientific American の記事より (2001.1)」 8 Gridアーキテクチャ Application Problem Solving Environment Science Portal, 分野別の専用システム Application Component Architecture Global Shell, 数値計算ライブラリ,コラボレーションツール, MPI Grid Architecture Component セキュリティ,認証・証明,スケジューリング,ディレクトリサービス,データアクセス Grid Resources コンピュータ (ベクトル,クラスタ),ネットワーク,データベース 9 Gridミドルウェア Globus Toolkit : ミドルウェア開発のためのツールキット Netsolve : 遠隔地にある科学技術計算ライブラリを利用できるシステム Ninf : Netsolve と類似 Legion : オブジェクトベースのメタシステム AppLeS : アプリケーションレベルのスケジューリングに着目したシステム Condor : 分散したリソースを使って高スループットな計算を行うシステム Nimrod/G : 経済モデルを利用したスケジューリングを行うシステム Grid-enabled CORBA : CORBAをGridに拡張したシステム Avaki : Legionをベースとした商用ソフトウェア 10 Chapter 2 Gridとは何か? Globusとは何か? 概要,各種サービス バージョン,インストール 使用方法 Gridを手軽に利用するために Grid構築に関する諸活動 参考資料 私の研究 11 Globus Toolkit (GT) Globus Project の成果物 Ian Foster, Carl Kesselman ら, 1996より ANL を中心に,米国のいくつかの大学・研究機関が参加 1998.10 Version 1.1.0 Release 2001.12? Version 2.0 Release http://www.globus.org/ Gridのツール,サービス,アプリケーションを開発する上 で標準的なGridプロトコル / APIを定め,実装する. Gridノード間のプロトコルの違いを吸収(互換性) オープンソース,C / Perl で書かれた SDK Testbedやアプリケーションを通じて改善する 12 GTの主なサービス GSI (Globus Security Infrastructure) 公開鍵暗号を用いたセキュリティ技術 Single-Sign on を実現 GRAM (Grid Resource Allocation Management) リソースの発見・分析,予約,割り当て 投入ジョブの監視,制御 MDS (Monitoring and Discovery Service) Grid環境の情報収集,提供 GRISとGIISのコンポーネントからなる データ管理サービス データ転送とアクセス (GridFTP) レプリカ管理アーキテクチャ 13 GSI GSI: Grid Security Infrastructure 要求されるセキュリティレベルは高い 複数組織の異なるセキュリティ・ポリシーをどうするか? 認証機能 Single-sign on, 認証されればどこでも実行できる 公開鍵暗号を用いたセキュリティ技術 PKI: Public Key Infrastructure X.509 証明書 (SSL/TLS ベース) 集中型の認証サーバが必要ない リソース毎でも ID マップファイルが用意されている プロキシ証明書を発行できる Certificate Authority (CA), 認証局 少数の信頼できる機関,証明書に署名するだけの機関 ユーザ証明書やホスト証明書に信頼できる方法で署名する 14 GSI を用いた認証機構 CA の証明書 を取得 CA (公証局) RPC 要求 Client Sign on Certificate Key CA の証明書 を取得 Gatekeeper 作成 プロキシ 証明書 認証 Certificate 認証 Mapfile Key ジョブの実行 15 GRAM リソース管理に関すること 認証 リソースの発見・分析,予約,割り当て 投入ジョブの監視,制御 GRAM: Grid Resource Allocation Management RPC プロトコル version 1, 1.5 : HTTP based RPC version 2: SOAP Resource Specification Language (RSL) で要求を出す LDAPに似た記述方式 使用マシン名,プロセス数,使用時間,メモリ量などを指定 アプリケーション固有のリソースブローカ,コアロケータを定義可能 Condor, PBS, LSF などと統合可能 16 GRAM によるジョブ割り当て 要求 RSL 情報取得 Client MDS 要求 認証 Gatekeeper 認証 Gatekeeper 割り当て プロセス fork 要求 Local Resource Manager 割り当て 監視 Condor LSF PBS プロセス 17 MDS MDS: Monitoring and Discovery Service Grid環境の静的・動的情報を収集し,提供する Gridノードのシステム情報は,非常に重要 どんなリソースが利用できるのか? 現在の状態は? どのようにリソースを使えばよいか? 要請と特徴 情報への統一された柔軟なアクセス,非集中管理型 スケーラビリティ,効率的アクセス,複数の情報の統合化 GRIS と GIIS の2つのコンポーネントからなる GRIS (Grid Resource Information Service) GIIS (Grid Index Information Service) LDAP v3.0 を利用したサービス (globus 1.1.3) 18 MDS Components Resource A GRIS Direct Query Resource A Client 1 GRIS SNMP NIS Client 2 収集 Client 3 Query GIIS A, B のキャッシュ NWS LDAP など 19 データ管理サービス Data Grid: Data Intensive Computing and Grids 1つのところでは格納できないような大量のデータや分散配置された データを処理するシステム.データの一斉検索サービスやそれらを 使った計算サービスなどを提供する. データ転送,およびアクセス機能 セキュリティ,効率,拡張性 GASS (Global Access to Secondary Storage) GridFTP : GASSでは提供できない性能,信頼性を提供 WebDAV (Web-based Distributed Authoring and Versioning) レプリカ管理 ファイルのバックアップ,ファイルの収集 Replica Catalog: 複製データの目録の作成・管理 Replica Management: 複製データの作成・管理 20 GTのインストール Version 1.1.x ソースからコンパイルし,インストールする 手順 SSL, OpenLDAP のインストール,Globusのインストール,Deploy, 各種設定,Certificate 取得 Version 2.0 Grid Packaging Toolkit (GPT) が利用できる ソースおよびバイナリパッケージが配布されている パッケージはバンドルに分類されている 資源管理,情報サービス,データ管理,Simple CA,情報サービスのみ コンパイル時の選択をカプセル化したFlavorsを利用できる 必要なものだけ,カスタマイズしたインストールが可能になる 手順 GPT をインストール,各バンドルのインストールと設定,Certificate 取得 21 GTの使用例 (コマンド) 実行手順 $ globus-proxy-init Enter PEM pass phrase:****** ...........+++++ .+++++ $ globus-job-run [hostname] /bin/hostname –f hoge.doshisha.ac.jp その他の実行コマンド globusrun globus-job-submit 1. Sign-on 2. Execution 実行依頼 /bin/hostname –f の実行 22 GTの使用例 (詳細) Local Machine RSL Machines string mpirun RSL multi-request globusrun GRAM Client GRAM Gatekeeper GSI RSL parser grid-proxyinit GASS Server GRAM Job Manager GASS Client PBS AIX Nexu s MPI X509 User Cert RSL single request DUROC GRAM GSI App Remote Machine User Proxy Cert GRAM Gatekeeper Client GSI GRAM Job Manager GSI GASS Client Unix Fork App Remote Machine Solaris Nexu s MPI 23 GTの課題 Globus Toolkitにはメタ・スケジューラが含まれていない Condor-G, Cactus, AppLeS, DRM, Nimrod/G, PUNCH MDSのモデルは単純すぎる → MDS v.2 暗号通信がサポートされていない Firewall がある場合の対処方法は不十分 GASS, GridFTP は認証が不十分 複数の組織間で,より効率的に認証を管理したい CAの問題 Cluster of Cluster に関する話題 Web Service と Grid との融合 → GT Version 3 OGSA (Open Grid Service Architecture) Globus Project と IBM との共同 24 Chapter 3 Gridとは何か? Globusとは何か? 概要,各種サービス バージョン,インストール 使用方法 Gridを手軽に利用するために Grid構築に関する諸活動 参考資料 私の研究 25 Grid RPC Grid 環境における RPC 単純なプログラミングインタフェース タスク並列なプログラム向き 既存システム Ninf : AIST, TITECH Netsolve : Univ. of Tennessee 引数を付けてCall Client あらかじめ用意された Function 計算結果 Server 26 Ninf, Ninf-Gの例 Ninf (Network based Information Library for high performance computing) 日本,産総研・東工大が中心となって開発 広域ネットワーク上の数値計算ライブラリ,数値情報データベース を通じて,情報や計算資源を提供・共有する仕組みをもつ 1994 最初のリリース Ninf-G : より簡単にGridシステムを使う,Globus対応 非常に簡単な RPC API double A[n][n],B[n][n],C[n][n]; dmmul(n,A,B,C); /* Data Decl.*/ /* Call local function*/ Ninf_call(“dmmul”,n,A,B,C); /* Call server side routine*/ 27 Portals Computing Portal 手元にある計算機のユーザインタフェースを用いて, 遠隔の計算機を利用できるサービスを提供する シームレスに接続できる Web ブラウザの利用 28 My Proxy Web ブラウザからGlobusの認証機構をパスする仕組みを提供 Java Commodity Grid Kit (CoG kit) に含まれる 現在,Globus が提供するクライアント側の API のほとんどを提供 Repository 要求 Web Server (Portal) GSI プロキシ発行 計算 要求 HTTPS myproxy-server GSI 登録しておく 結果 ユーザの private な Web Browser Certificate Key 29 Chapter 4 Gridとは何か? Globusとは何か? 概要,各種サービス バージョン,インストール 使用方法 Gridを手軽に利用するために Grid構築に関する諸活動 参考資料 私の研究 30 Testbed, Project 研究成果を実際の環境で試すことが要求される GUSTO (Globus Ubiquitous Supercomputing Testbed Organization) US, DOE Science Grid US, ASCI, DRM (Distributed Resource Management) Testbed US, NASA, IPG (Information Power Grid) US, NSF, TeraGrid EU, EuroGrid German, BMBF, UNICORE (Uniform Interface to Computing Resources) ApGrid (Asia-Pacific Grid) etc. 企業 Avaki, Entropia, Gridware (Sun Microsystems), etc. 31 TeraGrid Distributed Supercomputing Gridに関する米国の大型プロジェクト 全米科学財団 (NSF) からの助成金 総額 $5300万 (約60億円) 合算10 Tera 級の IA-64 クラスタの設置 (4ヶ所) 40 Gigabit のネットワーク回線の敷設 2002 夏頃に全米にまたがるGridインフラの構築 米国中の研究者がアクセス可能,科学技術計算を行う NCSA, SDSC, ANL, Caltech といったスパコンセンタ IBM : サーバ開発 Intel : CPU (Itanium, McKinley), コンパイラ Qwest : ネットワーク (高速光回線) 32 TeraGrid ネットワークイメージ 33 ApGrid 全てのアジア・太平洋地域のHPCN (High Performance Computing and Networking) 研究者の交流の場 Grid関係の研究に関して GGFや他のGridのコミュニティとのパイプ役 国際的なプロジェクト・パートナーを見つけるための場 単一の機関から資金提供を受けたプロジェクトではない EUROGRID, eGrid, IPG とは異なる Focus リソースの共有 Grid技術の開発 新しいアプリケーションを創るための技術供与 相互的な研究の発展 34 OBI Grid Open Bioinformatics Grid 共同研究 並列生物情報処理イニシアティブ (IPAB) 文部科学省 科学研究費 特定領域研究ゲノム情報科学ソフト ウェア高速化および共有化委員会 目的 「開かれた」バイオインフォマティクス環境 Open Bioinformatics Grid Environment (OBIE) 各研究機関が所有する計算資源を共有 ゲノム関連データベースやアプリケーションの相互参照を実現 誰もが最小限の計算資源で最先端のバイオインフォマティクス研 究を行える環境を実現する 35 参考資料 GGF (Global Grid Forum) http://www.gridforum.org/ Globus Project http://www.globus.org/ Technical Paper, Training Resources, etc. 田中良夫(AIST),「Globus Toolkit」, JSPP2002 チュートリアル資料 サイエンス社 「Computer Today」の連載 2000.3 No.95 ~ 2002.3 No.108 グリッド協議会 http://www.jpgrid.org/ 日本人向け Globus ML → [email protected] ApGrid http://www.apgrid.org/ OBIグリッド http://www.obigrid.org/ 36 Chapter 5 Gridとは何か? Globusとは何か? 概要,各種サービス バージョン,インストール 使用方法 Gridを手軽に利用するために Grid構築に関する諸活動 参考資料 私の研究 37 研究紹介 Grid計算環境におけるアプリケーションのモデルを検討 GOCA (Grid Oriented Computing Application) 仕事は複数に分割可能 分割された仕事は互いに依存関係が少ないか,独立に実行可能 分割された仕事は並列実行可能 仕事間は頻繁な通信を必要としないか,全く通信を行う必要がない 実行時におけるノード数の増減に対して,低コストで対応可能 EVOLVE/G システムの開発 GOCAを満たすアプリケーションである進化計算手法(GA, GPな ど)を検討するためのシステム タスク並列以外の並列モデルを記述可能 Grid環境のクラスタリング化が可能 (ヘテロ環境を考慮) 階層的な計算モデルを記述可能 (スケーラビリティを考慮) 動的なモデルの変更が可能 (動的変化を考慮) 38 EVOLVE/G システム Agent ユーザ拡張 基本システム 実行要求, その他命令 Worker ユーザ拡張 基本システム 情報の取得 - 計算結果・経過 - 通信データ - マシン状況 Worker (Agent) (Agent) Worker Worker Worker Worker • Agentの記述 - 取得情報 - クラスタリングの方法 - 通信パターン - Agentによる処理 - Worker管理 • Workerの記述 - 通信データ - Workerによる処理 (コアな計算) 39 対象問題,実験環境 進化計算手法 GA, PSA/GAc, etc. 対象問題 タンパク質の立体構造予測 岡崎国立共同研究機構分子科学 研究所 岡本らのエネルギー関数 実験環境 同志社大学 知能情報センター PCクラスタ(16ノード,64ノード) 大阪産業大学 PCクラスタ(4ノー ド) 将来的にはノード数を拡大 クラスタ数,クラスタ規模,サイト数 ApGridやOBIグリッドの利用 同志社大 Galley 100Mbps LAN Gregor Internet 大産大 Moon 40
© Copyright 2024 ExpyDoc