科技行者

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

知识库

知识库 安全导航



ZDNet>服务器频道>ZD评测>网格计算前景展望

网格计算前景展望

  • 扫一扫
    分享文章到微信

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

当前发生(或未来五年内即将发生)的一系列技术变革将降低目前在计算机网格上部署、维护及运行应用程序所遇到的各种障碍。

来源: 2008年06月19日

关键字:

当前发生(或未来五年内即将发生)的一系列技术变革将降低目前在计算机网格上部署、维护及运行应用程序所遇到的各种障碍。之前的多数文章都围绕新技术所带来的性能提升和新的应用能力,或许我们应该更进一步,推导一下这些技术转变的逻辑结论,并推测它会带来哪些新的业务模式。之后,我们还应该探讨一下有意网格部署的企业所应采取的最佳战略。

网格计算不仅对于运行应用程序的科学家和工程师有意义,对于传统用户群体也一样意义非凡。未来十年,网格部署将覆盖各行各业,不再仅限于高性能计算(HPC)领域。除最终用户将得到强大功能,除此以外,整个生态系统中的每个参与者都将从网格部署的起飞中受益:用户可享受到新的强大功能,厂商可寻找新的渠道和创收来源,而企业将发现网格部署不仅可降低成本,更可带来显著竞争优势。

虽然不连续事件的预测尝试在判断实际结果时通常不太准确,但笔者认为概念验证试验的构思过程本身即非常有用。况且,读者远非单纯的旁观者,他们将发现这些观点将催生出更多想法,后者将可能对网格演进产生积极的影响。

硬件配置:节点、集群与网格

在讨论的第一部分,我们将用一个简单的三级抽象概念来描述以下网格硬件:

  • 节点 - 节点是传统意义上的计算机,任何形式的台式机、膝上型电脑或服务器:一个独立式基座、一个机架模块或一个刀片服务器,在 SMP、NUMA 或 ccNUMA1 配置中包含一枚或多枚 CPU。
  • 集群 - 相关节点的集合。
  • 网格 - 集群的集合。

集群中的节点通过某种快速互联技术彼此连接。在 InfiniBand* 和 PCI Express* 技术问世之前,用户必须在昂贵的、较高性能的专有技术和经济的、性能较低的标准技术间作出取舍。那时,低成本集群通常使用以太网(一种网络连接技术),这会对节点间协调要求较高的并行应用造成瓶颈,而采用基于 InfiniBand 的互联技术有望解决这一问题。

网格中的集群可通过局域网(LAN)技术互联,构成内部网格(intra-grid,部署于部门范围内的网格),或通过广域网(WAN)技术互联,构成全局网格(inter-grid,可覆盖全球)。

这一模型包含边缘情形(boundary case)特例,即只包含一个集群的网格:虽然只包含一个集群,但面向大型用户群体,前端与网格中间件连接。通过 Web 服务技术,高性能计算站内的用户可通过单个本地接口提交执行作业,而丝毫感觉不到此项作业是在千里之外进行的。以这种方式,IT 部门可在全球多处设施中优化其成本分配,包括外包服务提供商。

相反,一个大型集群,即使包含数千个节点,如果没有网格标志性的基础设施和流程,也不是一个网格。远程访问可能需要通过相对有限的操作系统工具(如 rlogin 或 telnet)或通过定制的 Web 接口2 完成。

单节点网格默认采用循环净化(cycle scavenging)设置。“循环净化”将在本系列文章另一篇“第二部分:使用模式”中予以介绍。

这一“节点-集群-网格”三级模型包含更复杂的递归网格:网格的网格(grids of grids),包括功能专用化网格。这种功能专用化一般在较低层面实施,原因有技术原因(例如网格由某一存储容量的节点组成)或经济因素(例如网格出于成本考虑部署在某一地理位置)。

