CN101425017A - 用于为服务器组件安装更新软件的方法和系统 - Google Patents
用于为服务器组件安装更新软件的方法和系统 Download PDFInfo
- Publication number
- CN101425017A CN101425017A CNA2008101697898A CN200810169789A CN101425017A CN 101425017 A CN101425017 A CN 101425017A CN A2008101697898 A CNA2008101697898 A CN A2008101697898A CN 200810169789 A CN200810169789 A CN 200810169789A CN 101425017 A CN101425017 A CN 101425017A
- Authority
- CN
- China
- Prior art keywords
- target device
- destination server
- server
- guiding
- update
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
查询目标服务器以建立安装于目标服务器内的组件的清单。目标服务器具有用于在生产环境内利用该目标服务器的引导过程。基于建立的清单从更新服务器为各组件接收更新软件。配置引导过程,使得目标服务器在下次引导时而不是在生产环境内利用时为各组件安装更新软件。实现目标服务器引导,使得它为各组件安装更新软件。在目标服务器完成了为各组件安装更新软件时,重新配置引导过程,使得在目标服务器下次引导时在生产环境内再次利用该目标服务器。再次实现目标服务器引导,使得在生产环境内再次利用该目标服务器。
Description
技术领域
本发明主要地涉及其中安装多个组件如硬件和/或软件组件的服务器,并且具体地涉及为服务器的这些组件安装更新软件。
背景技术
服务器组的生产环境是其中服务器针对预定用途主动地执行功能的环境。例如,可能在生产环境中已经部署服务器以执行与数据库、网主控、数据存储和/或其他类型的预定用途有关的功能。服务器的生产环境与如下测试或者实验室环境形成对照,在该测试或者实验室环境中测试或者开发服务器以保证它将在生产环境内发布时恰当地工作。例如,服务器可以用于部署于生产环境中以执行与数据库有关的功能、但是目前在实验室环境内受到测试以验证服务器将在这样部署时恰当地工作。
然而,即使曾经在生产环境内已经部署服务器,它们可能也不得不更新。服务器可以具有多个不同硬件和/或软件组件。为这些组件定期地发布更新软件,使得为了保证服务器最优化地工作,服务器应当为它的组件安装更新软件。然而,对于即使没有数以百计或者更多也可能有数以十计的服务器的大型生产环境,为所有这些服务器的所有可能不同组件安装更新软件,这可能费力、耗时并且可能存在困难。
一般而言,网络管理员或者其他用户不得不单独地获取各脱机服务器、确定服务器内安装的组件、为这样的各组件确定更新软件的位置、人工地启动对这一更新软件的安装、验证安装执行正确、然后使服务器联机回到生产环境中。以不同方式安装和配置不同更新软件,这增添了这一过程的难度。由于这一更新过程令人厌烦、耗时并且可能存在困难,所以服务器可能最终没有如希望或者需要的那样频繁更新。出于这些和其他原因,因此需要本发明。
发明内容
本发明涉及为服务器组件安装更新软件。本发明一个实施例的一种方法查询目标服务器以建立安装于目标服务器内的组件的清单。目标服务器具有用于在生产环境内利用该目标服务器的引导过程。该方法基于建立的清单从更新服务器接收各组件的更新软件。该方法配置引导过程,使得目标服务器在下次引导时而不是在生产环境内利用时为各组件安装更新软件。该方法实现目标服务器引导,使得它为各组件安装更新软件。在目标服务器完成了为各组件安装更新软件时,该方法重新配置引导过程,使得在目标服务器下次引导时在生产环境内再次利用它。该方法再次实现目标服务器引导,使得在生产环境内再次利用它。
本发明一个实施例的一种计算机可读介质具有存储于其上用以执行方法的一个或者多个计算机程序。该计算机可读介质可以是可记录数据存储介质或者另一类计算机可读介质。查询目标服务器以建立安装于目标服务器内的多个组件的清单。目标服务器具有从中引导目标服务器以用于产品环境内的原有逻辑存储体。基于建立的清单从更新服务器接收安装于目标服务器内的各组件的更新软件。
在目标服务器可存取的一个或者多个存储设备上准备逻辑存储体,并且用安装于目标服务器内的各组件的更新软件填充该逻辑存储体。将目标服务器的逻辑引导存储体指定为逻辑存储体。实现目标服务器引导,使得目标服务器从逻辑存储体引导并且为安装于目标服务器内的各组件安装更新软件。在目标服务器完成了为各组件安装更新软件时,再次将目标服务器的逻辑引导存储体指定为原有逻辑存储体。然后实现目标服务器引导,使得目标服务器从原有存储体引导,并且再次用于生产环境内。
本发明另一实施例的一种计算机可读介质也具有存储于其上用以执行方法的一个或者多个计算机程序。该计算机可读介质也可以是可记录数据存储介质或者另一类计算机可读介质。查询目标服务器以建立安装于目标服务器内的多个组件的清单。目标服务器具有用于引导目标服务器以用于在产品环境内利用的原有引导配置。基于建立的清单从更新服务器接收安装于目标服务器内的各组件的更新软件。
准备用以包括安装于目标服务器内的各组件的更新软件的网络引导程序,并且在预引导执行环境内可存取的逻辑文件夹内存储该网络引导程序。将目标服务器的引导配置指定为包括预引导执行环境,使得目标服务器在下次引导时执行网络引导程序。实现目标服务器引导,使得目标服务器经由预引导执行环境来引导并且为安装于目标服务器内的各组件安装更新软件。在目标服务器完成了为各组件安装更新软件时,再次将目标服务器的引导配置指定为原有引导配置。然后实现目标服务器引导,使得目标服务器经由原有引导配置来引导并且再次用于在生产环境内利用。
本发明一个实施例的一种系统包括一个或者多个网络以及以连通方式连接到网络的更新服务器、目标服务器和更新控制器。更新服务器具有不同服务器组件的更新软件。目标服务器具有待更新的安装于目标服务器内的多个组件。这些组件选自于不同服务器组件。目标服务器具有用于在生产环境内利用目标服务器的引导过程。
更新控制器适于执行以下操作。控制器查询目标服务器以建立安装于目标服务器内的组件的清单。控制器基于建立的清单从更新服务器接收各组件的更新软件。控制器配置目标服务器的引导过程,使得在目标服务器下次引导时而不是在生产环境内利用时,目标服务器为各组件安装更新软件。控制器实现目标服务器引导,使得目标服务器为各组件安装更新软件。控制器重新配置目标服务器的引导过程,使得在目标服务器下次引导时,在生产环境内再次利用目标服务器。更新控制器再次实现目标服务器引导,使得在生产环境内再次利用目标服务器。
本发明的实施例提供了较现有技术而言的优点。与现有技术相比更快速、以不那么令人厌烦的方式并且难度更低地更新目标服务器。具体而言,使网络管理员免去了不得不执行在更新过程中涉及到的大量工作。更新控制器查询目标服务器以建立安装于目标服务器内的组件的清单,并且从更新服务器取回这些组件的更新软件。更新控制器适当地配置目标服务器的引导过程,使得在目标服务器下次引导时在目标服务器内恰当地安装各组件的更新软件,然后实现目标服务器重新引导以安装这一更新软件。一旦已经完成更新过程,则更新控制器重新配置目标服务器的引导过程,使得在它下次引导时可以在生产环境内再次利用它,并且实现目标服务器再次重新启动,使得在生产环境内再次利用它。
通过阅读以下具体描述并且通过参照附图,本发明的更多其他优点、方面和实施例将变得清楚。
附图说明
这里参照的附图形成说明书的一部分。除非另有指明,图中所示特征旨在于仅举例说明本发明的一些实施例而不是本发明的所有实施例,并且也不以别的方式做出与之相反的暗示。
图1是根据本发明一个实施例的方法的流程图。
图2是根据本发明一个逻辑引导存储体实施例的系统的图。
图3是根据本发明一个逻辑引导存储体实施例的与图1的方法一致但是更具体的方法的流程图。
图4是根据本发明一个预引导执行环境实施例的系统的图。
图5是根据本发明一个预引导执行环境实施例的与图1的方法一致但是更具体的方法的流程图。
图6是根据本发明一个可升级(scalable)服务器实施例的部分系统的图。
图7是根据本发明一个可升级服务器实施例的与图1的方法一致但是更具体的方法的流程图。
具体实施方式
在对本发明示例实施例的以下具体描述中对附图进行参照,这些附图形成具体描述的一部分,并且在附图中通过示例来示出可以在其中实施本发明的具体示例实施例。以充分细节描述这些实施例以使本领域技术人员能够实施本发明。可以利用其他实施例,并且可以进行逻辑、机械和其他变化而不脱离本发明的精神或者范围。以下具体描述因此不应理解为具有限制意义,并且本发明的范围仅由所附权利要求书来限定。
概述和通用方法
图1示出了根据本发明一个实施例的用于更新目标服务器的方法100。目标服务器之所以称为目标服务器,仅仅是为了将它区别于关于方法100所描述的其他服务器。如随后在具体描述中更具体地所述,方法100可以由更新控制器执行。更新控制器在至少一些实施例中是与目标服务器分离并且不同的设备。方法100可以实施为在计算机可读介质上存储的一个或者多个计算机程序。应该注意,尽管关于服务器来描述本发明的这一实施例和其他实施例,但是更一般而言可以关于能够通过这里描述的方法而更新的任一类设备来实施实施例。这样的设备一般称为目标设备。
目标服务器具有用于在也可以包括其他服务器的生产环境内利用目标服务器的引导过程,其中所述其他服务器也可以是与之有关的可以执行方法100的目标服务器。引导过程使得在引导(例如重新引导)目标服务器时,目标服务器引导到其中利用它执行功能以实现所需或者预定用途的生产环境中。这里对术语“生产环境”的使用与在背景技术部分中提供的对这一术语的描述相一致。
方法100查询目标服务器以建立安装于目标服务器内的组件的清单(102)。这些组件可以包括硬件和/或软件。这样的硬件组件可以是单独硬件组件或者由多个硬件组件组成的硬件子系统。这样的软件组件可以类似地是单独软件组件或者由多个软件组件组成的软件子系统。
在已经建立安装于目标服务器内的组件的清单时,方法100基于建立的清单向更新服务器发送对这些组件的更新软件的请求(104)。因此,可以向更新服务器提供组件的标识。可以向更新服务器进一步提供当前安装于目标服务器内的这些组件的软件版本,使得更新服务器可以确定是否存在这些组件的更新软件。更新服务器在至少一些实施例中是与目标服务器和更新控制器不同的设备。
作为响应,方法100从更新服务器接收在目标服务器内安装的组件的更新软件(106)。可以仅针对当前安装于目标服务器内的软件版本不是最新版本的那些组件接收更新软件。尤其是在组件是软件组件的情况下,组件的软件就此而言可以是替换软件、补丁软件和/或其他更新软件。在组件是硬件组件的情况下,组件的软件就此而言可以是固件和驱动以及替换软件、补丁软件和/或其他更新软件。
方法100然后配置目标服务器的引导过程,使得在目标服务器下次(重新)引导时,目标服务器为标识为具有更新软件可用的组件安装更新软件(108)。随后在具体描述中描述用于以这一方式配置目标服务器引导过程的两个特定实施例。然而一般而言,配置引导过程使得所讨论的各组件的更新软件安装于目标软件内,并且在目标服务器再次引导时适当地加以配置。
方法100使目标服务器(重新)引导,使得目标服务器由此为所讨论的组件安装更新软件(110)。在至少一些实施例中,无需任何用户交互而自动地执行这一更新软件的安装和配置过程。对一些组件的更新软件的安装和配置可能要求在后续安装和配置其他组件的更新软件之前重新引导目标服务器。这样的重新引导视为更新软件安装过程的一部分,而在至少一些实施例中也无需任何用户交互而自动地加以执行。
在目标服务器完成了为所讨论的组件安装更新软件时(112),方法100验证已经恰当地安装更新软件。在尚未恰当地安装更新软件时,可以通知网络管理员或者其他用户人工地评价和补救该情形。注意在至少一些实施例中,通过在部分108已经配置目标服务器的引导过程,使得一旦安装已经完成则目标服务器通知设备或者组件执行方法100,从而方法100得知目标服务器已经完成安装更新软件。
方法100然后重新配置引导过程,使得在目标服务器下次(重新)引导时,在生产环境内再次利用它(114)。例如,可以在部分108中重新配置引导过程之前暂时地保存由目标服务器用于引导到生产环境中的原有引导过程。因此在部分114将引导过程重置为这一保存的原有引导过程,使得目标服务器可以再次引导到生产环境中。
就此而言,注意在实现目标服务器引导使得它安装更新软件时,目标服务器暂时地不再是生产环境的一部分。因此,如果目标服务器在引导之前主动地执行与生产环境的预定或者所需用途有关的功能,则使它暂时地解除这一功能。例如,如果目标服务器当前正在处理与此有关的任何计算机程序,则对这些计算机程序的执行可以迁移到生产环境内的一个或者多个其他服务器,使得目标服务器可以安装更新软件而不影响整个生产环境。
方法100以实现目标服务器再次(重新)引导使得在生产环境内再次利用目标服务器(116)而告终。这样,目标服务器再次能够主动地执行功能以实现生产环境的预定或者所需用途,但是现在使其组件具有更新软件。如果任何计算机程序在目标服务器在部分110的引导之前从它迁移开,或者如果以别的方式使目标服务器解除它正在执行的功能,则这些计算机程序可以迁移回到目标软件,并且再次使目标服务器负责它先前执行的功能。
逻辑引导存储体实施例
图2示出了根据本发明一个逻辑引导存储体实施例的系统200。系统200包括一个或者多个目标服务器202、更新控制器204、更新服务器206和一个或者多个存储设备208。如图2中所示,局域网(LAN)210以连通方式将目标服务器202、更新控制器204和存储设备208相互连接。同样如图2中所示,因特网212以连通方式将更新控制器204和更新服务器206相互连接。另外如图2中所示,存储区域网络(SAN)214以连通方式将存储设备208连接到目标服务器202和更新控制器204,这具体是为了服务器202和控制器204来存取在存储设备208上存储的数据。LAN 210、因特网212和SAN214是特定类型的网络,而除了这些网络之外和/或取而代之可以利用其他类型的网络。
目标服务器202是具有将为之安装更新软件的组件的服务器。目标服务器202在安装这一更新软件之前执行功能以实现由系统200实施的生产环境的预定或者所需用途,其中对术语“生产环境”的使用在这里与已经描述的相同。更新控制器204可以用硬件和/或软件实施,并且可以是分立设备或者是比如负责管理目标服务器202的管理服务器这样的另一设备的一部分。更新控制器204执行参照图1已经描述的方法100以及本发明实施例的其他方法。更新服务器206存储包括安装于目标服务器202内的组件在内的多个服务器组件的最近更新软件。
存储设备208是物理存储设备,比如在一个实施例中为硬盘驱动网络。在图2的实施例中,两个逻辑存储体216和218实施于一个或者多个存储设备208上。逻辑存储体216和218由于它们存储数据而是存储体。逻辑存储体216和218由于在逻辑上限定它们而是逻辑体,并且在至少一些实施例中并非必然地对应于任何特定的实际物理存储设备208。例如,正如本领域普通技术人员可以认识到的那样,逻辑存储体216和218可以是存储逻辑单元或者存储LUN。现在参照图3来描述逻辑存储体216和218的利用方式。
图3示出了根据本发明的逻辑引导存储体实施例的方法100。图3的实施例的方法100由更新控制器204执行。参照图2的系统200、具体上关于特定目标服务器202来描述方法100。然而,也可以在有多个目标服务器202时关于各目标服务器202依次地执行方法100,并且也可以关于其他类型的系统来执行方法100。
如参照图1已经描述的那样,更新控制器204查询目标服务器202以建立安装于目标服务器202内的组件的清单(102)。同样如参照图1已经描述的那样,更新控制器204基于建立的清单向更新服务器206发送对组件的更新软件的请求(104)。又如参照图1已经描述的那样,更新控制器204然后从更新服务器206接收安装于目标服务器202内的组件的更新软件(302)。
更新控制器204接着执行部分302、304和306,这些部分一起可以构成参照图1已经描述的部分108的表现。首先应注意,目标服务器202具有原来作为逻辑引导存储体向它分配的逻辑存储体216。因此,在目标服务器202(重新)引导时,认为目标服务器202从这一逻辑存储体216引导以用于在由图2的系统200实施的生产环境中利用。逻辑存储体216就此而言视为原有逻辑引导存储体,这是因为在图3的方法100开始时原来将目标服务器202指定为具有存储体216作为它的逻辑引导存储体。
现在,更新控制器204将其他逻辑存储体218准备为逻辑引导存储体(302),其中目标服务器202例如经由SAN 214也可以存取其他逻辑引导存储体218。更新控制器204然后用已经从更新服务器206取回的目标服务器202的组件的更新软件填充逻辑存储体218(304)。作为部分304的一部分,更新控制器204配置这一逻辑存储体218,使得如果目标服务器202要从存储体218引导,则服务器202将恰当地安装和配置所讨论的所有更新软件。
因此,更新控制器204将目标服务器202的逻辑引导存储体指定为逻辑存储体218(306),使得目标服务器202的逻辑引导存储体不再是作为原有逻辑引导存储体的逻辑存储体216。然后,实现目标服务器202从逻辑存储体218(重新)引导(308),其中部分308对应于参照图1已经描述的部分110。因此,通过从逻辑存储体218引导,目标服务器202为它的组件安装和配置更新软件。
如参照图1已经描述的那样,在目标服务器202完成了安装更新软件时,更新控制器204验证已经恰当地安装更新软件(112)。更新控制器204然后将目标服务器202的逻辑引导存储体重新指定为作为原有逻辑引导存储体的逻辑存储体216(310),其中部分310对应于参照图1已经描述的部分114。因此,为了安装更新软件而在部分308从中引导目标服务器202的逻辑存储体218,其不再是服务器202的引导逻辑存储体,而实际上逻辑存储体216再次是服务器202的引导逻辑存储体。
最终,更新控制器204实现目标服务器202从逻辑存储体216再次(重新)引导,使得与先前一样在图2的系统200的生产环境内再次利用服务器202(312),其中部分312对应于参照图1已经描述的部分116。因此,在图2和图3的逻辑引导存储体实施例中,更新控制器204配置目标服务器202的引导过程,使得服务器202通过暂时地改变服务器202的逻辑引导存储体来在(重新)引导时为它的组件安装更新软件。一旦服务器202已经安装更新软件,则更新控制器204重新配置目标服务器202的引导过程,使得通过将服务器202的逻辑引导存储体改变回到它的原有逻辑引导存储体来在生产环境内再次利用它。
预引导执行环境实施例
图4示出了根据本发明一个预引导执行环境实施例的系统200。系统200同样包括目标服务器202、更新服务器204、更新服务器206和存储设备208。局域网(LAN)210以连通方式将目标服务器202、更新控制器204和存储设备208相互连接,而因特网212以连通方式将更新控制器204和更新服务器206相互连接。存储区域网络(SAN)214以连通方式将存储设备208连接到目标服务器202和更新控制器204,这具体是为了目标服务器202和更新控制器204存取在存储设备208上存储的数据。LAN 210、因特网212和SAN 214是特定类型的网络,而除了这些网络之外和/或取而代之可以利用其他类型的网络。
目标服务器202是具有将为之安装更新软件的组件的服务器。目标服务器202在安装这一更新软件之前执行功能以实现由系统200实施的生产环境的预定或者所需用途,其中在这里对术语“生产环境”的使用与已经描述的相同。各目标服务器202具有引导配置301。引导配置301指定将如何(重新)引导所讨论的目标服务器202。也就是说,引导配置301指定所讨论的目标服务器202在(重新)引导时遵循的过程。
更新控制器204可以用硬件和/或软件实施并且可以是分立设备或者是比如负责管理目标服务器202的管理服务器这样的另一设备的一部分。更新控制器204执行参照图1已经描述的方法100以及本发明实施例的其他方法。更新服务器206存储包括安装于目标服务器202内的组件在内的多个服务器组件的最近更新软件。
存储设备208是物理存储设备、比如在一个实施例中为硬盘驱动网络。在图4的实施例中,如本领域普通技术人员可以认识到的那样,在存储设备208上限定逻辑文件夹302。称为网络引导程序(NBP)304的文件由更新控制器204创建,并且存储于逻辑文件夹302上。如本领域普通技术人员可以认识到的那样,结合预引导执行环境(PXE)306来利用NBP 304。因此,更新控制器204可以指定目标服务器202的引导配置301在(重新)引导过程中使用PXE 306,使得目标服务器202在开始(重新)引导过程时执行NBP 304。现在参照图5来呈现关于如何利用NBP 304和PXE 306的更多细节。
图5示出了根据本发明预引导执行环境实施例的方法100。图5的实施例的方法100由更新控制器204执行。关于图4的实施例的系统200、具体是关于特定目标服务器202来描述方法100。然而,也可以在存在多个目标服务器202时关于各目标服务器202依次地执行方法100,并且也可以关于其他类型的系统来执行方法100。
如参照图1已经描述的那样,更新控制器204查询目标服务器202以建立安装于目标服务器202内的组件的清单(102)。也如参照图1已经描述的那样,更新控制器204基于建立的清单向更新服务器206发送对组件更新软件的请求(104)。又如参照图1已经描述的那样,更新控制器204然后从更新服务器206接收安装于目标服务器202内的组件的更新软件(302)。
更新控制器204接着执行部分502、504和506,这些部分一起可以构成参照图1已经描述的部分108的表现。首先应注意,目标服务器202的引导配置301在图5的方法100执行之前视为目标服务器202的原有引导配置。目标服务器202在根据这一原有引导配置来(重新)引导时,使目标服务器202用于在由图4的系统200实施的生产环境中利用。
更新控制器204将NBP 304准备为包括目标服务器202的组件的更新软件(502)。因此,NBP 304在由目标服务器202执行时使更新软件安装于目标服务器202内,并且也使更新软件恰当地配置于目标服务器202内。更新控制器204然后在经由PXE 306可存取或者在PXE 306内可存取的逻辑文件夹302内存储NBP 304(504)。
更新控制器204指定目标服务器202的引导配置301包括PXE306(506)。换而言之,更新控制器204修改引导配置301,使得目标服务器202存取和执行由PXE 306指定并且经由PXE 306可存取的NBP 304。然后实现目标服务器202(重新)引导,使得它经由PXE 306引导并且执行NBP 304以安装更新软件(508),其中部分508对应于参照图1已经描述的部分110。因此,通过经由PXE 306引导,目标服务器202执行NBP 304,并且为它的组件安装和配置更新软件。
如参照图1已经描述的那样,在目标服务器202完成了安装更新软件时,更新控制器204验证已经恰当地安装更新软件(112)。更新控制器204然后重新指定目标服务器202的引导配置301,使得它不再包括PXE 306(510),其中部分510对应于参照图1已经描述的部分114。这样,引导配置301在执行图5的实施例的方法100之前返回到它的原有状态(即原有引导配置)。因此,在下次运行目标服务器202时,它不会经由PXE 306执行NBP 304。
最终,更新控制器204实现目标服务器202再次(重新)引导,使得服务器202使用原有引导配置来引导,并且与先前一样再次用于在图4的系统200的生产环境内(512)利用,其中部分512对应于参照图1已经描述的部分116,其中部分512对应于参照图1已经描述的部分116。因此在图4和图5的PXE实施例中,更新控制器204配置目标服务器202的引导过程,使得服务器202通过将引导配置301暂时地修改为包括PXE 306使得执行NBP 304在(重新)引导时为它的组件安装更新软件。一旦服务器202已经安装更新软件,则更新控制器204重新配置目标服务器202的引导过程,使得通过修改引导配置301使得它不再包括PXE 306,从而在生产环境内再次利用目标服务器202。
可升级服务器实施例
在已经描述的本发明实施例中,与之有关执行这些方法的目标服务器可以是单个物理服务器。然而在其他实施例中,目标服务器可以是如下类型的虚拟服务器的可升级服务器,该虚拟服务器的类型包括一起工作以充当单个(虚拟)服务器的多个单独组成服务器。图6示出了根据本发明此类可升级服务器实施例的系统200的一部分。目标服务器202具体是可升级服务器,并且包括统称为单独服务器602的单独组成物理服务器602A、602B、...、602N。可以结合图2的实施例的系统200或者图4的实施例的系统200来使用图6的实施例的系统200。
图7示出了根据本发明可升级服务器实施例的方法100。图7的实施例的方法100是关于可升级目标服务器将执行的图1的实施例的方法100的修改版本。然而,本领域普通技术人员可以认识到,可以类似地将图3的实施例的方法100或者图5的实施例的方法100修改为关于可升级目标服务器来执行。
如参照图1已经描述的那样,更新控制器204查询可升级目标服务器202以建立安装于可升级目标服务器202内的组件的清单(102),其中这些组件包括可升级目标服务器202的各单独服务器602的所有组件。也如参照图1已经描述的那样,更新控制器204基于建立的清单向更新服务器206发送对组件的更新软件的请求(104)。又如参照图1已经描述的那样,更新控制器204然后从更新服务器206接收安装于目标服务器202的单独服务器602内的组件的更新软件(302)。
可升级目标服务器202然后缩减为它的单独组成服务器602(702)。也就是说,暂时地分解可升级目标服务器202,使得单独服务器602被展现并且相对于包含(虚拟)可升级目标服务器202而言被显露为单独服务器。随后,由于单独服务器602被单独地显露,所以更新控制器204为各单独服务器602执行如参照图1的实施例所述部分108、110和112。
因此,更新控制器204配置各单独服务器602的引导过程,使得各单独服务器602在它下次引导时为单独服务器602的各组件安装更新软件(108)。更新控制器204实现单独服务器602引导,使得各单独服务器602安装所讨论的更新软件(110)。更新控制器204在各单独服务器602完成了安装所讨论的更新软件时还验证已经恰当地安装更新软件(112)。可以针对单独服务器602依次地执行部分108、110和112,使得为单独服务器602之一,然后为单独服务器602中的另一个等等执行部分108、110和112。
随后,重新配置目标服务器202的引导过程,使得由目标服务器202的单独组成服务器602重新组装目标服务器202,使得在目标服务器下次(重新)引导时在生产环境内再次利用它(706),其中部分706对应于参照图1已经描述的部分114。也就是说,部分706包括由单独服务器602重新组装目标服务器202。这样,单独服务器602不再被单独地显露和展现,而实际上显露和展现为(虚拟)可升级目标服务器202。
最终,更新控制器204实现目标服务器202(重新)引导,使得在所讨论的生产环境内再次利用服务器202(116)。因此,在图6和图7的可升级服务器实施例中,可升级目标服务器202缩减为它的单独组成服务器,并且在逐个单独服务器的基础上执行安装更新软件的过程。一旦在单独服务器内已经安装所有更新软件,则可以再次实现或者重新组装并且(重新)引导可升级服务器,使得在生产环境内利用它。
结论
注意,虽然这里已经图示和描述了具体实施例,但是本领域技术人员将认识到被设计用以实现相同用途的任何布置都可以取代所示具体实施例。本申请因此旨在于涵盖对本发明实施例的任何修改或者变化。因此,本意明确地在于仅由权利要求及其等效来限定本发明。
Claims (16)
1.一种方法,包括:
查询目标设备以建立安装于所述目标设备内的多个组件的清单,所述目标设备具有用于在生产环境内利用所述目标设备的引导过程;
基于所述建立的清单从更新服务器接收安装于所述目标设备内的各组件的更新软件;
配置所述目标设备的所述引导过程,使得在所述目标设备下次引导时而不是在所述生产环境内利用时,所述目标设备为各组件安装所述更新软件;
实现所述目标设备引导,使得所述目标设备为安装于所述目标设备内的各组件安装所述更新软件;
在所述目标设备完成了为各组件安装所述更新软件时,重新配置所述引导过程、使得在所述目标设备下次引导时在所述生产环境内再次利用所述目标设备;以及
实现所述目标设备引导,使得在所述生产环境内再次利用所述目标设备。
2.根据权利要求1所述的方法,其中配置所述目标设备的所述引导过程,使得在所述目标设备下次引导时所述目标设备为各组件安装所述更新软件,包括:
在所述目标设备可存取的一个或者多个存储设备上准备逻辑存储体;
用安装于所述目标设备内的各组件的所述更新软件填充所述逻辑存储体;以及
将所述目标设备的逻辑引导存储体指定为所述逻辑存储体,
以及其中实现所述目标设备引导包括实现所述目标设备引导,使得所述目标设备从所述逻辑存储体引导,并且为安装于所述目标设备内的各组件安装所述更新软件。
3.根据权利要求2所述的方法,其中重新配置所述引导过程,使得在所述目标设备下次引导时在所述生产环境内再次利用所述目标设备包括:将所述目标设备的所述逻辑引导存储体指定为先前从中引导所述目标设备以用于在所述生产环境内利用的原有逻辑存储体,
以及其中实现所述目标设备引导,使得在所述生产环境内再次利用所述目标设备包括:实现所述目标设备引导,使得所述目标设备从所述原有逻辑存储体引导。
4.根据权利要求1所述的方法,其中配置所述目标设备的所述引导过程,使得在所述目标设备下次引导时所述目标设备为各组件安装所述更新软件,包括:
准备网络引导程序以包括安装于所述目标设备内的各组件的所述更新软件;
在预引导执行环境内可存取的逻辑文件夹内存储所述网络引导程序;以及
将所述目标设备的引导配置指定为包括所述预引导执行环境,使得所述目标设备在下次引导时执行所述网络引导程序,
以及其中实现所述目标设备引导包括:实现所述目标设备引导,使得所述目标设备经由所述预引导执行环境来引导,并且通过执行所述网络引导程序为安装于所述目标设备内的各组件安装所述更新软件。
5.根据权利要求4所述的方法,其中重新配置所述引导过程,使得在所述目标设备下次引导时在所述生产环境内再次利用所述目标设备包括:将所述目标设备的所述引导配置指定为先前用于引导所述目标设备以用于在所述生产环境内利用的原有引导配置,
以及其中实现所述目标设备引导,使得在所述生产环境内再次利用所述目标设备包括:实现所述目标设备引导,使得所述目标设备经由所述原有引导配置来引导。
6.根据权利要求1所述的方法,其中所述目标设备是包括多个单独服务器的可升级服务器,以及所述方法还包括:
将所述可升级服务器缩减为所述单独服务器,使得所述升级服务器暂时地不再存在,
其中配置所述目标设备的所述引导过程包括:配置各单独服务器的所述引导过程,使得各单独服务器在所述单独服务器下次引导时安装所述更新软件,
以及其中实现所述目标设备引导包括:实现各单独服务器引导,以便各单独服务器安装所述更新软件。
7.根据权利要求6所述的方法,其中在所述目标设备完成了安装所述更新软件时重新配置所述引导过程包括:在各单独服务器完成了安装所述更新软件时,
将所述可升级服务器重新组装以包括所述单独服务器,使得所述可升级服务器再次存在。
8.根据权利要求1所述的方法,还包括:向所述更新服务器提供所述建立的清单以请求来自所述更新服务器的安装于所述目标设备内的各组件的所述更新软件。
9.根据权利要求1所述的方法,还包括:验证安装于所述目标设备内的各组件的所述更新软件由所述目标设备恰当地安装。
10.根据权利要求1所述的方法,其中所述目标设备的所述组件包括:所述目标设备的软件和所述目标设备的硬件中的一个或者多个。
11.一种系统,包括:
一个或者多个网络;
更新服务器,以连通方式连接到所述网络并且具有不同服务器组件的多个更新软件;
目标服务器,以连通方式连接到所述网络并且具有待更新的安装于所述目标服务器内的多个组件,所述多个组件选自于所述不同服务器组件,所述目标服务器具有用于在生产环境内利用所述目标设备的引导过程;以及
更新控制器,以连通方式连接到所述网络,所述更新控制器适于:
查询所述目标服务器以建立安装于所述目标服务器内的所述组件的清单;
基于所述建立的清单从所述更新服务器接收各组件的所述更新软件;
配置所述目标服务器的所述引导过程,使得在所述目标服务器下次引导时而不是在所述生产环境内利用时,所述目标服务器为各组件安装所述更新软件;
实现所述目标服务器引导,使得所述目标服务器为各组件安装所述更新软件;
重新配置所述目标服务器的所述引导过程,使得在所述目标服务器下次引导时在所述生产环境内再次利用所述目标服务器;以及
再次实现所述目标服务器引导,使得在所述生产环境内再次利用所述目标服务器。
12.根据权利要求11所述的系统,其中所述网络包括:
局域网(LAN),用于以连通方式将所述更新控制器连接到所述目标服务器以便查询所述目标服务器;以及
一个或者多个网络,用于以连通方式将所述更新控制器连接到所述更新服务器以便从所述更新服务器接收所述更新软件。
13.根据权利要求11所述的系统,还包括以连通方式连接到所述网络的多个存储设备,所述网络包括:用于所述目标服务器和所述更新控制器存取所述存储设备的存储区域网络(SAN),其中所述更新控制器包括通过以下操作来配置所述目标服务器的所述引导过程:
在所述多个存储设备中的一个或者多个存储设备上准备逻辑存储体;
用安装于所述目标服务器内的各组件的所述更新软件填充所述逻辑存储体;以及
将所述目标服务器的逻辑引导存储体指定为所述逻辑存储体,
以及其中所述更新控制器通过将所述目标服务器的所述逻辑引导存储体指定为先前从中引导所述目标服务器以用于在所述生产环境内利用的原有逻辑存储体来重新配置所述引导过程。
14.根据权利要求11所述的系统,还包括具有逻辑文件夹的存储设备,所述存储设备以连通方式连接到所述网络,其中所述更新控制器通过以下操作来配置所述目标服务器的所述引导过程:
准备将网络引导程序以包括安装于所述目标服务器内的各组件的所述更新软件;
在预引导执行环境内可存取的所述逻辑文件夹内存储所述网络引导程序;以及
将所述目标服务器的引导配置指定为包括所述预引导执行环境,
以及其中所述更新控制器通过将所述目标服务器的所述引导配置指定为经由先前用于引导所述目标服务器以用于在所述生产环境内利用的原有引导配置来重新配置所述引导过程。
15.根据权利要求11所述的系统,其中所述目标服务器是包括:多个单独服务器的可升级服务器,所述可升级服务器的所述多个组件各自安装于所述单独服务器之一处。
16.根据权利要求11所述的系统,其中所述目标服务器的所述组件包括:所述目标服务器的软件和所述目标服务器的硬件中的一个或者多个。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/927,407 | 2007-10-29 | ||
US11/927,407 US8091085B2 (en) | 2007-10-29 | 2007-10-29 | Installation of updated software for server components |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101425017A true CN101425017A (zh) | 2009-05-06 |
CN101425017B CN101425017B (zh) | 2012-05-23 |
Family
ID=40584580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101697898A Expired - Fee Related CN101425017B (zh) | 2007-10-29 | 2008-10-28 | 用于为服务器组件安装更新软件的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8091085B2 (zh) |
CN (1) | CN101425017B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104750511A (zh) * | 2013-12-31 | 2015-07-01 | 环达电脑(上海)有限公司 | 安装桌面应用程序的方法 |
CN106534300A (zh) * | 2016-11-09 | 2017-03-22 | 东软集团股份有限公司 | 数据更新方法、用户设备、服务器及系统 |
CN108027742A (zh) * | 2015-09-08 | 2018-05-11 | 阿姆Ip有限公司 | 处理数字内容 |
CN110023901A (zh) * | 2017-09-21 | 2019-07-16 | 甲骨文国际公司 | 用于更新基于云的多层应用栈的系统和方法 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7802243B1 (en) * | 2006-04-20 | 2010-09-21 | Open Invention Network Llc | System and method for server customization |
US7873957B2 (en) * | 2006-07-27 | 2011-01-18 | Microsoft Corporation | Minimizing user disruption during modification operations |
US8464243B2 (en) * | 2009-08-21 | 2013-06-11 | International Business Machines Corporation | Updating client node of computing system |
US9146726B2 (en) * | 2010-12-16 | 2015-09-29 | Netapp, Inc. | System and method for firmware update for network connected storage subsystem components |
US9081502B2 (en) * | 2012-10-18 | 2015-07-14 | Hitachi, Ltd. | Method and apparatus of storage volume migration in cooperation with takeover of storage area network configuration |
US20140282478A1 (en) * | 2013-03-15 | 2014-09-18 | Silicon Graphics International Corp. | Tcp server bootloader |
CN104519092A (zh) * | 2013-09-26 | 2015-04-15 | 中国电信股份有限公司 | 基于整机柜服务器系统实现软件推送的方法与管理服务器 |
US9952853B2 (en) * | 2015-02-10 | 2018-04-24 | Mediatek Inc. | Methods for cross-mounting devices and apparatus utilizing the same |
US10089260B2 (en) | 2015-02-10 | 2018-10-02 | Mediatek Inc. | Control method and system for accessing data among different electronic devices |
US10241775B2 (en) * | 2016-01-14 | 2019-03-26 | Ca, Inc. | Dynamic release baselines in a continuous delivery environment |
US10936295B2 (en) * | 2018-11-01 | 2021-03-02 | Dell Products L.P. | Software update system |
JP7007019B2 (ja) * | 2019-03-20 | 2022-01-24 | Necプラットフォームズ株式会社 | サーバ管理装置、サーバ管理方法、サーバ管理プログラム、およびバージョンチェックプログラム |
CN115617256A (zh) * | 2021-07-12 | 2023-01-17 | 戴尔产品有限公司 | 基于指定虚拟机引导条件的确定可能性在存储集群的存储节点中移动虚拟卷 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6074434A (en) * | 1996-06-07 | 2000-06-13 | International Business Machines Corporation | Selection of code updates, data updates or new data for client |
US6751658B1 (en) * | 1999-10-18 | 2004-06-15 | Apple Computer, Inc. | Providing a reliable operating system for clients of a net-booted environment |
JP2002278906A (ja) * | 2001-03-21 | 2002-09-27 | Nec Corp | アップデート管理システム、アップデート・クライアント装置、アップデート・サーバ装置及びプログラム |
US7103641B2 (en) * | 2001-06-18 | 2006-09-05 | Intel Corporation | Method and apparatus for distributing computer platform firmware across a network |
US7165250B2 (en) * | 2002-01-15 | 2007-01-16 | International Business Machines Corporation | System and method for priority based application server updates |
US20040040021A1 (en) * | 2002-05-06 | 2004-02-26 | Microsoft Corporation | Method and system for keeping an application up-to-date |
US20040044999A1 (en) * | 2002-08-30 | 2004-03-04 | Gibson Mason C. | Subscription-based program module installation and update system and method |
US7069428B2 (en) * | 2002-09-10 | 2006-06-27 | Veritas Operating Corporation | System for managing boot-up of target computers |
US8271971B2 (en) * | 2002-11-26 | 2012-09-18 | Hewlett-Packard Development Company, L.P. | System and method for automated program updating in a remote appliance |
US7093246B2 (en) * | 2002-12-20 | 2006-08-15 | International Business Machines Corporation | Automated updates of software and systems |
US20040181790A1 (en) * | 2003-03-12 | 2004-09-16 | Herrick Joseph W. | System and method for maintaining installed software compliance with build standards |
US6934805B2 (en) * | 2003-05-19 | 2005-08-23 | International Business Machines Corporation | Method and apparatus for managing computer storage devices for improved operational availability |
US7203745B2 (en) * | 2003-05-29 | 2007-04-10 | Akamai Technologies, Inc. | Method of scheduling hosts for software updates in a distributed computer network |
US7499988B2 (en) * | 2003-10-16 | 2009-03-03 | International Business Machines Corporation | Method for SAN-based BOS install volume group |
IL163314A (en) * | 2004-08-02 | 2010-06-16 | Lsi Technologies Israel Ltd | Booting from a storage area network |
KR100644621B1 (ko) * | 2004-08-06 | 2006-11-10 | 삼성전자주식회사 | 네트워크 디바이스의 소프트웨어 업데이트 방법 |
JP2006260058A (ja) * | 2005-03-16 | 2006-09-28 | Fujitsu Ltd | 計算機サーバ・システムにおけるファームウェアアップデート方法 |
JP2006268172A (ja) * | 2005-03-22 | 2006-10-05 | Nec Corp | サーバシステムおよびオンラインソフトウェア更新方法 |
-
2007
- 2007-10-29 US US11/927,407 patent/US8091085B2/en active Active
-
2008
- 2008-10-28 CN CN2008101697898A patent/CN101425017B/zh not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104750511A (zh) * | 2013-12-31 | 2015-07-01 | 环达电脑(上海)有限公司 | 安装桌面应用程序的方法 |
CN108027742A (zh) * | 2015-09-08 | 2018-05-11 | 阿姆Ip有限公司 | 处理数字内容 |
CN108027742B (zh) * | 2015-09-08 | 2021-06-22 | 阿姆Ip有限公司 | 处理数字内容 |
CN106534300A (zh) * | 2016-11-09 | 2017-03-22 | 东软集团股份有限公司 | 数据更新方法、用户设备、服务器及系统 |
CN106534300B (zh) * | 2016-11-09 | 2019-11-29 | 东软集团股份有限公司 | 数据更新方法、用户设备、服务器及系统 |
CN110023901A (zh) * | 2017-09-21 | 2019-07-16 | 甲骨文国际公司 | 用于更新基于云的多层应用栈的系统和方法 |
CN110023901B (zh) * | 2017-09-21 | 2023-08-11 | 甲骨文国际公司 | 用于更新基于云的多层应用栈的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101425017B (zh) | 2012-05-23 |
US8091085B2 (en) | 2012-01-03 |
US20090113416A1 (en) | 2009-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101425017B (zh) | 用于为服务器组件安装更新软件的方法和系统 | |
CN104011677B (zh) | 利用流技术在多个目标上部署软件映像的方法及系统 | |
US9535684B2 (en) | Management of software updates in a virtualized environment of a datacenter using dependency relationships | |
US8549272B2 (en) | Information handling system image management deployment of virtual machine images to physical information handling systems | |
CN102681865B (zh) | 分布式系统中的协调升级 | |
US8266616B1 (en) | Computer system provisioning using templates | |
CN107995064A (zh) | 基于虚拟化技术的测试平台搭建方法 | |
US8966474B2 (en) | Managing virtual machines using shared image | |
US9032394B1 (en) | Deploying drivers for an operating system on a computing device | |
CN105814541B (zh) | 计算机设备及计算机设备内存启动的方法 | |
CN102523101B (zh) | 机器管理器服务结构 | |
US20110173302A1 (en) | Cluster Configuration | |
US20120110262A1 (en) | Systems and methods for remote raid configuration in an embedded environment | |
US20050257215A1 (en) | Automated software upgrade utility | |
US9037843B2 (en) | Managing a target computing device | |
US10331428B1 (en) | Automated firmware update management on huge big-data clusters | |
JP2012128841A (ja) | ブート・ブロックの再配置によって複数のソフトウェア・イメージを管理するための方法、コンピュータ・プログラムおよびシステム | |
US10305731B2 (en) | System and method for provisioning cloud services across heterogeneous environments using partitioned provisioning instructions stored on a configuration management server | |
EP2810178A1 (en) | Self-updating functionality in a distributed system | |
US10838751B1 (en) | Virtual machine configuration | |
CN103593207A (zh) | 使用虚拟磁盘的高速自动化丛集系统部署方法 | |
US20100058319A1 (en) | Agile deployment of server | |
US7882232B2 (en) | Rapid resource provisioning with automated throttling | |
US8316361B2 (en) | Method of enabling a user to update one or more low-level resources of a computer system in a user-friendly manner | |
US20090259834A1 (en) | Manufacturing Information Handling Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120523 Termination date: 20171028 |