基于磁盘映像概要的应用程序服务器预配置系统和方法

文档序号:7651233阅读:174来源:国知局
专利名称:基于磁盘映像概要的应用程序服务器预配置系统和方法
技术领域
本发明 一般涉及应用程序服务器的预配置(provisioning)系统和方法,具 体涉及管理和分发应用程序服务器磁盘映像及映像概要、并基于映像概要利 用磁盘映像对应用程序服务器进行预配置的系统和方法。
背景技术
近年来,客户要求面向服务的IT公司提供应用程序服务器预配置的需求 急剧增加。所谓的应用程序服务器预配置是指对应用程序服务器安装各种软 件并进行配置的操作。传统的应用程序服务器预配置方法是工程师将所有 的软件安装CD带到客户所在地,并按照客户的要求在应用程序服务器上逐一 地安装操作系统和各种应用软件并进行配置。这一传统的预配置方法的问题 在于,提供应用程序服务器预配置服务的工程师必需花费较长的时间和精力 来进行这一工作,这对日复一 日地进行这一费时费力的工作的工程师来说是 非常痛苦的。而且,传统的预配置方法烦瑣并且耗时,从而使得增加了产生 人为错误的可能。另外,由于需要不断地将应用程序更新至其新版本,因此 工程师总是需要知道如何使安装的应用程序能够一起很好地工作,而不会产 生冲突或性能降低等问题。此外,由于缺少一种快速简便的预配置方法来适 合客户动态变化的体系结构设计,因此客户或工程师对一台应用程序服务器 的独特的安装和配置的预配置经验无法在其它有着完全相同的安装配置要求 的应用程序服务器上进行重用。一种公知的用来解决这一 问题的方法是对于应用程序服务器应用预先准 备好的磁盘映像,并通过恢复磁盘来预配置应用程序服务器。IBMRDM是这 种类型的预配置工具之一。GHOST是另一种公知的磁盘映像创建和恢复工 具。但是,客户的需求是变化的,并且不同的客户要求不同的应用程序服务 器预先安装不同的应用程序。为了满足动态变化的客户,预配置服务提供者 不得不准备和维护用于各种应用程序服务器预配置的大量磁盘映像,从而消耗大量的存储器来存储这些磁盘映像。例如,以一个简单的数据中心的情形为例假设存在4种不同服务器机器类型(IBM BladeServer HS20、 X460、 XI00和BladeCenter H Chassis )、 3种不同的操作系统(WindowsXP、 Windows2000和Linux )、同 一数据库应用程序的两个不同版本(DB2 v8.0和 DB2 v7)、两个不同版本的WebSphere应用程序(WAS 6和WAS5 ),并且 DB2和WAS可以都安装在同一台服务器上,也可以仅安装其中之一。因此, 为了满足不同客户的需求,应当保存4x3x(2+2+2x2)=96种不同的应用程序 服务器安装选择。众所周知,典型的服务器磁盘的大小通常是非常大的,而 磁盘映像的大小则至少与磁盘上实际保存的数据的大小(即磁盘去掉空白部 分后的大小)一样大。因此,用于典型的服务器磁盘的磁盘映像通常也很大, 例如20G。从而,如果为这96种不同安装选择中的每一种都创建一个磁盘映 像,则这些磁盘映像总共需要耗费高达96x2(^ 1920G= 1.92T的存储空间。 并且,这仅仅是一个非常简单的实例而已,而实际情况往往会复杂得多,从 而会导致无法想像的存储器容量需求,并使得基于磁盘映像的应用程序服务 器预配置几乎无法实现。另一个主要问题是在世界范围内分发和管理如此大量的磁盘映像。当前 的国际IT公司需要在不同的地点提供预配置服务。但是将所有的磁盘映像存 储在客户本地并且保持磁盘映像的更新需要大量的管理工作。发明内容本发明提出了一种管理和分发应用程序服务器^t盘映像及映像概要、并 基于映像概要利用磁盘映像对应用程序服务器进行预配置的系统和方法。 通过该系统和方法,可以将大量的磁盘映像存储在典型的企业存储系统中; 可以在世界范围内分发磁盘映像;可以对这些磁盘映像进行快速和容易的预 配置处理。根据本发明的一个方面,提供了一种应用程序服务器的磁盘映像生成装 置及其方法。所述应用程序磁盘映像生成装置包括基本磁盘映像生成部件, 用于对服务器所使用的基本程序生成基本磁盘映像;增量磁盘映像生成部件,系的增量磁盘映像;和映像概要生成部件,用于对于基本磁盘映像和增量磁 盘映像中的每一个磁盘映像生成映像概要,该映像概要用于描述应用程序服务器预配置磁盘映像的硬件、软件及配置要求,以及该磁盘映像与其它磁盘 映像之间的继承关系。在上述磁盘映像生成装置中采用增量磁盘映像生成方式,即仅将所要生 成的磁盘映像相对于已有磁盘映像的增量部分保存为增量磁盘映像;而对于 与已有磁盘映像相同的部分则与该已有磁盘映像共享该相同部分并且仅保存 继承关系映射。由于在子映像、父映像和祖先映像之间存在许多公共的数据 块,因此那些数据块将共享相同的存储块,从而大大地降低了存储器消耗提 高了存储效率。因此,对于一个商业存储系统,我们可以创建和存储大量应 用程序服务器磁盘映像,以构建快速和按照需要的应用程序服务器预配置服 务贮藏库。根据本发明的又一个方面,提供了 一种应用程序服务器^t盘映像管理和分发系统,包括基本磁盘映像生成装置,用于对服务器所使用的基本程序 生成基本磁盘映像;增量磁盘映像生成装置,用于对以服务器所使用的基本 程序为基础的其它各应用程序生成包含继承关系的增量磁盘映像;映像概要 生成装置,用于对于基本磁盘映像和增量磁盘映像中的每一个磁盘映像生成 映像概要;映像贮藏库,用于存储所生成的磁盘映像及映像概要;和分发服 务器,用于基于从已经拥有所述基本磁盘映像的客户端接收到增加或更新磁 盘映像的请求,或者根据客户的预先设置主动从映像贮藏库向客户端分发磁 盘映像及对应的映像概要。根据本发明的再一个方面,提供了 一种利用磁盘映像对应用程序服务器 进行预配置的系统,包括基本磁盘映像管理器,用于将基本程序的基本磁 盘映像及对应的映像概要存储在客户端映像贮藏库中;增量磁盘映像管理器, 用于接收和处理来自客户的增加或更新磁盘映像的请求;客户端映像贮藏库, 用于存储磁盘映像及映像概要;分发代理,用于在增量磁盘映像管理器的控 制下,将来自客户的增加或更新磁盘映像的请求发送至磁盘映像管理和分发 系统,并接收由磁盘映像管理和分发系统提供的所请求的》兹盘映像和映像概 要;以及接收由所述磁盘映像管理和分发系统根据客户的预先设置主动发送 的磁盘映像和映像概要;和预配置部件,用于将磁盘映像恢复到客户的应用 程序服务器以进行预配置。采用上述的磁盘映像管理和分发系统以及预配置系统,就应用程序服务 器预配置服务提供者而言,大大减少了部署的时间、筒化了部署处理、减少 了工程师培训的时间,从而降低了成本;避免了人工错误、提供了全球最先进的服务版本;使得预配置处理中的经验、技巧和操作变为可以重用的财富,減少了传送解决方案的延迟。就要求预配置服务的客户而言,由于基本磁盘 映像的内容由本领域中的专家考虑确定,并通过光盘和网络传递至客户所在 地,因此客户可以在世界范围内共享专业的经验。 一旦客户得到基本^f兹盘映 像,就可以建立自己的磁盘映像贮藏库用于将来的按要求的预配置。或者客 户可以只是将其恢复到应用程序服务器,并将使得该应用程序服务器在几分 钟内可用。而如果客户需要更新的应用程序,则可以从因特网得到大小较小 的增量映像。因此,该方法可以灵活地满足客户的预配置需求。根据本发明的再一个方面,提供了一种应用程序服务器的磁盘映像生成方法,包括对服务器所使用的基本程序生成基本^t盘映像;对以服务器所 使用的基本程序为基础的其它各应用程序生成包含继承关系的增量磁盘映 像;对于基本磁盘映像和增量磁盘映像中的每一个磁盘映像生成映像概要。根据本发明的再一个方面,提供了一种从磁盘映像管理和分发中心获取 磁盘映像以进行应用程序服务器预配置的方法,包括磁盘映像管理和分发 中心对应用程序服务器所使用的基本程序生成基本磁盘映像,对以基本程序 为基础的其它应用程序生成相对于已有磁盘映像的增量磁盘映像,为每一个 磁盘映像生成用于描述该磁盘映像与其它磁盘映像之间的继承关系的映像概 要,所述映像概要还用于描述应用程序服务器预配置磁盘映像的硬件、软件 及配置要求;将生成的磁盘映像和映像概要存储在映像贮藏库中;客户端预 配置服务中心从磁盘映像管理和分发中心端获取基本磁盘映像,并将其存储 在客户端映像贮藏库中;客户端映像管理器接收客户输入的预配置应用程序 服务器需要的参数,并调用分发代理发送预配置请求至磁盘映像管理和分发 中心的分发服务器;分发服务器在映像贮藏库中查询与所接收到的参数相匹 配的映像概要,并将匹配的映像概要和对应的增量磁盘映像分发至客户端; 客户端的分发代理接收增量磁盘映像和映像概要,并存储在客户端映像贮藏 库中;客户端映像管理器根据客户的预配置要求将相应的磁盘映像恢复到客 户的应用程序服务器来进行预配置。


结合附图,从下面对实施例的描述中,本发明的这些和/或其他方面、 特征和优点将变得清楚和更加容易理解,其中图1是描述根据本发明实施例提供应用程序服务器映像预配置服务的系统。图2是根据本发明实施例的、表示各磁盘映像之间的继承关系的一个示例。图3示出了根据本发明实施例的、图1中的分发服务器的结构的方框图。 图4示出了根据本发明实施例的、图1中的分发服务器响应于客户端的请求查询磁盘映像贮藏库,并将所请求的磁盘映像发送至客户端的一个示例。 图5示出了根据本发明实施例的、在IBM San Volume Controller ( SVC )系统中实现磁盘映像生成分发以及利用磁盘映像对应用程序服务器进行预配置的示例。图6是描述根据本发明实施例,从管理和分发中心向预配置服务中心提 供磁盘映像,并对客户端应用程序服务器进行预配置的流程图。图7是详细描述根据本发明实施例在管理和分发中心中查询匹配的磁盘 映像的流程图。
具体实施方式
现在将参考本发明的示例性实施例进行详细的描述,在附图中图解说明 了所述实施例的示例,其中相同的参考数字始终指示相同的元件。下面通过 参考附图来描述示例性实施例,以解释本发明。图1是描述根据本发明实施例的、提供应用程序服务器磁盘映像并进行 预配置服务的系统。如图1所示,这一系统包括服务器端的映像管理和分发 中心以及客户端的预配置服务中心。服务器端的映像管理和分发中心可以是一个全球范围的数据中心,其生 成和维护为各种软件提供的磁盘映像,从而在接收到来自世界各地的客户的请求时,能够提供符合要求的磁盘映像。参见图1,映像管理和分发中心包含有磁盘映像生成装置100、映像贝i藏 库110、以及分发服务器120。此外,根据需要,该映像管理和分发中心还可 以包含反馈信息处理装置140。磁盘映像生成装置100用来生成对应于应用程序服务器中安装的操作系 统及各种应用软件的磁盘映像和映像概要。由于映像管理和分发中心可以是 一个全球范围的数据中心,因此应当考虑各种可能的应用程序服务器配置并 生成相应的磁盘映像,从而使世界各地的客户都可以从该数据中心得到想要的磁盘映像。容易想到,各磁盘映像之间是具有自然的继承关系的。以图2为例,首先生成IBM刀片服务器上的Windows2000的磁盘映像①。该磁盘映 像①可用于预配置Windows2000服务器。然后,基于Windows2000服务器, 可以安装DB2 v8.1,并制作DB2 v8.1磁盘映像③作为预配置DB2服务器磁 盘映像。再次,基于DB2服务器,可以安装WebSphere应用程序v5并制作 WebShpere磁盘映像④。最后,将安装Tivoli智能管弦乐作曲法和制作TIO 磁盘映像 。可见,磁盘映像①③④⑥具有自然的继承关系。磁盘映像生成装置IOO将根据各磁盘映像的继承关系、以增量方式建立 磁盘映像。首先,生成基本磁盘映像并存储在映像贮藏库110中;当生成其 它具有继承关系的磁盘映像时,将要生成的磁盘映像与已在映像贮藏库110 中存储的磁盘映像进行比较,并且仅将相对于已有磁盘映像的差异部分存储 为增量磁盘映像,其它相同部分则不再进行重复的存储而是与已有磁盘映像 共享这一相同的部分,并生成用来指示这一继承关系的映像概要。基本磁盘 映像可以有一个或多个。默认以常见服务器操作系统作为基本磁盘映像内容, 可以由工程师根据专业知识和经验对这些基本磁盘映像进行修改,选择最常 用到的、最有可能符合配置要求的应用程序的组合作为基本磁盘映像的内容, 从而使得基本磁盘映像适合于大多数应用程序服务器的预配置需求并具有有 限的大小。由于基本磁盘映像在较长时间内不会变化,具有普适性,并且具 有有限的大小,所以在本发明中将基本磁盘映像保存在CD/DVD等光盘上。 这样,工程师只需要携带有限数量的几张光盘到客户所在地,就可以很容易 地完成多数用户的基本预配置要求。或者,如果客户已经预先购买了上述基 本磁盘映像的光盘,则客户自己也可以通过将光盘中的内容恢复到应用程序 服务器来完成基本的预配置。另外,^t盘映像生成装置100还为每个^f兹盘映像提供一个使用XML (可 扩展标记语言)或其他数据描述语言,例如SGML, HTML,或自定义的一套数 据描述语言来描述该磁盘映像的内在属性信息的映像概要。映像概要可以描 述其对应的磁盘映像与其它磁盘映像之间的继承关系。并且,映像概要还描 述预配置磁盘映像的要求,其包括应用程序服务器的硬件、软件和配置要求。 根据映像概要中描述的继承关系,磁盘映像生成装置IOO可以生成磁盘映像 的树形拓朴。另外,在生成和存储映像概要之后,映像管理和分发系统支持 客户通过SQL语言或特定的查询语言来查询映像概要,并快速地得到链接至该概要的磁盘映像(可以通过设置指针等方式在映像概要和磁盘映像之间建 立——对应关系,从而快速得到对应的磁盘映像),并通过分发服务器或以客 户希望的其它方式分发给客户(下文中将对这一查询和分发过程进行详细的 说明)。由磁盘映像生成装置100生成的磁盘映像和映像概要可以以各种公知的 方式存储在映像贮藏库110中。例如,树形结构、顺序存储、内容寻址存储 (Content addressed storage , CAS )。在本说明书中将以树形结构存储为例进行说明。所述磁盘映像生成装置100的一个示例性结构为由基本磁盘映像生成部 件、增量磁盘映像生成部件以及映像概要生成部件组成。基本磁盘映像生成部件用于为客户端的应用程序服务器所使用的基本程 序(例如,操作系统和基本的应用程序等)生成基本磁盘映像,其适合于大 多数客户的应用程序服务器预配置需求。增量磁盘映像生成部件用于对与服务器所使用的基本程序有自然的继承 关系的其它各应用程序生成磁盘映像。增量磁盘映像生成部件仅将所要生成 的磁盘映像相对于已有磁盘映像的差异部分保存为增量磁盘映像,而其它相 同部分则不再进行重复的存储而是与已有磁盘映像共享这一相同的部分,并 生成用来指示这一继承关系的映像概要。映像概要生成部件为基本磁盘映像和增量磁盘映像中的每一个提供一个 使用XML或其他数据描述语言,例如SGML, HTML,或自定义的一套数据描 述语言来描述该磁盘映像的内在属性信息的映像概要。映像概要描述其对应 的磁盘映像与其它磁盘映像之间的继承关系。映像概要还描述预配置磁盘映 像的要求,其包括应用程序服务器的硬件、软件和配置要求。容易想到,磁盘映像生成装置100还可以采用其它各种结构。例如,在 上面的示例中,基本磁盘映像和增量磁盘映像是通过彼此分离的两个部件生 成的,但是可替换的,也可以通过同一个部件来生成基本磁盘映^f象和增量磁 盘映像。分发服务器120接收来自客户端预配置服务中心的、增加或更新磁盘映 像的请求,并经由网络将所请求的磁盘映像发送至客户端(当然,也可以将 所请求的磁盘映像存储在光盘或移动硬盘上提供给客户端)。下面将参照图3 对分发服务器120进行详细的描述。如图3所示,分发服务器120由接收装置121、查询装置122和分发装置123组成。接收装置121接收来自客户端 的磁盘映像增加或更新请求。该请求以XML或其他数据描述语言,例如SGML, HTML,或自定义的一套数据描述语言描述了应用程序服务器预配置的硬件、 软件和配置要求。查询装置122将接收的预配置要求作为查询条件,通过例 如SQL语言等公知查询语言在映像贮藏库中查询与输入的预配置要求相匹配 的映像概要。如果找到与查询条件完全匹配的映像概要,则将该映像概要和 对应的磁盘映像传递至分发装置123。如果没有完全匹配的映像,而是仅找 到了近似匹配的概要,则客户可决定是使用该近似匹配的概要并在预配置之 后进行某些修改,还是请求映像管理和分发中心新生成完全匹配的磁盘映像 和映像概要后再提供给客户端。在前者中,查询装置122直接将查找到的近 似匹配的映像概要和对应的磁盘映像传递至分发装置123。在后者中,磁盘 映像生成装置100根据已有的映像概要和磁盘映像创建新的映像概要和新的 映像。新的概要和映像被传递至分发装置123,同时还将被存储到映像贮藏 库中。分发装置123将传递至其中的磁盘映像和概要经由因特网发送至客户 端。可替换地,可以将查询得到的磁盘映像和映像概要复制到诸如光盘的存 储介质上并提供至客户端,而不是经由网络来发送。对于完全匹配的磁盘映像,只需将其恢复到客户的应用程序服务器即可, 工程师或客户不需再对该服务器进行任何人工的修改和调整。同理,对于近 似匹配的映像,近似匹配程度越高,在利用磁盘映像对服务器进行了预配置 之后,工程师或客户所需进行的人工修改和调整就越少;反之,近似匹配程 度越低,在利用磁盘映像进行了预配置之后,所需进行的人工修改和调整就 越多。在近似匹配程度过低时,由于在利用所找到的磁盘映像对服务器进行 了预配置之后,工程师还需对服务器进行大量的人工修改,因而此时往往就 不再利用已有的磁盘映像来对应用程序服务器进行预配置了 ,而是由工程师 根据客户的要求按照传统的方式对应用程序服务器进行预配置。能会希望将这一预配置或改变看作是客户站点的经验而反馈至映像管理和分 发中心,以在其中添加新的映像和映像概要。这一功能可以通过分发中心的 反馈信息处理装置140来实现。所述反馈信息处理装置140在接收到从客户 端反馈的对服务器预配置的修改时,通过磁盘映像生成装置IOO来生成与所 述修改相对应的新映像概要和磁盘映像,并存储在映像贮藏库110中,从而 使得它们可以在将来的预配置中使用。图4中给出了上述分发服务器120响应于客户端的请求、查询磁盘映像 贮藏库,并将所请求的磁盘映像发送至客户端的一个示例。如图4中所示, 例如在映像管理和分发中心的映像贮藏库110中存储有磁盘映像XXX, YYY 和ZZZ,其中磁盘映像XXX用于配置X-系列平台上、基于WebSphere的Tivoli 应用程序服务器,磁盘映像YYY用于配置P-系列平台上、基于WebSphere 的DB2应用程序服务器,磁盘映像ZZZ用于配置Z-系列平台上、基于WPS 的DB2应用程序服务器。另外,映像贮藏库110中还存储有分别与上述磁盘 映像对应的映像概要XXX, YYY和ZZZ,它们通过XML语言描述对应的磁 盘映像的内在属性信息,诸如预配置磁盘映像的要求(包括应用程序服务器 的硬件、软件和配置要求),以及各磁盘映像与其它磁盘映像之间的继承关系 等。如图4中的"获得应用程序服务器请求"中所示,假设客户输入的应用 程序服务器预配置的硬件要求是P-系列4000、存储器4GB,软件要求是基 于WebShpere 6.0的DB2 8.1,配置要求是吞吐量2000业务处理/秒、¥/TPC: 450。在接收到客户的请求之后,分发服务器120的查询装置122通过SQL 语言在映像贮藏库110中查询与客户请求相匹配的磁盘映像概要。如果找到 与作为查询条件的客户请求完全匹配的映像概要,则将该映像概要和对应的 磁盘映像传递至分发装置123。如果没有完全匹配的映像,而是仅找到了近 似匹配的概要(如在图4的示例中仅仅找到了近似匹配的映像概要YYY ), 则根据客户的要求进行下述任一处理(l)将查找到的近似匹配的映像概要 YYY和对应的》兹盘映像YYY传递至分发装置123; (2)创建完全匹配的新映 像概要X和新的映像X并传递至分发装置123,同时还将新创建的映像概要 X和磁盘映像X存储到映像贮藏库中以便在将来的预配置中使用。分发装置 123将传递至其中的磁盘映像和映像概要发送至客户端。上文中对分发服务器120响应于来自客户端的请求、将所请求的磁盘映 像发送至客户端进行了描述。但是,分发服务器并不仅限于被动地接收请求 来发送磁盘映像,而是也可以根据用户的预先设置主动地将磁盘映像和映像 概要发送更新至客户端。例如,分发服务器可以每隔预先设定的时间间隔就 进行一次发送更新,或者每当映像贮藏库110中新增的磁盘映像达到了预定 数量就进行一次发送更新,等等。客户端的预配置服务中心位于客户本地,其通过把从映像管理和分发中 心获得的磁盘映像恢复到客户的应用程序服务器来对该服务器进行预配置。如图1所示,预配置服务中心包含有客户端映像管理器150、客户端映像贮藏库160和分发代理170。客户端映像管理器150提供对于客户端映像贮藏库160和分发代理170 的一些管理功能。当客户得到由映像管理和分发中心提供的基本映像时,客 户端映像管理器150可以将该基本映像复制到客户端映像贮藏库160并存储 在其中。基本磁盘映像以树形结构在客户端映像贮藏库160中进行存储(其 也可以以顺序存储、压缩存储的其它方式进行存储),形成作为在映像管理和 分发中心的映像贮藏库110中的原始树的一部分的映像关系树。如果客户端 映像贮藏库160中的磁盘映像正在更新或者客户需要更多的磁盘映像,则该 客户端映像管理器150调用分发代理170来发送请求并管理下载的增量映像 以扩展映像关系树。该请求以XML或其他数据描述语言,例如SGML, HTML, 或自定义的一套数据描述语言描述了应用程序服务器预配置的硬件、软件和 配置要求。分发代理170接收请求的增量磁盘映像和映像概要,并存储在客 户端映像贮藏库中。在获得了所需要的增量磁盘映像之后,客户端映像管理 器150根据客户的预配置要求,将接收到的增量映像和所存储的其它磁盘映 像结合成一个整体的磁盘映像,并通过将这个整体的磁盘映像恢复(复制) 到应用程序服务器来进行预配置。另外,客户端映像管理器150还根据接收 到的增量映像扩展客户端映像贮藏库中的树形拓朴结构。可选的,客户端映像管理器150在调用分发代理170来发送请求之前, 可以先在客户端映像贮藏库中查找是否具有匹配的映像概要和-兹盘映像(这 一查询操作与管理和分发中心的分发服务器120进行的查询操作类似,在此 不再赘述),并将查找到的磁盘映像直接恢复到应用程序服务器以进行预配 置。在一个示例性实施例中,客户端映像管理器150可以具有以下结构基 本磁盘映像管理器,用于将由映像管理和分发中心提供的基本映像存储到客 户端映像贮藏库160;增量磁盘映像管理器,用于接收和管理来自客户的增 加或更新磁盘映像的请求,调用分发代理170将该请求发送至映像管理和分 发中心,以及根据接收到的增量映像扩展客户端映像贮藏库中的树形拓朴结 构;和预配置部件,用于在增量磁盘映像管理器的控制下将磁盘映像恢复到 客户的应用程序服务器以进行预配置。以上仅仅是客户端映像管理器150的 示例性结构,其还可以采用其它各种结构或以软件、固件等方式来实现所述功能。们希望可以在将来的预配置中使用。为此,预配置服务中心还可以包含与映 像管理和分发中心的磁盘映像生成装置100类似的客户端生成装置,用于创 建新应用程序映像的增量磁盘映像和映像概要,并将其存储在客户端映像贮 藏库。这样,预配置服务中心与映像管理和分发中心一样地存储和维持本地 的映像贮存库,所不同的是贮藏库的大小。图5示出了根据本发明实施例的、在IBM San Volume Controller ( SVC )系统中实现磁盘映像生成分发以及利用磁盘映像对应用程序服务器进行预配 置的示例。如图5所示,在磁盘映像的继承关系表现层,在服务器侧,生成和维护 为各种软件提供的磁盘映像,并以树形拓朴结构存储各磁盘映像;在客户端, 则通过客户端映像管理器来存储和维持本地的映像贮存库。这里,我们引入 控制台作为访问服务器侧的映像管理和分发中心的客户接口。其将与SVC控 制台合作来处理客户命令,以便创建新的磁盘映像来扩展树形拓朴结构。在虚拟磁盘层,使用增量快速复制(flashc叩y)来创建虚拟磁盘以保持每 个磁盘映像。快速复制是当前IBMSVC产品中的一个特征。快速复制进行一 组源虚拟磁盘向一组目标虚拟磁盘的复制。在复制操作发生之后,目标虚拟 磁盘的原始内容丟失,并具有源虚拟^i盘在某个时间点时具有的内容。也就 是说,尽管复制操作事实上花费有限的时间,但是目标处的结果数据显示为 好像复制是瞬间完成的。快速复制有时被描述为时域复制(TO)或时间点复 制技术的实例。尽管快速复制操作花费一定的时间,但是这一时间比利用传 统技术复制数据所需要的时间要少好几个数量级。增量快速复制意味着仅源 虚拟磁盘和目标虛拟磁盘之间的不同数据块需要被分配新的存储块以用于存 储。那些共同的数据块将在SVC管理的磁盘中共享。利用增量快速复制,两 个虚拟磁盘可以共享许多共同的数据块。在虛拟存储器映射层,进行虚拟磁盘向管理的存储器磁盘的转换,其将 虚拟磁盘中的数据块与管理的磁盘中的低层存储块进行映射。图6是描述从管理和分发中心向预配置服务中心提供^F兹盘映像,并对客 户端应用程序服务器进行预配置的流程图。下面,将结合图6描述这一处理 过程。首先,在步骤SIO,磁盘映像生成装置100生成用于应用程序服务器预 配置的基本磁盘映像、增量磁盘映像和相应的映像积无要并存储在映像贮藏库 中。下面通过一个例子来描述这一生成处理的具体实现。假_没管理和分发中心已经生成了 IBM刀片服务器上的Windows 2000的磁盘映像,需要对基于 IBM刀片服务器的Windows 2000上的DB2 8.1服务器创建磁盘映像。系统将 通过触发SVC初始化增量快速复制,以对于保持Windows2000 ;兹盘映像的 虚拟》兹盘制作一个新的快速复制的虚拟磁盘。手工地,工程师在Windows 2000 服务器上安装DB2 8丄在安装期间,虚拟^t盘上的一些数据块将被修改,虚 拟存储器映射层将生成新的存储块用于这些数据。对于没有修改的数据块, 虚拟磁盘将使用其所继承的虛拟磁盘的存储块作为共享的数据块。在DB2 8.1 安装之后,系统将改变映像贮藏库中的树形拓朴结构以增加新的节点来表示 刚刚生成的磁盘映像。接着,在步骤S20,客户端从管理和分发中心获取基本磁盘映像。该基 本磁盘映像可以通过网络或光盘等便携式存储设备在全世界范围分发。此外, 还将映像概要与基本磁盘映像一起进行分发。在步骤S30,客户端预配置服 务中心得到这一基本映像磁盘后将其存储在客户端映像贮藏库。预配置服务 中心可以筒单地使用这一磁盘映像进行预配置;也可以通过客户端映像管理 器、根据映像概要来恢复该树形拓朴,并以该树形拓朴为基础构建它们自己 的映像磁盘树。顺便说一下,用户可以直接在预配置服务中心上查看磁盘映 像概要数据,以了解对应的磁盘映像的内容。在步骤S40,当客户需要例如Window 2000上的DB2 8.1的新应用程序 磁盘映像时,客户端映像管理器150接收客户输入的预配置应用程序服务器 需要的参数,诸如机器类型、OS类型和需要的应用程序(这里,需要是IBM 刀片服务器,Windows2000和DB2 8.1 )。在步骤S50,客户端映像管理器150 调用分发代理170发送请求至分发服务器120。在步骤S60,分发服务器120 得到该请求后在映像贮藏库中查询所请求的磁盘映像,并将匹配的增量磁盘 映像和映像概要发送至客户端。客户端请求和分发服务器分发的映像数据都 可以经由因特网来传输,以加速客户端的更新。在步骤S70,分发代理170接收增量磁盘映像和映像概要,并存储在客 户端映像贮藏库中。在步骤S80,客户端映像管理器150根据客户的预配置 要求,将接收到的增量映像和所存储的其它磁盘映像结合成一个整体的磁盘映像,并通过将这个整体的磁盘映像恢复(复制)到应用程序服务器来进行 预配置。另外,客户端映像管理器150还根据接收到的增量映像扩展客户端 映像贮藏库中的树形拓朴结构。可选的,客户端映像管理器150在调用分发代理170来发送请求之前, 可以先在客户端映像贮藏库中查找是否具有匹配的映像概要和磁盘映像(这 一个查询操作与分发服务器120在S60中进行的查询操作类似,在此不再赘 述),并将查找到的增量磁盘映像直接恢复到应用程序服务器以进行预配置。 在几分种内,通过创建保持该增量磁盘映像的虚拟磁盘并与应用程序服务器 映射,实现DB2应用程序服务器预配置。若在客户端映像贮藏库未查找到需 要的磁盘映像,则客户端映像管理器150调用分发代理170从管理和分发中 心获取这一,兹盘映像。图7中详细描述了在图6的步骤S60中进行的查询操作。下面将参照图 7具体说明该查询操作。在步骤S61,接收装置121接收来自客户端的磁盘映 像增加或更新请求。该请求以XML或其他数据描述语言,例如SGML, HTML, 或自定义的一套数据描述语言描述了应用程序服务器预配置的硬件、软件和 配置要求。接着,在步骤S62,查询装置122将接收的预配置要求作为查询 条件,通过例如SQL语言等公知查询语言在映像贮藏库中查询与输入的预配 置要求相匹配的映像概要。查询装置122在步骤S63中判断是否找到完全匹 配的映像概要。如果找到与查询条件完全匹配的映像概要,则在步骤S64中 将该映像概要和对应的磁盘映像传递至分发装置123。如果没有完全匹配的 映像,而是仅找到了近似匹配的概要,则该方法转到步骤S65。在步骤S65 中,查询装置122确定客户是否接受该近似匹配的磁盘映像。当客户接受该 近似匹配的磁盘映像时,该方法转到步骤S66,直接将查找到的近似匹配的 映像概要和对应的磁盘映像传递至分发装置123;若客户不接受,则该方法 转到步骤S67,调用磁盘映像生成装置100根据近似匹配的映像概要和磁盘 映像创建与客户的请求完全匹配的新的映像概要和磁盘映像。随后,在步骤 S68中,所述新的概要和磁盘映像被传递至分发装置123,同时还将被存储到 映像贮藏库中。在步骤S69中,分发装置123将传递至其中的磁盘映像和概 要经由因特网发送至客户端。可替换地,可以将查询得到的磁盘映像和映像 概要复制到诸如光盘的存储介质上并提供至客户端,而不是经由网络来发送。根据本发明实施例的方法可以具体化成计算机可读代码/指令/程序,和可以在利用例如计算机可读记录介质执行代码/指令/程序的通用数字计算机中实现。计算机可读记录介质的例子包括》兹存储介质(例如,ROM(只读存储 器)、软件、硬盘等)、光记录介质(例如,CD-ROM (只读光盘存储器)、或 DVD(数字多功能盘)、和像载波(例如,通过因特网传输)那样的存储介质。 并且,根据本发明实施例的方法可以具体化成包括计算机可读代码的介质, 因此,计算机可读记录介质分布在网络耦合计算机系统上和被分布式执行。 此外,熟悉本发明相关技术的编程人员可以容易地构造出执行根据本发明实 施例的方法的功能程序、代码和代码片段。尽管已经示出和描述了本发明的一些示例性实施例,本领域的技术人员 应当理解,在不背离权利要求及它们的等价物中限定的本发明的原则和精神 的情况下,可以对这些示例性实施例做出变化。
权利要求
1. 一种应用程序服务器的磁盘映像生成装置,包括基本磁盘映像生成部件,用于对服务器所使用的基本程序生成基本磁盘映像;增量磁盘映像生成部件,用于对以服务器所使用的基本程序为基础的其它各应用程序生成包含继承关系的增量磁盘映像;以及映像概要生成部件,用于对于基本磁盘映像和增量磁盘映像中的每一个磁盘映像生成映像概要。
2. 如权利要求1所述的磁盘映像生成装置,其中所述映像概要用于描述 应用程序服务器预配置磁盘映像的硬件、软件及配置要求,以及对应的磁盘 映像与其它磁盘映像之间的继承关系。
3. 如权利要求1或2所述的磁盘映像生成装置,其中所述增量磁盘映像 生成部件仅将所要生成的磁盘映像相对于已有磁盘映像的差异部分保存为增 量磁盘映像,而对于与已有磁盘映像相同的部分则与该已有磁盘映像共享该 相同部分并保存用于描述继承关系的映像概要。
4. 如权利要求1-3中任一项所述的磁盘映像生成装置,其中基本磁盘 映像生成部件和增量磁盘映像生成部件通过增量快速复制方式来创建虚拟磁 盘,以保存每个磁盘映像。
5. 如权利要求1 - 4中任一项所述的磁盘映像生成装置,其中所述映像 概要采用XML、 SGML、 HTML或自定义的数据描述语言进行描述。
6. —种应用程序服务器磁盘映像管理和分发系统,包括 基本磁盘映像生成装置,用于对服务器所使用的基本程序生成基本磁盘映像;增量磁盘映像生成装置,用于对以服务器所使用的基本程序为基础的其 它各应用程序生成包含继承关系的增量磁盘映像;映像概要生成装置,用于对于基本磁盘映像和增量磁盘映像中的每一个 磁盘映像生成映像概要;映像贮藏库,用于存储所生成的磁盘映像及映像概要;和分发服务器,用于基于从已经拥有所述基本磁盘映像的客户端接收到增 加或更新磁盘映像的请求或者根据客户的预先设置主动从映像贮藏库向客户 端分发磁盘映像及对应的映像概要。
7. 如权利要求6所述的映像管理和分发系统,其中所述映像概要用于描 述应用程序服务器预配置磁盘映像的硬件、软件及配置要求,以及对应的磁 盘映像与其它^f兹盘映像之间的继承关系。
8. 如权利要求6或7所述的映像管理和分发系统,其中所述增量磁盘映 像生成装置仅将所要生成的磁盘映像相对于已有磁盘映像的差异部分保存为 增量磁盘映像,而对于与已有磁盘映像相同的部分则与该已有磁盘映像共享 该相同部分并保存用于描述继承关系的映像概要。
9. 如权利要求6-8中任一项所述的映像管理和分发系统,其中所述分 发服务器还包括接收装置,用于接收客户端发送的磁盘映像增加或更新请求; 查询装置,用于在映像贮藏库中查询与所请求的磁盘映像的映像概要相 匹配的映#^既要;分发装置,将所述查询装置输出的映像概要及对应的磁盘映像经由因特 网分发至客户端。
10. 如权利要求9所述的映像管理和分发系统,其中所述查询装置若查 找到完全匹配的映像概要,则将对应的磁盘映像及该映像概要直接发送到分 发装置;若未查找到完全匹配的映像概要,则按照客户端的要求进行下述任 一处理将近似匹配的映像概要及其对应的磁盘映像发送到分发装置;或 基于与近似匹配的映像概要对应的磁盘映像、通过增量^f兹盘映像生成装 置和映像概要生成装置来生成与客户端的请求完全匹配的映像概要和磁盘映 像,并将新生成的磁盘映像及其映像概要传送到分发装置。
11. 如权利要求6-10中任一项所述的映像管理和分发系统,其中基本 磁盘映像生成部件和增量磁盘映像生成部件通过增量快速复制方式来创建虛 拟磁盘,以保存每个^兹盘映像。
12. 如权利要求6-11中任一项所述的映像管理和分发系统,其中所述 映像概要采用XML、 SGML、 HTML或自定义的数据描述语言进行描述。
13. 如权利要求6-12中任一项所述的映像管理和分发系统,还包括反 馈信息处理装置,用于在接收到从客户端反馈的对服务器预配置的修改信息 时、通过映像概要生成装置和增量磁盘映像生成装置来生成与所述修改相对 应的映像概要和磁盘映像,并存储在映像贮藏库中。
14. 一种利用磁盘映像对应用程序服务器进行预配置的系统,包括基本磁盘映像管理器,用于将基本程序的基本磁盘映像及对应的映像概要存储在客户端映像贮藏库中;增量磁盘映像管理器,用于接收和处理来自客户的增加或更新磁盘映像的请求;客户端映像贮藏库,用于存储^磁盘映像及映像概要;分发代理,用于在增量磁盘映像管理器的控制下,将来自客户的增加或 更新磁盘映像的请求发送至磁盘映像管理和分发系统,并接收由磁盘映像管 理和分发系统提供的所请求的磁盘映像和映像概要;以及接收由所述磁盘映 像管理和分发系统根据客户的预先设置主动发送的磁盘映像和映像概要;和预配置部件,用于将磁盘映像恢复到客户的应用程序服务器以进行预配置。
15. 如权利要求14所述的预配置系统,其中所述预配置部件根据客户的 预配置要求,将接收到的磁盘映像以及在客户端映像贮藏库中已存储的其它 磁盘映像结合成一个整体的磁盘映像,并通过将该整体磁盘映像复制到客户 的应用程序服务器来进行预配置。
16. —种应用程序服务器的磁盘映像生成方法,包括 对服务器所使用的基本程序生成基本磁盘映像;对以服务器所使用的基本程序为基础的其它各应用程序生成包含继承关 系的增量磁盘映像;对于基本磁盘映像和增量磁盘映像中的每一个磁盘映像生成映像概要。
17. 如权利要求16所述的磁盘映像生成方法,其中所述映像概要用于描 述应用程序服务器预配置磁盘映像的硬件、软件及配置要求,以及对应的磁 盘映像与其它^t盘映像之间的继承关系。
18. 如权利要求16或17所述的磁盘映像生成方法,其中在生成以服务 器所使用的基本程序为基础的其它各应用程序的增量磁盘映像时,仅将所要 生成的磁盘映像相对于已有磁盘映像的差异部分保存为增量磁盘映像,而对 于与已有磁盘映像相同的部分则与该已有磁盘映像共享该相同部分并保存用 于描述这一继承关系的映像概要。
19. 如权利要求16-18中任一项所述的磁盘映像生成方法,其中通过增 量快速复制方式来创建虚拟磁盘,以保存每个磁盘映像。
20. 如权利要求18所述的磁盘映像生成方法,其中所述映像概要采用 XML、 SGML、 HTML或自定义的数据描述语言进行描述。
全文摘要
本发明提供了一种应用程序服务器的磁盘映像生成装置和方法。所述磁盘映像生成装置包括基本磁盘映像生成部件,用于对服务器所使用的基本程序生成基本磁盘映像;增量磁盘映像生成部件,用于对以服务器所使用的基本程序为基础的其它各应用程序生成包含继承关系的增量磁盘映像;和映像概要生成部件,用于对于基本磁盘映像和增量磁盘映像中的每一个磁盘映像生成映像概要。通过使用该装置可以大大降低存储器消耗,提高存储效率。本发明还公开了应用所述应用程序服务器的磁盘映像生成装置的应用程序服务器磁盘映像管理和分发系统,以及利用磁盘映像对应用程序服务器进行预配置的系统。
文档编号H04L29/06GK101271425SQ20071009183
公开日2008年9月24日 申请日期2007年3月23日 优先权日2007年3月23日
发明者刘培妮, 哲 向, 伟 李, 浩 王, 剑 黄 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1