1 引言
作者已在《网格体系结构概述》一文中详细地介绍了网格的体系结构。虽然网格计算的架构决定于网格体系结构的设计,但是不管采用何种体系结构,网格都必须具备资源管理、信息管理、数据管理、服务质量保证、安全等基本的功能模块。本文将介绍网格的资源管理和信息管理这两大基本功能模块。
2 网格的资源管理
资源是网格中的主要研究对象,网格的目的就是管理网格中的资源,并提供给用户。资源管理关注的不是资源和服务的核心功能(即资源能够为用户做什么),而是控制网格资源和服务怎样向用户、应用或服务在内的其他实体提供可用能力的一系列操作,即资源的功能执行方式,如被请求的操作何时开始执行,或者它需要多长时间完成等。与集群系统相比,网格的资源管理系统面临着不同的环境。网格在广域范围内分布于多个域,规模庞大,资源种类多且异构性更强,拥有非常多的用户,而且网格中同时拥有共享的和私有的资源。网格的这些特点导致了网格资源管理比先前的集群等系统的资源管理更为复杂。
2.1 网格资源
网格资源是指所有能够通过网格远程使用的实体,包括计算机软件、计算机硬件、设备和仪器、人类资源等。计算机软件资源包括系统软件、应用程序、数据等;计算机硬件资源包括处理器、存储器、硬盘以及其他计算机设施;设备和仪器包括通信介质、天文望远镜、显微镜、传感器等;人类资源是网格上最具有伸缩性的资源,它是指人的知识、能力等多种因素。
网格资源的种类很多,功能各异,可以从不同的角度将它们分成不同的类别。根据资源能否移动可将资源分为可移动资源和不可移动资源。可移动资源包括数据、程序、代码等,不可移动资源是无法通过网格操作实现地理位置移动的资源,如各种硬件、设备。根据资源是否可重复使用的特性可将资源分为可重复使用的资源和不可重复使用的资源。根据资源是否可复制的特性可将网格资源分为可复制资源和不可复制资源,可复制是指可以通过指令或服务请求把一份资源变为多份,如数据、应用程序、服务等。
网格中的资源具有以往集群系统、并行系统和分布式系统中的资源所不具备的特点。第一个特点是异构性,网格中的资源种类繁多,功能各异,访问接口也不尽相同,本地管理系统不同,共享规则不同。第二个特点是动态性,网格中的资源可自由地随时加入和离开网格系统,资源的可用状态、服务能力、负载等都随时间而动态变化。第三个特点是自治性,网格资源由本地管理机构管理,网格资源的使用必须遵循资源拥有者的管理策略。第四个特点是二分性,网格资源是由具体的资源拥有者提供的,除了专门提供给网格用户使用的网格资源之外,大部分资源同时作为网格用户可以使用的网格资源和资源拥有者自己使用的本地资源,网格资源的使用必须要保证资源本身的安全、资源拥有者的利益以及使用该资源的其他网格用户的合法权益。
网格资源的这些特点决定了网格资源管理系统应当隐藏异构性,为用户提供统一的访问接口;要屏蔽动态性,保证用户使用的质量;要尊重资源的本地管理机制和策略;要仔细审查网格用户的请求,确保网格资源的安全和资源拥有者的权益。
网格中的资源共享不同于以往的计算机之间的文件交换和远程登录,而是直接访问计算机、软件、数据、设备和仪器等资源。网格资源由其拥有者决定何时、何人、怎样使用。
2.2 资源管理的目的和功能
网格资源管理的任务就是把网格中分散的各种资源管理起来,使多个资源请求者可以共享使用网格中的同一个资源,资源请求者可以根据业务需要同时或先后使用网格中的多个资源,而不需要资源请求者付出额外的劳动。资源管理的目的包括以下三个:
(1)为用户提供访问资源的简单接口。资源管理模块隐藏资源实际使用的复杂技术细节,将物理资源抽象为逻辑资源,并向用户提供。
(2)协调资源的共享使用。资源管理模块采用排队策略、分时共享策略或其他策略决定多个请求者如何使用同一个资源,这些策略是根据资源本身的特性和拥有者制定的策略确定。同时资源管理模块还应支持一个请求者请求使用多个资源的需要。
(3)代替请求者去使用资源,并建立安全的网格资源使用机制。资源管理器作为超级用户,代替网格用户在资源上进行工作,用户请求时,资源管理器为该用户在资源本地建立一个进行活动的场所——用户容器,用户在容器内使用资源。容器严格定义了用户拥有的权限和可进行的操作等。通过这种方式避免了多个网格用户在资源的同一个本地账号下活动的隐患。容器可在请求时动态地建立并在请求结束后撤销,同一资源上用户容器的数目很少,不会带来大的管理负担。
资源管理模块除了管理资源的使用过程以外,更重要的是管理资源的整个生命周期,即资源的注册、共享到注销的整个过程。此时,资源管理器需要具备的基本功能包括:资源注册、资源发现、资源部署、资源代理和资源注销。
2.3 网格资源管理系统结构的形式
网格资源管理系统中,有资源请求者、资源中介者和资源提供者三个实体。资源中介者就是资源管理器,网格资源处在它的管理之下,它管理资源拥有者授权的那部分功能。资源提供者有时就是资源本身。根据资源管理过程中信息流动路径的不同,资源管理系统也有三种形式。
(1)直线型。资源请求者向资源中介者提出资源请求,资源中介者为用户寻找合适的资源并驱动资源工作,为用户提供服务。资源为用户服务的结果仍然是通过资源中介者返回给资源请求者。
(2)折线型。用户向资源中介者提出请求,资源中介者为用户找到合适的资源并把资源标识和使用资源的接口信息返回给用户。用户根据这些信息组织消息和数据,驱动资源工作,得到资源提供的服务。
(3)三角型。用户向资源中介者提出请求,资源中介者为用户寻找合适的资源并驱动资源工作,并告诉资源把服务结果用什么形式、向哪个地址返回给请求者。资源服务完成后把服务结果告诉资源请求者。
直线型结构中用户接口简单,折线型结构适合用户和资源双方需要协商的场合,而三角型则是前两种的折中,在具备两者优点的同时也具备了两者的缺点,适合接口简单又注重输出效果的场合。
2.4 Globus资源管理结构
Globus资源管理结构包括中介者、协同分配器和GRAM(Globus Resource Allocation and Management,Globus资源分配和管理)几个部分,它是应用和资源之间的桥梁。各部分之间的关系如图1所示:
图 1. Globus资源管理结构
在Globus资源管理结构中,用RSL(Resource Specification Language,资源规范语言)书写的请求作为连接各个部分的纽带。
GRAM与本地资源管理器,如图中的LSF、Condor等打交道,负责处理来自远程应用的资源请求,为请求资源的应用分配所请求的资源,并管理作业的执行过程。GRAM也负责向MDS报告资源的有关信息。GRAM主要由门卫和作业管理器两部分构成。门卫是资源上所有远程请求的一个单一入口点,负责用户认证,把远程用户映射到本地的一个安全环境中,让本地资源开始为其服务。作业管理器是门卫的一个服务,门卫启动作业管理器的一个实例之后就把作业的管理和作业执行的整个过程都交给了作业管理器。门卫则可以在简单地处理应用请求之后快速返回,继续监听消息,为用户提供快速响应。作业管理器可直接与本地资源管理系统连接,处理与作业的远程交互。
| 共3页: 1 [2] [3] 下一页 | ||
|