Download presentation
Presentation is loading. Please wait.
1
DataGrid ミニワークショップ@天文台 12/12
仮想天体観測所 JVO の基盤技術 鈴村豊太郎† 濱野 智行† 中田秀基† † 松岡 聡† † 東京工業大学 † † 産業技術総合研究所 DataGrid ミニワークショップ@天文台 12/12
2
DataGrid ミニワークショップ@天文台 12/12
これまでの経緯 今年10月、天文台の JVO (Japanese Virtual Observatory) プロジェクトとの共同研究を開始 現在までに2度のミーティングが行われた 詳細なアーキテクチャ設計はこれから DataGrid ミニワークショップ@天文台 12/12
3
DataGrid ミニワークショップ@天文台 12/12
JVO の基盤となる技術 各コンポーネントの実装 →次世代のグリッド基盤 OGSA (Open Grid Service Architecture) シングルサインオンの実現 → MyProxy ポータルの自動生成 → Ninf Portal … DataGrid ミニワークショップ@天文台 12/12
4
Open Grid Services Architecture
今年2月 GGF4 (トロント)で IBM と Globus の チームが発表した次世代のグリッドアーキテクチャ Web サービスのコンセプトがベース SOAP (Simple Object Access Protocol) メッセージの送受信による PRC WSDL (Web Service Description Language) Web サービスのインタフェースを定義 UDDI (Universal Desc., Description Language) Web サービスの検索 Globus の欠点を反省し、統一されたインタフェース上にすべてのプロトコルを実装しなおす オブジェクト指向的なアプローチ すべてのコンポーネントを“グリッドサービス”として抽象化 インタフェースと実装の分離 プログラミングパターンの導入 DataGrid ミニワークショップ@天文台 12/12
5
DataGrid ミニワークショップ@天文台 12/12
Webサービスからグリッドサービスへ 機構 Webサービス グリッドサービス オブジェクト参照 なし GSHとGSRおよびMapper インターフェイスの表現 WSDL WSDL + 拡張 メッセージパッシング SOAP SOAP (その他の実装も可能) オブジェクトの検索 UDDI Registory サービス オブジェクトの生成 Factory サービス オブジェクトの破棄 明示的なoperation もしくはソフトステイト オブジェクトの内部状態 グリッドサービスデータ 通知 Notification サービス DataGrid ミニワークショップ@天文台 12/12
6
DataGrid ミニワークショップ@天文台 12/12
OGSAの現状 仕様自体がまだ討論されている段階 テスト用の実装(Java)がCVSで公開されている αバージョンが来年1月に公開の予定 まずはGlobusの各モジュールのOGSA化 Globus 3.0 OGSI + OGSIで既存のGRAM,MDSをラップしたもの? 現行のGlobus使用アプリケーションはほぼそのまま移行 その後ネイティブなOGSAアプリケーションが徐々に主流になってくる? → OGSAが今後普及していくことはほぼ間違いない 多くの企業が独自実装を開始しているとの話 GGF, MLでも活発な議論がなされている DataGrid ミニワークショップ@天文台 12/12
7
DataGrid ミニワークショップ@天文台 12/12
DASH - CORBAを用いたLAN内の分散解析環境 DataGrid ミニワークショップ@天文台 12/12
8
DataGrid ミニワークショップ@天文台 12/12
DASH上の各コンポーネントを OGSA のサービスとして実装 OGSA Service OGSA Service SOAP + GSI OGSA Service OGSA Service DataGrid ミニワークショップ@天文台 12/12
9
DataGrid ミニワークショップ@天文台 12/12
シングルサインオンの実現 シングルサインオン 一度ログインするだけで、すべての資源に自分の権限でアクセスできる Globusによって実現 Globus証明書が必要 アプリケーションを起動するポータルから証明書をアクセスできなければならない MyProxy[NLANR]を使用 証明書のdelegationを利用した安全な証明書保持機構 秘密鍵をネットワーク越しに転送することなくアイデンティティを委譲 DataGrid ミニワークショップ@天文台 12/12
10
DataGrid ミニワークショップ@天文台 12/12
MyProxy の概要 1.Deposit user’s proxy Cert. ユーザのプロキシ証明書を預ける。この際にパスフレーズを指定 Webブラウザからユーザ名とパスフレーズを入力 ポータルはMyProxyサーバにアクセス ユーザのプロキシ証明書を取得 グリッドアプリケーションを起動 User’s Host MyProxy Server 4. Get User’s cert 3. Request user’s cert. Grid Portal Grid Application Web browser 2. Login with Username & Passphrase 6. Invoke Client program Using user cert. User Grid Portal DataGrid ミニワークショップ@天文台 12/12
11
DataGrid ミニワークショップ@天文台 12/12
ユーザインタフェース いつでもどこでも解析が行え、ジョブの実行状況などのモニタリングができる “Web インタフェース”が必要 DataGrid ミニワークショップ@天文台 12/12
12
DataGrid ミニワークショップ@天文台 12/12
Ninf Portal の概要 グリッドポータル構築ツールキット インターフェイス作成、処理支援 XMLで記述した情報からインターフェイス部となるJSP(Java Server Pages)のページを自動作成 グリッドアプリケーション記述支援 GridRPC Ninf-Gを使用 ホスト間通信を高度なAPIで隠蔽 ベースにはGlobusを使用 認証にはMyProxy[NLANR]を使用 DataGrid ミニワークショップ@天文台 12/12
13
DataGrid ミニワークショップ@天文台 12/12
Ninf Portal の概要 Grid Application IDL IDL FILE Web Browser 1.アクセス JSP Ninf-G Server ユーザインタフェース HTML 3.UI 表示 Ninf-G Client メタデータ Javaコード Ninf-G Server 2.メタデータをストア 起動 Session 4.データ サブミット Ninf-G Server 5.メタデータを取得 DataHandling Servlet 6.結果表示 ユーザ Web フロント部 グリッドアプリケーション部 DataGrid ミニワークショップ@天文台 12/12
14
Grid Application IDL の例
引数シーケンス <?xml version="1.0" encoding="shift_jis"?> <!DOCTYPE application SYSTEM "JSPGenerator.dtd"> <Application> <!-- Application Information --> <Information> <name> BMI </name> <location> /usr/local/bmi/BMIClientC/BMISolver </location> <manufacturer> Kento Aida </manufacturer> <appdescription> BMI Application Portal </appdescription> </Information> <ArgumentFormat> -t $type $uploadfile </ArgumentFormat> <! Arguments Information > <! first Argument > <Argument> <argname> uploadfile </argname> <type>inputfile</type> <info> InputFile </info> <method> upload </method> <description> inputfile of data </description> </Argument> <! second Argument > <argname> type </argname> <type> string </type> <info> type </info> type of program </Application> 各引数情報 実行パス DataGrid ミニワークショップ@天文台 12/12
15
DataGrid ミニワークショップ@天文台 12/12
生成されるJSP <br> Welcome to BMI Application Portal! <br> <form action="/bmi/servlet/Portal" name="MyForm" method=post ENCTYPE="multipart/form-data" onSubmit="return checkData(this)"> <table border = 3 align = center> <tr> <td>InputFile</td> <td><input type = file name = arg0></td> </tr> <tr> <td>type</td> <td><input type = text name = arg1></td> </tr> </table> <center> <input type = submit align = center value = "submit"> </center> </form> <% int argnumber = 2; String argformat = "-t $type $uploadfile"; String executablepath = “/usr/local/bmi/BMIClientC/BMISolver"; String args[] = {"inputfile","string"}; String namerow[] = {"uploadfile","type"}; String filemethod[] = {"upload","null"}; PortalApplicationDescription obj = new PortalApplicationDescription( argnumber, argformat, executablepath, args, namerow, filemethod); session.setAttribute("inputs",obj); %> Java Code部 メタ情報を定義、 セッションに保存 HTML部 インターフェイス DataGrid ミニワークショップ@天文台 12/12
16
DataGrid ミニワークショップ@天文台 12/12
現状と今後の予定 現在リリースされている OGSA を用いて、計算サービス Ninf-on-OGSA を実装中 詳細なアーキテクチャの設計 天文台との定期的なミーティングを開く DataGrid ミニワークショップ@天文台 12/12
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.