您的当前位置:首页正文

基于gridport的计算服务网格门户的设计与实现

2022-10-14 来源:我们爱旅游
维普资讯 http://www.cqvip.com

第31卷第2期 2007年3月 燕山大学学报 Journal of Yanshan University VO1.3l NO.2 Mat.2007 文章编号:1007-791X(2007)02-0169-05 基于g ridport的计算服务网格门户的设计与实现 王蝽 (1.燕山大学信息科学与工程学院,河北秦皇岛066004) 摘 要:为了充分利用部署存网格系统中的计算服务,增加用户使用网格资源的透明度,设计了基于Gridport 的计算服务网格门户(CSGP)。应用Globus的Pre-WS GRAM技术和Gridport网格门户开发工具包实现j,作业 提交、作业运行状态查询和网格资源监控等功能。实验测试表明CSGP能够为用户提供良好的计算服务接L1, 并改善计算任务的执行效率。 关键词:网格门户:网格计算服务:Gridport:作业提交:资源监控 中图分类号:TP393 文献标识码:A 0 引言 网格是构建在互联网上的新兴技术,它将地理 上分布的各种异构资源(包括计算资源、存储资源、 数据资源、信息资源、设备资源等)整合成一台虚 拟的超级计算机,实现在动态变化的多个虚拟组织 间共享资源和协同工作,并向用户提供一致的接口 和服务[I-21 ̄在网格应用中的网格资源和服务通常 以API接口或命令行接口的方式呈现给终端用户, 这需要用户对复杂的网格环境有清晰的认识和配 置,其结果导致非专业用户掌握网格系统的使用方 法非常困难。因此,网格门户(Grid Porta1)应运 而生,旨在方便用户与网格服务和网格资源的交 互。网格门户可以被看成是一系列的Web应用服 验室开发的GPDK 等。 本文根据课题组开发的计算服务网格平台的 实际需求,应用当前网格门户构建的主要技术,设 计并实现了一个计算服务网格门户CSGP(Com— putational Service Grid Porta1)。采用了Globus网 格技术中间件、Gridport工具包 以及Java开发 工具实现门户开发中的核心功能,为用户提供了统 一的操作接口和全局操作视图,方便用户对底层网 格服务的使用。 1基于Gridport的CSGP的设计 1.1 CSGP的结构 从逻辑结构上看,CSGP主要分为客户端、网 格门户管理层和后台服务层3部分,其系统结构如 图1所示 捌。 务器,其作用表现为:为网格服务和网格资源信息 收集提供安全的环境,并提供工具使用户能够应用 网格服务和网格资源来完成自己的任务;为用户提 供一个网格软硬件资源视图和快速利用网格的计 算能力;保证用户能通过门户透明的访问网格的各 项服务。网格门户的开发包括作业提交、安全认 证、信息监控等关键问题。目前,国际上已经开展 了一些网格门户项目的研究,包括英国科研委员会 中央实验室e—Science中心开发的HPCGrid Servi— 1)客户端:用户使用网格门户前需要通过浏 览器进行用户信息注册,其目的是为通过门户管理 中的安全认证,获得用户代理提供依据。在Grid— Port中使用Globus的网格安全基础设施GSI(Grid Security Infrastructure)对远程主机进行单一签名 和身份验证,并通过配置相关portlet实现。成功 登录后使用Web GUI提供的功能访问网格服务。 2)网格门户管理: 登录到网格门户的用户首 ces Portal 、美国国家高级计算基础设施联盟的 NPACI Portal 、美国Lawrence Berkeley国家实 收稿日期:2006—09—20 F200600028 1) ;河北省自然科学基金项}{(No 基金项目:河北省科学技术研究与发展指导计划项目(No.062135127) 作者简介:王墙(1977一),女,黑龙江齐齐哈尔人。硕士,讲师。主要研究方向为并行计算、网格计算。 维普资讯 http://www.cqvip.com

l70 燕山大学学报 2007 先需要经过网格门户管理层安全认证,经过认证授 3)后台服务层:后台服务层中包括在Globus 权后用户可以访问门户列表中提供的服务。用户在 中已部署成功的服务,依据用户所提交的请求参数 服务列表中选择相应服务后,进入各服务对应的 调用相应的服务进行处理,并将其转换成Grid I/O JSP界面,提交需要执行的计算作业,通过GridFTP 操作。然后由集成的网格服务访问接口COG模块 将作业所需要的计算服务请求传送给后台服务层。 向用户请求中所对应的网格资源提交Grid I/O操 另外,该层还能通过Globus的监控组件查看底层 作,利用资源执行用户的服务请求,将服务的执行 资源信息和作业执行状态。 结果返回到COG模块,并逐层返回到客户端。 客户端  :网格i'jy ̄管理层 : 后台服务层 门户服务列表 浏 系 览 登 安 作业提交 Grid'YTP 部 执行 统 器 录 伞 署 软 ●●‘ 注 硬 册 认 证 资源和作业监控 服 务 件 资 源 计算服务 图1 网格门户系统结构图 Fig.1 The system frame of grid portal 2 CSGP的实现 正式登录并输入Globus CA认证中心的密码,即 可打开ProxyManager Portlet,看到用户获取的信 CSGP提供了作业提交、作业运行状态查询、 任状。此时,用户可以使用WebGUI访问网格服务。 网格资源监控、安全认证和资源调度的功能。系统 利用Gridport提供的GRAM作业提交API,实现 2.2作业提交 了与资源节点中GRAM的通信并调用了GRAM 作业提交是网格门户中一个重要部分。作业提 的作业提交机制,将客户端作业提交表单中的作业 交功能可以根据用户的需求,统一管理和调度网格 信息以RSL形式提交给GRAM,由GRAM负责 的软硬件资源,尽可能保证用户作业公平合理的共 管理作业的执行,并结合部署在服务层的监控服务 享资源,从而达到方便用户使用网格服务,提高系 监控作业和资源的执行状态、将GRAM的全局调 统吞吐率和利用率的目的 。基于Gridport所设计 度与所设计的调度算法相结合实现批作业调度,最 的作业提交流程如图2,其实现功能如下: 终为终端用户返回执行结果。 1)选择远程资源和服务。通过GridPort的信 2.1安全认证 息监测模块获取远程资源的使用情况,为用户选择 用户使用门户前需要进行用户信息注册,通过 资源节点作为作业提交节点提供依据。此时,只需 帐户的安全认证后获得用户代理。系统通过GSI对 更改demo—portal/src/conf/H录下的portlet.xm1.gP— 远程主机进行单一签名和身份验证,并通过配置相 job—submission文件,即可实现实际网格资源节点 关portlet实现。实现过程中选择基于Gridport自 的添加。另外,通过编写submit.jsp提交文件,也 带的认证仓库来开发用户登录。此时需要将Globus 可以添加虚拟服务的选择功能。 主节点上的usercert.pem和userkey.pem两个文 2)调用远程GRAM。通过编写GRAM— 件拷贝到门户服务器的¥HOME/-/GridPortReposi— JobPreWS文件实现对GRAM的直接调用,提供 tory目录的storeCredentials子目录下,并设置成以 了实现作业提交的方法,同时还可以利用Globus 网格用户名为前缀的新文件名。随后以用户名执行 GASS监听作业状态,获得出错信息和返回结果。 维普资讯 http://www.cqvip.com