如前面所述,网格实质上就是一组在网络上共享的计算资源。网格不同于传统分布式系统(如经典多层式系统)之处在于其资源的利用方式。在传统环境中,资源专用:一台台式机或膝上型电脑归一个人所有,一台服务器仅支持某一特定应用。在包含大量资源和服务庞大群体时,网格便大有用武之地了。

虽然网格中资源共享是一笔不小的开销,且具有相当复杂性,但其所包含的大量资源使得它对于用户非常有吸引力。而通过实施网格基础,在庞大的用户群体可以分享投资资源。如果网格是独占资源,那么同等投资水平其规模将要小许多。

在网格环境中,应用程序和运行它的主机间的绑定关系趋于模糊:长时间运行程序的执行可在多台设备上分担,可以缩短应用运行时间(即挂钟时间或实际 时间)。一般而言,支持并行运行的程序随节点的增多,其运行时间都会相应缩短,直至遇到算法或物理瓶颈或达到数量上限。

如果要利用网格计算优势,应用程序必须满足以下两个条件:

  • 应用需重新设计,以在网格环境中按需扩展
  • 系统必须支持应用所需的动态资源分配

虽然目前的多数商业应用不作较大调整就无法满足以上要求,但随着技术的进步,这一问题将得到缓解。

共享异构-以运输系统作比喻

运输系统在以共享方式为用户提供大量资源方面与网格类似。一架喷气式飞机的成本在五千万和二亿美元之间,私人飞机虽可提供美妙的跨洋飞行体验,但是其明显缺点在于飞机成本加飞行费用是多数人所无法承担的,因此无论如何都不能说是大众运输资本的有效利用。每年之所以能有上百万乘客体验飞机旅行的原因就在于飞机资源是共享的,单个乘客仅为其座位付费,而不是为整个飞机以及机场设施买单。

资源共享模式伴随有各种代价:乘客必须提前预定、安排好时间,并排队登机。实际路线对于点对点运输而言也可能不是最佳的:乘客必须经过中转机场,起飞机场和降落机场对于其旅行计划也可能有些不便,需要再转机或倒车。

请注意:用于公共运输的飞机便是为此而设计的。私人飞机在设计上要小许多,用作共享资源将不会非常高效。此外,运输系统也是异构的,共享资源呈连续群分布。

在空中运输系统,用户可在各种专用资源中进行选择,包括专用飞机、商务飞机、分时包机、通勤包机以及用于长途飞行的超大型飞机。同样,随着节点的陆续升级,整个网格在其生命周期中倾向于滑向设备可用性的不一致性。网格往往部署在多样的业务模型之下。

虽然空中运输系统是网格的绝好示例,但它在日常生活中对于我们是如此熟悉,以至于我们很少认识到这一点。3计算机系统将重演六十年前航空业的演进历程,随着技术和流程的改进,逐步趋于一个网络化、资源共享的环境。

理想状态下,计算网格中的资源应是可互换的和虚拟化的。系统中的两项资源,如果可在不影响功能的前提下互相替代,则称它们是可互换的。两张一美元钞票是可互换的,因为它们均可买到同等数量的东西,即使其中一张有破损。与此相反,在今天的多数计算机系统中,两台物理上完全相同的服务器,如果其中一台坏了,另一台却不大可能平稳替代。另一台服务器可能不在合适的位置,或坏掉的那台服务器在其某个硬盘驱动器上存有关键数据,少了这些数据计算便无法继续。

系统可在设计上实现可互换性,例如将数据与处理其的服务器分开保存。长时间计算可不时存储其数据,这样如果主机故障,新的主机便可在其上线时接替上一个检验点的计算任务。如果服务器在运行企业应用,则会解除未提交交易,由此续上。在线用户可能会感觉到有间断,但计算却不会受到任何影响。

虚拟化资源经抽象,会超出某一物理限制。举例来说,32 位程序可访问 4GB 虚拟存储空间,即使实际物理存储空间要远远小于这一容量。此外,虚拟化也可应用于整机:一台物理服务器上可以创建多台逻辑服务器。这些逻辑服务器运行各自的操作系统和应用的副本。这一点在整合设置中非常有用,合并服务器的维护成本要少于多台小型、分离式机器的维护成本。托管服务提供商可提供一个客户端,它看上去象一台独立机器,但实际上只是大型机器的一个虚拟化分区。

