科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道网格计算“三要素”

网格计算“三要素”

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文介绍了网格计算“三要素”。

2008年1月11日

关键字: 网格计算

  • 评论
  • 分享微博
  • 分享邮件

    ZDNetChina服务器站 1月11日网格计算  在网格计算中,首先要查清网格里所有可用资源,比如哪些主机可供访问、还空置多少处理能力、数据库里可供使用的数据是什么、共享的应用程序是否已准备好、共享主机采用何种文件系统等。用户提交的任务要由系统来分 配资源并控制其运行,包括要将其分配到哪些主机上运行、调用哪些数据、启动何种应用程序、何时开始运行等。这样,网格计算至少需要具备三种基本功能:任务管理、任务调度和资源管理。

    任务管理 用户通过该功能向网格提交任务、为任务指定所需资源、删除任务并监测任务的运行状态。

    任务调度 用户提交的任务由该功能按照任务的类型、所需资源、可用资源等情况安排运行日程和策略。

    资源管理 确定并监测网格资源状况,收集任务运行时的资源占用数据。

    根据马森大学的研究,网格计算可分为集中式任务管理系统、分布式任务管理系统、分布式操作系统、参量分析、资源监测/预测以及分布式计算接口等五类,现有的网格计算技术方案主要集中在第一、二类。属于集中式任务管理系统的有sun公司的grid engine、lsf(load sharing facility)、pbs(portable batch system)等;属于分布式任务管理系统的有globus、legion和netsolve等。集中式系统由一台计算机统一调度任务,分布式系统任务的加载和运行控制由网格中每台计算机自行完成。

    理论框架

    globus是美国argonne国家实验室的研发项目,全美有12所大学和研究机构参与了该项目。globus对资源管理、安全、信息服务及数据管理等网格计算的关键理论进行研究,开发能在各种平台上运行的网格计算工具软件(toolkit),帮助规划和组建大型的网格试验平台,开发适合大型网格系统运行的大型应用程序。toolkit是globus最重要的成果,其第一版在1999年推出,最新版本是去年推出的release 1.1.4。toolkit源码开放,任何人都可以从其网站上下载源代码。目前,globus的技术已在nasa网格(nasa ipg)、欧洲数据网格(data grid)、美国国家技术网格(ntg)等8个项目中得到应用。

    通常,网格计算着眼于大型应用项目,按照globus的观点,大型应用项目应该由许多组织协同完成,它们形成一个“虚拟组织”,各组织拥有的计算资源在虚拟组织里共享,协同完成项目。

    这里我们以对一家新建工厂进行的可行性分析为例。企业将自身的历史数据交付共享,财务顾问公司将自已的财务分析/预测系统交付共享,决策咨询公司也将自已的假设性分析系统交付共享。如此一来,参加可行性分析的各方形成了一个虚拟组织,所有资源由各方共享,大家可在全球不同的地点共同工作,最后完成任务。按照这种理念,虚拟组织需要的是一个非常富有弹性的共享关系。共享的时间、共享的权限、资源的数量都会不断发生变化。

    按globus的定义,所有用于共享的实体都是资源,计算机、存储器、数据、软件等是资源,分布式文件系统、缓冲池等也是资源。对于共享而言,有价值的不是设备本身而是实体的接口或界面。

    在globus看来,现有的共享方案,比如互联网、b2b、asp、ssp、java、corba、dce等,要么在共享配置的灵活性上、要么在共享资源种类上不能完全满足虚拟组织的需要。同时,globus并不试图取代现有技术,而是希望在现有技术之上建立更高层次的共享。

    从技术的角度看,共享是资源或实体间的互操作,比如用甲计算机的what-if分析程序调用乙计算机的数据库。globus认为,网络环境下的互操作意味着需要开发一套通用协议,用它来描述消息的格式和消息交换的规则。在协议之上,需要开发一系列服务,这与建立在tcp/ip协议上的web服务原理相同。在服务中要定义api,基于这些api再构建软件开发工具(sdk)。

    globus的体系结构

    globus的网格计算协议建立在互联网协议之上,以互联网协议中的通信、路由、名字解析等功能为基础。globus的协议分为五层:构造层、连接层、资源层、汇集层和应用层。每层都有自已的服务、api和sdk,上层协议调用下层协议的服务。网格内的全局应用都通过协议提供的服务调用操作系统。


    构造层(fabric) 它的功能是向上提供网格中可供共享的资源,它们是物理或逻辑实体。常用的资源包括处理能力、存储系统、目录、网格资源、分布式文件系统、分布式计算机池、计算机集群等。toolkit中相应组件负责侦测可用的软硬件资源的特性、当前负荷、状态等信息,并将其打包供上层协议调用。

    连接层(connectivity) 它是网格中网络事务处理通信与授权控制的核心协议。构造层提交的各种资源间的数据交换都在这一层的控制下实现。各资源间的授权验证、安全控制也在这里实现。在toolkit中,相应组件采用基于公钥的网格安全基础协议(gsi)。在此协议中提供一次登录、委托授权、局域安全方案整合、基于用户的信任关系等功能。资源间的数据交换通过传输、路由及名字解析实现。

    资源层(resource) 这一层的作用是对单个资源实施控制,与可用资源进行安全握手、对资源做初始化、监测资源运行状况、统计与付费有关的资源使用数据。在toolkit中有一系列组件用来实现资源注册、资源分配和资源监视。toolkit还在这一层定义了客户端的c、java的api和sdk。

    汇集层(collective) 这层的作用是将资源层提交的受控资源汇集在一起,供虚拟组织的应用程序共享、调用。为了对来自应用的共享进行管理和控制,汇集层提供目录服务、资源分配、日程安排、资源代理、资源监测诊断、网格启动、负荷控制、账户管理等多种功能。

    应用层(applications) 这层是网格上用户的应用程序。应用程序通过各层的api调用相应的服务,再通过服务调用网格上的资源来完成任务。应用程序的开发涉及大量库函数。为便于网格应用程序的开发,需要构建支持网格计算的库函数。

    目前,globus体系结构已为一些大型网格应用所采用。研究人员已经在天气预报、高能物理实验、航空器研究等领域已开发了一些基于globus网格计算的应用程序,较果较好。虽然这些应用虽仍属试验性质,但它至少表明,网格计算可以胜任不少用超级计算机难以胜任的大型应用任务。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章