第2期 王堵基于gridport的计算服务网格 户的设计与实现 171 3)作业提交PortLet的实现。通过编写一个面 向客户端的Java类GRAMJobManager,使其最终 成为PortLet实现类和GRAMJobPreWS之间的一 个中介。作业提交portlet的实现类GRAM・ JobSubmissionPortlet文件用来完成对作业提交 PortLet的编写。在继承通用PortLet类的基础上进 行扩展,通过submit.jsp取得动态的作业参数,调 用GRAMJobManager和GRAMJobPreWS、execu・ teJobSubmission、globusrun、updateStatus等方法, 将作业参数描述为RSL,并应用登录网格时获得 的用户代理,在远端和GRAM的gatekeeper进行 对话,将通过安全认证后的作业进行提交,实现基 于Web界面的作业提交、状态查询、出错报告和 结果返回。 f 从作业提交页面获取作业参数 否 返回参数 错误信息 上—一 更改参数 l否 l不能为空 调用 buildRs 1方I厂—— 一 法获得作业的 Rsl I l里 旧仕扒 开启GASS服务器 建立作业输出监听 格式化作业RSL 调用资源分配算法 执行作业并返回结果 结束 图2基于GfidPort的作业提交流程 Fig.2 The lfowchart ofjob submission based on GridPort 2.3资源监控可视化 资源监测可以及时了解网格系统中可用资源 的系统性能、使用情况,为网格作业提交到合理的 资源提供依据。Gridport信息存储库GPIR搜集并 记录“动态”和“静态”的网格数据,并通过Web 服务为门户提供当前数据。为了形象的反映出资源 变化情况,在Gridport的基础上,利用Java语言 中AWT和Swing技术实现了资源 控可视化,并 将其以可视化服务的形式部署在Globus容器中。 2.3.1 服务层可视化服务部署 以监控内存资源为例,资源监控可视化服务的 实现步骤如下: 1)定义接口描述文件。接口文件是一个 GWSDL文件。GWSDL是网格服务描述语言,它 遵守XML文件的格式。定义接口文件时需要进行 的工作包括:根元素描述、接口定义、Message定 义和方法定义4个步骤,同时需要在接口中定义 getfreeMemory和gettotalMemory两个方法。定义 接口文件可以实现收集信息服务、向外界提供收集 节点信息的机制。因此,只需要构造实现该接口的 程序,客户端就可以通过调用该方法使用它提供的 服务,从而得到所要求的信息。 2)实现接口。实现接口的Memorylmpl类继 承了GridServicelmpl类,遵循定义接口时的命名 空间。依据定义的目录和文件名,该类存放在/mem. ory/org/globus/progtutorial/services/core/first/impl/ Memorylmp1.java目录下。该程序实现了Memor・ yPortTyper的接口。MemoryPortTyper接收一个用 来描述网格服务的字符串。 3)定义网格服务描述文件。网格服务部署描 述文件是一个wsdd文件,用来描述网格服务如何 发布。其存放在/memory/org/globus/progtutorial/ services/core/ifrst/server-deloy.wsdd中。其中服务 名servicename指定了网格服务的地址,将其和网 格服务容器的地址结合起来即可得到网格服务的 GSH。 4)使用Ant工具创建GAR文件。将服务接 口、服务和部署描述器打包成GAR文件的目的是 便于服务层中的Globus容器部署服务。把GWSDL 维普资讯 http://www.cqvip.com

