网格计算综述_肖连兵
第 28卷 第 3期 Vol.28 № 3
计 算 机 工 程 Computer Engineering
2002年 3月 March 2002
·发展趋势 /热 点 技 术 · 文章编号: 1000— 3428(2002)03 — 0001— 03
文献标识码:A
中图分类号: TP302.1
网格计算综述
目 前 使 用 Globus 实 现 的 项 目 有 Cactus,MM5,Nimrod, Tardis,Neph,HTB 。CoG 实 现 了Globus 服 务 的 图 形 化 客 户 端。
2.2 Legion[3] Legion是美国Virginia大学开发的基于对象的元计算系
统, 它和Globus类似,提供地理分布的无缝的异构系统集 成。Legion由类和元类(类的类)组成,具有以下特点:
Technology of Grid Computing
XIAO Lianbing, HUANG Linpeng (Dept.of Computer Science and Engineering,Shanghai Jiaotong University,Shanghai 200030) 【 Abstract 】 Grid computing ,a important method to solve complex application ,is growing more successful in distributed computing.
作 者 简 介 :肖连兵(1974~),男,硕士生,主要研究领域是分布式计 算;黄林鹏,硕士生
收 稿 日 期 :2001-06-22
—1—
·网格发展环境和工具:网格必须提供网格应用开发工具。 ·网格应用和网格门户(Grid Portal):可以使用PVM、MPI等 工具开发参数模拟等应用,这些应用通常需要相当多的计算资源以 及远程数据访问。网格门户提供基于Web的应用服务,用户通过网 络界面提交任务,并得到结果。
(3)可适应性(adaptability) 在网格中,具有很多资源, 资源发生故障的概率很高。网格的资源管理或应用必须能动态适应 这些情况,调用网格中可用的资源和服务来取得最大的性能。与一 般的局域网系统和单机的结构不同,网格计算系统由于地域分布和 系统的复杂使其整体结构经常发生变化;网格计算系统的应用必须 能适应这种不可预测的结构。
网格应用
科学计算 工程应用 …
Web应用
开发工具
语言 库 调试器 …
Web工具
网格中间件
通讯 安全 信息 …
Qos
本地资源管理
操作系统 连接库
…
TCP/IP & UDP
网络资源:计算机、Cluster、仪器...
图1 网格计算系统体系结构 1.4 网格系统的主要功能
通常网格环境必须提供以下的基本服务: (1)管理等级结构(Administrative Hierarchy) 它定义网格计算 系统的组织方式,如网格环境如何分级以适应全局的需要。 (2)通信服务 网格中的应用可能有多种通信方式:可靠的, 不可靠的,点对点和广播方式。网格的通信基础设施需要支持多种 协议,如流数据、群间通信、分布式对象间通信等。同时,它还要 提供QoS支持,如延迟、带宽、可靠性、容错性和抖动控制。 (3)信息服务 作为一个动态的网格,它提供服务的位置和类 型是不断变化的。网格计算系统的一个目标就在于不管用户和资源 的相对位置如何,都能提供资源的全局访问。因此,有必要提供一 种能迅速、可靠地获取网格结构、资源、服务、状态的机制,保证 所有资源能被所有用户使用。 (4)名称服务 网格计算系统和其他的分布式系统一样,使用 名字引用种资源,如计算机、服务或者数据对象。如同Internet的 DNS服务,网格名称服务给网格中所有资源提供统一的名称空间。 (5)分布式文件系统及Cache 分布式应用经常需要对分布在 多个服务器上的文件进行存取,因此分布文件系统是分布式系统的 重要组成部分。从应用的观点来看,分布文件系统能提供一致的全 局名字空间,支持多种文件传输协议,同时提供良好的Cache 机制 以I/O性能。 (6)安全及授权 网格安全机制相当复杂,各种自治资源交互 时既不能影响资源本身的可用性又不能在整个系统中引入漏洞。因 此,安全机制是网格环境成功的关键。 (7)系统状态和容错 为了提供一个可靠的、强壮的网格环 境,系统应该提供资源监视工具。 (8)资源管理和调度 网格必须对网格中的各种部件,如处理 器时间、内存、网络、存储进行有效的管理和调度。从用户的观点 来看,这种资源的管理和调度应该对用户透明。用户与网格系统的 交互只限于用户向系统提交任务。 (9)计算付费和资源交易 网格环境提供一种机制刺激人们贡 献他们的闲置资源。同时,资源管理系统根据资源性能价格比和用 户需求调度最合适的资源。 (10)编程工具 网格系统提供良好的环境。网格应提供多种 工具、应用、API、开发语言等以构造良好的开发环境。如C、 C++ 以及Fortran等通用科学计算语言,MPI、PVM等应用开发界面,并 支持消息传递、分布共享内存等多种编程模型。网格系统同时还应
(1)软硬件部件都是对象。所有的对象都是响应系统中其他对 象调用的进程。Legion定义了对象交互的API,但是Legion没有定 义编程语言和通信协议。
(2)类管理自身的实例。类定义和管理其对象。类对象具有系 统级权限,能生成新实例、调度实例,或向其它对象提供状态信 息。
This paper outlines the definition of grid computing,its speciality and fundamental structure.In addition,the paper introduces servral grid systems,analyzes the existing problem and points out the future trend of this technology. 【 Key words】 Grid computing; Metacomputing; Grid; Middleware
网格计算技术的产生是应用对计算资源和计算能力不断 增长的需求的结果。当单台计算机系统不能满足应用的需求 时,就需要使用其它计算机系统的资源。但一方面,由于超 级计算机系统现在还非常昂贵,不可能添置超级计算机作为 解决该应用的专用系统;另一方面,即使可以使用其它超级 计算机,由于不具备通用性,也不可能直接利用这些计算机 上的资源。网格计算系统的出现为解决上述问题提供了崭新 的途径。从20世纪80年代末期Larry Smarr在CASA计划中[1] 首先提出这种方案以来,网格计算系统的研究就吸引了众多 的注意力。在网格计算领域,已成立了Global Grid Forum , eGrid: European Grid Computing Initiative 等论坛,以及多家 面向网格计算的公司,而且一直不断有新的研究机构或工业 组织加入到研究网格计算系统的活动中来。网格计算研究已 成了当今软件技术的一个研究热点。
计算网格需要支持多种应用和编程方法,因此GMT 不 是提供一种统一的编程模型(如面向对象模型),而是提供一 组服务包,这样开发人员就可以利用它们自己特定的需要。
Globus是一种多层结构,高层的全局服务建立在低层的 本地核心服务上。GMT是模块化的,包括下列服务:资源 分配和进程管理(GRAM),单点和多点广播通信服务(Nexus), 授权和安全服务(GSI),信息服务(MDS),系统监控服务(HBM), 远程数据存取(GASS), 建构Cache服务(GEM), 高级资源保留 和分配(GARA)。因此,Globus 可看作基于底层服务上的元 计算框架,它以API的方式提供对外接口。研究人员可在其 基础上开发各种应用执行环境。
(1) 异 构 性 (heterogeneity) 网格可以包含多种异构资 源,包括跨越地理分布的多个管理域。构成网格计算系统的超级计 算机有多种类型,不同类型的超级计算机在体系结构、操作系统及 应用软件等多个层次上可能具有不同的结构。
(2)可扩展性(scalability) 元计算系统初期的规模较小, 随着超级计算机系统的不断加入,系统的规模随之扩大。网格可以 从最初包含少数的资源发展到具有成千上万资源的大网格。由此可 能带来的一个问题是随着网格资源的增加而引起的性能下降以及网 格延迟,网格必须能适应规模的变化。
在科学、工程和商业计算领域,还有很多问题难以使用 现有的超级计算机解决,如需要处理的海量数据资源分布在 不同的地理区域,所需的特殊计算设施和输入输出设备等不 是本地的。基于这种情况,网格计算技术被提了出来,它将 网络上的各种资源,包括超级计算机、大规模存储系统、个 人计算机、各种设备等组织在一个统一的框架下,从而能够 以非常方便的方法解决各种复杂的问题,这种方法又被称为 元 计 算 (Meta Computing) , 无 缝 、 可 扩 展 计 算 (Seamless Scalable Computing),全局计算(Global Computing)等。
2.1 Globus[2] Globus是美国多家研究机构提出的建立计算网格的研究
项目Globus是一种软件基础设施,它使应用能以单一虚拟 机的方式处理分布的异构计算资源。所谓计算网格,是指对 于地理分布的资源和用户,提供可靠的、一致的高端资源服 务的硬件和软件基础设施。Globus 系统的核心在于Globus Metacomputing Toolkit(GMT),它提供了建构一个计算网格所 需的基本服务,如安全、资源定位、管理和调度、通信服务 等。用户能利用GMT提供的服务满足其应用的需要。
网格计算系统的体系机结构如图1。 其中: ·网格基础设施:包含网上可访问的所有资源,如运行NT或 Unix的PC机或工作站、运行Cluster操作系统的机群、存储设备、 数据库,也可能是科学仪器。 ·网格中间件(Grid Middleware):网格中间件提供核心服务, 如远程进程管理服务、资源分配服务、存储访问服务、信息服务、 安全控制服务、质量服务(QoS)。