在对称多处理器(SMP)配置中,集群节点包含 2 枚、4 枚、或更多枚内存共享的中央处理器,看上去可能会很“繁忙”。运行于多个节点之上的程序可使用混合消息传递接口(MPI)/OpenMP* 配置。这些程序表现出较粗粒度的并行性,运行在不同节点上的主分区使用 MPI 消息传递库。在一个节点中,各分区分割为多个线程,再分配给节点内不同 CPU。构建混合配置软件会极大程度提高开发成本。

可互换性可帮助改善运营性能。可互换节点可动态(on the fly)退出,由另一节点替代。在无人值守环境,故障节点可留在机架中,直至预定维护时间再行修理。

在高度虚拟化、可互换和模块化环境中,用户可根据需求的小量变化而递增部署计算资源。与之形成鲜明对照的是二十年之前的大型机环境:因为投入的开销不菲,计算站一直等到现有大型机的资源用尽,才会考虑购买新设备,实施整体式升级。

IBM 的 System/360* 带来的主要革新便是可在一系列不同规模的设备上运行同一软件。企业可在业务增长后,购买更大的设备,这可能发生在几个月或者几年以后。与之前不得不为每款新机型重新实现应用相比,这一能力标志着巨大的进步。

今天,业务灵活性标准要高出许多。用户对网格的期望是希望分配给应用的资源可实时调整。向服务提供商的外包提供了漫长采购周期之外新的选择。因为标准化服务器的价格低于大型机,因此添加新服务器的预算影响也就要比添加或升级大型机小很多。但是,尽管从经济上都能承受,但并不是所有应用都可以轻松添加新服务器的。

递增部署能力简化了业务流程,降低了业务运行成本。它带来了新的业务模式,例如公用计算,此时服务供应与实际需求精确匹配。

纯粹的公用计算模式至今仍不实际,因为这一概念只能发展到如此地步。即使传统的公用事业也有着不同的精度和成本。举例来说,一家传统的电力公司,其每度电取决于所生成的时间和所耗资源,有着不同的成本。但多数公司会隐藏这一事实,向民用客户提供一张总账单。按需计算是公用计算的一种更可行的形式,其中相对不可互换的资源在某限制条件内动态分配。这种模式的实例之一便是按需扩容,大型服务器在售出时配有额外的 CPU,可根据客户的需求开启。一个限制便是新开启的 CPU 不能再关闭,因此操作是不可撤销的。

结论

看到网格计算提供的出色灵活性和可靠性,它们今天普及度不高的事实似乎让人奇怪。究其原因,主要因为网格需要大型生态系统,简单去商店买网格是不可行的。其推广障碍主要有两方面:技术原因和商业原因。从技术角度,多数情况中,非针对多处理器环境而开发的应用默认是单处理器应用。它们可在多处理器节点上运行,但不会使用超过一个处理器(即使有多个处理器存在),这样总运行时间便不会缩短。

从成本考虑,在组织间(包括不同的公司,甚至不同的国家)分享资源可能是有吸引力的。但如此又会带来额外的开销用作保障数据的完整性、安全性和进行资源计费。目前支持这些功能的技术仍在发展中。由于没有先例,,使得潜在用户犹豫要不要将其代码和数据交给网格这一共享资源环境中的其他人来执行。因此,至今少有网格跨越公司界限,最大的网格使用群体仍是政府部门和学术研究机构。

这一挑战对于那些可以克服它们的解决方案提供商和系统集成商而言便是直接的机遇。随着网格计算解决方案生态系统的不断壮大,更多希望享受网格计算所提供的强大能力和成本优势的私营企业将会参与进来。本文便旨在为那些潜在的解决方案提供商和网格计算的潜在用户提供必要的背景信息。

邮件订阅

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