摘要:对分布的网格资源进行有效地组织与调度是实现网格计算的关键。基于分层的思想,提出了一种改进的网格资源组织方式,引入了资源统计信息表及负载信息表。在资源调度的过程中,通过维护并匹配相关的统计信息,能够快速地查找资源,避免了资源发现的盲目性,缩短了资源的查找时间,同时兼顾了网格系统内部的负载平衡,有效地提高了网格系统的性能。
关键词:统计信息;网格;资源管理;调度
0 引言
所谓网格,就是把整个因特网整合成一台巨大的超级计算机,实现计算资源、存储资源、数据资源、信息资源、知识资源和专家资源的全面共享。这种计算模式是利用互联网将分散在不同地理位置的计算机组织成一个“虚拟的超级计算机”,其中每一台参与计算的计算机就是一个“节点”,而整个计算机系统由成千上万个“节点”组成“一张网格”。在网格计算环境下,由于资源的异构性、动态性、自治性以及网格任务的多样性,使得资源的组织与调度成为网格计算效率的关键问题。如何有效地对网格资源进行组织与调度,本文结合网格资源调度过程中的相关统计信息,提出了一种分层资源组织方式及调度方法,有效地缩短了资源的查找时间,提高了资源的利用率,同时兼顾了网格系统的负载平衡。
1 网格资源管理及调度
网格中的资源具有广域分布、异构和动态的特性。当前还没有一种模型能够处理所有的网格应用需求。目前,网格资源管理模型主要分为分层模型、抽象所有者模型和经济/市场模型三类。其中,分层模型已被大部分的网格计算系统所采用(如Globus,Legion,CCS等),是目前主流的资源管理模型,它的基本思想是将整个资源管理系统分成若干功能层,较高层次的组件可以利用较低层次组件提供的服务实现自身的功能,有利于对具有站点自治性和底层异构性资源进行管理,并具有较强的适用性。
资源发现是网格资源调度的核心内容,它根据一个任务对资源需求的描述,通过发现机制返回一个或多个与描述相匹配的资源位置。在该过程中,资源发现机制从网格资源信息服务(Grid Resource InformationServices,GRIS)机构获得资源信息,逐次查询,找到满足任务需求的资源。网格资源信息服务可分为集中式和分布式两种机制。集中式机制查询效率高,但扩展性不足,并存在单点失效和访问瓶颈问题;分布式机制具有较高的自治性和可扩展性,节点可以随时加入网络或离开,但在资源发现时具有一定的盲目性,基于泛洪或广播的资源发现效率较低,缺乏全局性的控制协调能力。总之,从资源发现过程来看,无论是采用集中式还是分布式,在资源调度中均占有很大的开销,是影响资源调度的关键所在。
2 一种网格资源分层组织结构
基于网格环境的异构性、动态性和自治性特点,提出一种分层的资源组织方式,其结构如图1所示。
该结构主要由根服务器、域代理服务器和资源节点层三个层次组成。其中每一层可以由若干个组件来实现其功能,每个域代理服务器与其下面的节点构成一个独立的资源自治域。
根服务器主要用于管理域的划分,管理分布在网格内的各个资源自治域,负责收集各个域的资源情况以及把用户作业分配给各个自治域执行。域的划分遵循同构的原则,即把具有相同或相似属性和功能的资源划分到同一个域。其主要功能如下:集中接收用户的应用请求;监控各个自治域的当前状况;将用户作业分发给各域代理服务器;监控用户作业执行情况,接收执行结果,对于由于某种原因导致作业无法正常执行而中断的作业进行重新调度;向用户提交执行结果。
域代理服务器主要用于向根服务器报告域内资源情况和作业执行情况以及管理该资源自治域内的网格资源。其主要功能如下:接收根服务器(或上级域代理服务器)分发的用户作业,若作业不符合要求,则将作业退回给根服务器(或上级域代理服务器);进行资源匹配、定位资源并进行调度,若有下级域代理服务器,则向下级域代理服务器分发用户作业;监控用户作业执行情况,接收执行结果,并向根服务器或上级域代理服务器提交执行结果。
网格资源层是将地理上分布的、功能相对集中的、在异构平台上协同工作的资源(包含各种类型的网格资源和服务资源),根据其功能和类型,组建成不同的虚拟组织(Virtual Organization,VO),VO的建立基于资源属性分类并结合地理位置,由域代理服务器管理。每个资源节点都只受它所对应的代理服务器的管理。