维普资讯 http://www.cqvip.com

第2期 王珞基于gridport的计算服务网格门户的设计与实现 l73 表l 文件管理和作业运行状态查询 参考文献 [1]陈博,迟学斌,武虹.计算网格Portal的设计与实现[J]l微电 子学与计算机,2004,21(9):15—18. Tab.1 File management and the status query ofjob running File Management Job StatuS Na/he Size Permissions Name Size Status Pi.class 40 1 一nⅣ一r-一r-一 Pi.java Pi.sh Pi.out Mm.java 570 Linp.sh 102 Done Active Error [2]李安欣,顾巧云.Grid Portal的原理与实现[J].计算机工程, 2004,30(增TIJ):228—229. 1 27 一nⅣ一r-一r-一 131 一rwxrwxr-x 13 一nⅣ……… lfap.java 842 Active Metrix.sh 633 [3]HPCGrid Services Portal[EB/OL].http://esc.d1.ac.uk/ TechReports/consolidate/consolidate/node55.htm1. 表2 CSGP上运行不同计算实例的测试时间 ab.2 The Ttest time ofdifferent computer instances on CSGP [4]GridPort Project[EB/OL].http://gridpott.npaci.edu. [5]GPDKProject[EB/OL].http://doescience d.org/projects/GPDK. [6]Dahan M,Thomas M,Robe,s E,et al—Grid Portal Toolkit 3.0. (GridPort)[C]//Proceedings ofthe 13th IEEE International Sym— posium on High Performance Distibuted rComputing.Washington, USA:IEEE Computer Society,2004,272—273. [7]Berman Fox G,Hey Grid computing:making the global in— frastructure a reality[M].New York:John Wiley&Sons Ltd, 2003:9—2I. [8]胡春明,怀进鹏,孙海龙.基于Web服务的网格体系结构及其 支撑环境研究[J].软件学报,2004,15(7):1064—1073. 4结论 本文提出了门户服务结构,并采用基于Web 的作业提交方式,方便用户与网格服务和网格资源 交互。基于Gridport工具包、Globus和Java语言 [9]Prodan R,Fahringer A Web Service—Based Experiment Man— agement System for the Grid[C]//Proceedings ofthe 17th Inter— national Symposium on Parallel and Distibutred Processing.Wash— ington,USA:IEEE Computer Society,2003,85. 开发了计算服务网格门户CSGP。用户通过CSGP 可以安全地对计算服务的信息进行查询、远程调 用、监控等。在CSPG上运行了多个科学计算实 例,获得满意效果。 Design and implementation of computational service grid portal based on gridport G Xuan (1.College of Information Science and Engineering,Yanshan Univesity,Qinhuangdao,Hebei 066004,China) Abstract:In order to utilize computing services in grid effectively and implement transparent resource access,the computational service grid portal(CSGP)based on Gridport was designed,Job submission,the states quey rofjob running and resources monitoring were implemented by using Pre—WS GRAM in Globus and Gridport,System tests show that CSGP provides a friendly user interface and improves het executive eficifency of computing jobs, Key words:grid portal;grid computing service;gridport;job submission;resource monitor 

因篇幅问题不能全部显示,请点此查看更多更全内容