CN101159596B - 用于布置服务器的方法和设备 - Google Patents
用于布置服务器的方法和设备 Download PDFInfo
- Publication number
- CN101159596B CN101159596B CN200710149949.8A CN200710149949A CN101159596B CN 101159596 B CN101159596 B CN 101159596B CN 200710149949 A CN200710149949 A CN 200710149949A CN 101159596 B CN101159596 B CN 101159596B
- Authority
- CN
- China
- Prior art keywords
- mirror image
- computer
- unit
- logical partition
- information
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000005192 partition Methods 0.000 claims abstract description 70
- 230000008569 process Effects 0.000 claims abstract description 47
- 230000004044 response Effects 0.000 claims abstract description 11
- 238000012545 processing Methods 0.000 claims description 48
- 230000008859 change Effects 0.000 claims description 10
- 230000004048 modification Effects 0.000 claims description 8
- 238000012986 modification Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 description 26
- 238000003860 storage Methods 0.000 description 18
- 230000000694 effects Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000012958 reprocessing Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 102000004137 Lysophosphatidic Acid Receptors Human genes 0.000 description 1
- 108090000642 Lysophosphatidic Acid Receptors Proteins 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
用于管理服务器的计算机实现方法、设备和计算机可使用程序代码。在第一时间段期间向逻辑分区计算机组发送镜像来形成一组预加载的基础镜像,其中与第一时间段之后的第二时间段相比,在第一时间段中逻辑分区计算机组较少使用网络资源。从用于新服务器处理的预加载的基础镜像组中利用预加载的基础镜像,在逻辑分区计算机组中的计算机上的逻辑分区中启动新服务器处理,其中由于响应于在第二时间段期间要求新服务器处理的条件,在第二时间段期间避免了将预加载的基础镜像传送到计算机,因此在第二时间段期间减少了网络资源的使用。
Description
技术领域
本发明总的涉及改进的数据处理系统,特别地,本发明涉及用于管理服务器的方法和设备。更特别的是,本发明涉及用于管理服务器的开始的计算机实现方法、设备和计算机可使用程序代码。
背景技术
数据中心包括多个硬件固定物理部件来完成一组任务。该硬件通常包括以特定作用(role)配置的数据处理系统,诸如,域名服务器、邮件服务器、网络服务器、文件服务器或应用程序服务器。数据中心可以使用具有逻辑分区的多个数据处理系统。这些数据处理系统还被称为逻辑分区(logicalpartitioned,LPAR)数据处理系统。在数据处理系统内的逻辑分区的功能允许单一操作系统的多个副本或多个异构操作系统在单一数据处理系统平台上同时运行。将平台资源的子集分配给在其中操作系统镜像运行的逻辑分区。还将逻辑分区称为虚拟机。这些平台可分配资源包括具有它们的中断管理区域、系统存储器的区域和输入/输出(I/O)适配器总线插槽的一个或多个架构上完全不同的处理器。由平台固件向操作系统镜像表示分区的资源。
相互保护在平台内运行的每一个不同的操作系统或操作系统的镜像,使得在一个逻辑分区上的软件错误不影响任何其它分区的正确操作。可以不必功率循环(power-cycle)整个数据处理系统而反复启动或关闭在逻辑分区数据处理系统内的每个分区。
这些不同的分区用于提供用于数据中心的不同的功能或作用。例如,单一的计算机可以具有多个分区,其中每个分区提供不同的作用。例如,一个分区可以提供邮件服务器功能,而两个其它的分区提供网络服务器功能。
在管理该类型的具有多个计算机的数据中心时,最好对业务的需求和改变提供快速应答(on the fly response)。例如,如果将新产品放到网站上,并且需求增加到该网站的当前网络服务器所能处理的范围之外,则最好配置额外的网络服务器来处理所增加的业务量。重新供应计算机来起新的作用是费时的处理,并且可能有出错的倾向。即使特定服务器以超过能力而运行(诸如当网络业务突增(spike)或增加到当前网络服务器能处理的范围外时),也不经常改变计算机的作用。
当前,可以将一个或多个新网络服务器联机(online)来处理所增加的业务。通过将镜像传送到网络服务器所要安装到的每个机器,以使这些网络服务器联机。该镜像包含操作系统和用于网络服务器的程序。根据镜像的大小,将镜像传送到数个计算机可能需要30分钟。重新供应或使逻辑分区的数据处理系统中的新网络服务器联机所需的时间量经常需要足够多的时间,使得特定服务的用户将注意到在使新网络服务器联机之前的某个时间段内处理交易的速度变慢,或不能处理交易。
使用当前系统,在峰值业务或繁重业务负载期间下载镜像只能使情况恶化,并且降低网络服务器应答的能力。虽然这种系统响应于不同的业务量提供增强的灵活性,但是最好减少建立新服务器来响应需求的变化的时间量。
发明内容
本发明提供用于管理服务器的计算机实现的方法、设备和计算机可使用的程序代码。在第一时间段期间向逻辑分区计算机组发送镜像来形成一组预加载的基础镜像,其中与第一时间段之后的第二时间段相比,在第一时间段中逻辑分区计算机组较少使用网络资源。针对新的服务器处理利用来自一组预装载的基础映像中的预装载的基础映像,在逻辑分区计算机组中的计算机上的逻辑分区中启动新的服务器处理,其中由于响应于在第二时间段期间出现的要求新服务器处理的条件,在第二时间段期间避免了向计算机传送预装载的基础映像,因此在第二时间段期间减少网络资源的使用。
附图说明
在所附权利要求中阐明了本发明的新颖性特征。然而,当结合附图进行阅读时通过参照所示实施例的详细描述,将更好地理解本发明以及所使用的优选模式、进一步的目的及其优点,在附图中:
图1是可以实现所示实施例的数据处理系统的网络的图形表示;
图2是可以实现所示实施例的数据处理系统的方框图;
图3是可以实现所示实施例的示例性逻辑分区的平台的方框图;
图4是图解根据所示实施例的使用来管理数据中心中的服务器的部件;
图5是根据所示实施例的用于启动服务器的处理的流程图;
图6是根据所示实施例的用于启动服务器的处理的流程图;
图7是根据所示实施例的用于更新镜像的处理的流程图;
图8是根据所示实施例的用于创建最初基础镜像的处理的流程图;和
图9是根据所示实施例的用于在计算机上开始镜像的处理的流程图。
具体实施方式
现在参照附图,并且特别地参照附图1-2,在可以实现所示实施例的附图中提供了数据处理环境的示例性图示。应该理解的是,图1-2仅仅是示例性的,并且不意欲声明或暗示关于可以实现不同实施例的环境的任何限制。可以对所描述的环境进行多种修改。
现在参照附图,图1描述可以实现所示实施例的数据处理系统的网络的图形表示。网络数据处理系统100是可以实现实施例的计算机网络。网络数据处理系统100包括网络102,其为用于在网络数据处理系统100内连接在一起的各种装置和计算机之间提供通信链路的介质。网络102可以包括诸如有线、无线通信链路或光纤电缆之类的连接。
在所示示例中,服务器计算机104和服务器计算机106连接到网络102以及存储单元108。此外,客户机110、112和114连接到网络102,这些客户机10、112和114可以是(例如)个人计算机或网络计算机。在所述的示例中,服务器计算机104和服务器计算机106可以是数据中心的一部分,并且可以向诸如客户机110、112和114之类的客户机提供诸如域名系统(DNS)服务器、电子邮件服务器、网络服务器、文件服务器和/或应用程序服务器之类的服务器功能。网络数据处理系统100可以包括额外的服务器、客户机和未示出的其它装置。根据实现,这些服务器计算机还可以配置为数据中心的机群(cluster)的一部分,并且可以进行逻辑分区。
在所述的示例中,网络数据处理系统100是具有表示网络的全球集合的网络102和使用协议的传输控制协议/因特网协议(TCP/IP)组来相互通信的网关的因特网。在因特网的中心的是在由数以千计的商业、政府、教育和其它计算机系统组成的主节点或预主计算机路由数据和消息的其他计算机系统之间的高速数据通信线路的主干。当然,还可以将网络数据处理系统100实现为多种不同类型的网络,诸如、内部网、局域网(LAN)或广域网(WAN)。图1仅被认为是示例,并且不认为是不同实施例的架构限制。
现在参照图2,显示了可以实现所示实施例的数据处理系统的方框图。数据处理系统200是计算机的示例,诸如图1中的服务器计算机104或客户机110,在其中可以针对所示的实施例定位实现该处理的计算机可使用代码或指令。
在所述的示例中,数据处理系统200采用集线器架构,包括北桥和存储器控制器集线器(MCH)202以及南桥和输入/输出(I/O)控制器集线器(ICH)204。处理器206、主存储器208和图形处理器210耦合到北桥和存储器控制器集线器202。例如,图形处理器210可以通过加速图形接口(AGP)耦合到MCH。
在所述的示例中,局域网(LAN)适配器212耦合到南桥和I/O控制器集线器204,并且音频适配器216、键盘和鼠标适配器220、调制解调器222、只读存储器(ROM)224、通用串行总线(USB)端口和其它通信端口232和PCI/PCIe装置234通过总线238耦合到南桥和I/O控制器集线器204,并且硬盘驱动器(HDD)226和CD-ROM驱动器230通过总线240耦合到南桥和I/O控制器集线器204。PCI/PCIe装置可以包括,例如,以太网适配器、附加卡和用于笔记本计算机的PC卡。PCI使用卡总线控制器,而PCIe不使用。ROM 224可以是,例如,闪速二进制输入/输出系统(BIOS)。硬盘驱动器226和CD-ROM驱动器230可以是,例如,集成驱动设备(IDE)或串行先进技术附加(SATA)接口。超级I/O(SIO)装置236可以耦合到南桥和I/O控制器集线器204。
操作系统在处理器206上运行,并且进行协调并提供图2中的数据处理系统200内的各种部件的控制。操作系统可以是诸如MicrosoftWindowsXP(Microsoft和Windows是微软公司在美国、其它国家或二者的商标)之类的商业可用操作系统。诸如JavaTM编程系统之类的面向对象编程系统可以结合操作系统运行,并且提供从Java程序或在数据处理系统200上执行的应用到操作系统的调用。Java和基于Java的商标是Sun Mircosystems有限公司在美国、其它国家或二者的商标。
操作系统的指令、面向对象编程系统和应用程序或程序位于诸如硬盘驱动器226之类的存储装置中,并且可以被加载到主存储器208以由处理器206执行。可以由处理器206使用可以位于诸如主存储器208、只读存储器224之类的存储器中或位于一个或多个外部装置中的计算机实现的指令来执行所示实施例的处理。
图1-2中的硬件可以根据实现变化。除了图1-2中描述的硬件之外,或者代替它们,可以使用诸如闪存、等效非易失性存储器或光盘驱动器之类的其它内部硬件或外部装置。此外,可以将所示实施例的处理应用到多处理器数据处理系统。
在某些所示示例中,可以使用诸如可从国际商业机器公司获得的IBMeServer P690、可从惠普公司获得的DHP9000 Superdome企业服务器以及可从Sun Mircosystems公司获得的Sunfire 15K服务器之类的大型对称多处理器数据处理系统实现数据处理系统200。总线系统可以由诸如系统总线、I/O总线和PCI总线之类的一个或多个总线组成。当然,可以使用在不同部件或附连到结构或架构的装置之间提供数据传送的任意类型的通信结构或架构实现总线系统。通信单元可以包括诸如调制解调器或网络适配器之类的用于传送并接收数据的一个或多个装置。存储器可以是,例如主存储器208或诸如在北桥和存储器控制器集线器202中发现的高速缓存。处理单元可以包括一个或多个处理器或CPU。在图1-2中的所述示例和上述示例不暗示架构限制。例如,作为客户机,数据处理系统200还可以是平板计算机、笔记本计算机、个人数字助理或电话装置。
现在参照图3,在可以实现所示实施例的图3中描述了示例性逻辑分区的平台的方框图。可以使用(例如)图2中的数据处理系统200来实现在逻辑分区的平台300中的硬件。逻辑分区的平台300包括分区硬件330、操作系统302、304、306、308和分区管理固件3 10。操作系统302、304、306和308可以是在逻辑分区平台300上同时运行的单个操作系统的多个副本或多个异构操作系统。可以使用设计来与诸如可从国际商业机器公司获得的Hypervisor之类的分区管理固件对接的OS/400实现这些操作系统。OS/400仅用作这些所示实施例的示例。当然,可以根据特定实现使用诸如AIX和Linux之类的其它类型的操作系统。操作系统302、304、306和308位于分区303、305、307和309。Hypervisor软件是可以用于实现分区管理固件310的软件的示例,并且可以从国际商业机器公司获得。固件是在断电时也能保持其内容的存储器芯片(诸如只读存储器(ROM)、可编程ROM(PROM)、可擦写可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)和非易失性随机存储器(非易失性RAM))中存储的“软件”。
此外,这些分区还包括分区固件311、313、315和317。可以使用初始开机码(boot strap code)、IEEE-1275标准公开固件和可从国际商业机器公司获得的运行时抽象软件(runtime abstraction software,RTAS)实现分区固件311、313、315和317。当分区303、305、307和309被实例化时,由平台固件310将开机码的副本加载到分区303、305、307和309。其后,将控制传送到开机码,然后开机码加载公开固件和RTAS。然后将与分区相关联或分配给分区的处理器分配给分区存储器来执行分区固件。
分区的硬件330包括多个处理器332-338、多个系统存储器单元340-346,多个输入/输出(I/O)适配器348-362和存储单元370。可以将处理器332-338、存储器单元340-346、NVRAM存储398和I/O适配器348-362的每一个分配给逻辑分区的平台300内的多个分区之一,其每一个对应于操作系统302、304、306和308之一。
分区管理固件310为分区303、305、307和309执行大量功能和服务来创建和加强逻辑分区的平台300的分区。分区管理固件310是等效于基础硬件的固件实现的虚拟机。因此,分区管理固件310通过虚拟化逻辑分区的平台300的所有硬件资源来允许同时执行独立的OS镜像302、304、306和308。
服务处理器390可以用于提供各种服务,诸如分区中的平台错误的处理。这些服务还可以作为服务代理来向诸如国际商业机器公司之类的提供商报告错误。可以通过诸如硬件管理控制台380之类的硬件管理控制台(console)控制不同分区的操作。硬件管理控制台380是系统管理员可以执行包括将资源重新分配给不同分区的各种功能的分离的数据处理系统。
所示的实施例提供用于管理服务器的计算机实现的方法、设备和计算机可使用程序代码。在第一时间段期间将镜像发送到逻辑分区计算机组,其中与第二后续时间段相比,在第一时间段期间较少使用网络资源。在逻辑分区计算机组上的这些镜像形成预加载的基础镜像组。当在第二时间段期间出现要求新服务器处理的条件时,在逻辑分区计算机组内的计算机上的逻辑分区中开始新服务器处理。从预加载的基础镜像组中使用预加载的基础镜像来启动该新服务器处理。通过使用预加载的基础镜像,在第二时间段期间减少使用网络资源,这是因为在使服务器处理联机时避免了向计算机传送镜像。
要求新服务器处理的条件的示例是当在网站上提供的新项目或出售商品导致大量用户访问网站并开始交易时。对于网站来说这种增加的业务可能使当前网络服务器不能无延迟地处理业务,而该延迟对于特定服务水平协议来说被认为是不可接受的。根据该条件,在逻辑分区计算机组中的不同逻辑分区内开始一个或多个新网络服务器作为新服务器处理。可以在未使用的分区上将新处理联机。替代地,可以将当前使用的分区从当前服务改变为新服务。
在每个示例中,由于不下载镜像来启动这些新服务,因此避免在网络上的额外业务。在当业务低于当前时间段的另一时间段期间预先加载这些镜像。以这种方式,提供了在繁重业务时间期间快速供应和重新供应分区而不移动大量操作系统镜像数据。
现在转向图4,该图图解根据所示实施例描述在数据中心中用于管理服务器的部件。在该示例中,数据中心400包括计算机402、计算机404、计算机406和镜像服务器408。可以使用图2中的数据处理系统200实现这些部件。在该示例中,计算机402包含分区410、412、414、416和418。主分区418通常是初始逻辑分区,并且用于在计算机内建立和控制分区。在这些所示的实施例中,在数据处理系统的操作期间不关闭主分区。该主分区是用于管理其它分区的处理和信息可以位于其中的分区。可以将分区410、412、414和416称为客户机分区。
主分区418包括用于在计算机402内接收和存储镜像422的代理420。额外地,代理420还处理对开始和停止计算机402内的服务的请求。镜像422还位于主分区418中,并且用于配置分区410、412、414和416中的服务器。这些服务器可以提供不同的作用和功能,诸如域名服务器、网络服务器、邮件服务器、数据库服务器和应用程序服务器。当然,可以根据特定实现提供除这些之外的其它作用。
镜像422中的每个镜像包含操作系统、应用程序、配置信息和特定作用或服务器功能所需的其它信息。镜像的第一次启动使用动态主机配置协议(DHC)自动配置系统服务,该协议为装置使用来请求并获得因特网地址的协议。替代地,可以使用诸如基于目录的服务之类的另一个配置存储方法。基于目录的服务的示例是轻量目录访问协议(lightweight directory accessprotocol,LDAP)服务。该协议用于查询并修改目录服务。
在该示例中,分区410配置来用作邮件服务器、分区412配置来用作数据库服务器,而分区414配置来用作网络服务器。如所述,分区416当前不具有所分配的功能。当然,所示的作用可以根据计算机(诸如计算机402)的特定目的而不同。例如,可以将计算机402指定为电子邮件计算机,其中所有的分区用于电子邮件服务器处理。
在所示的实施例中,代理420可以使用镜像422配置分区416来提供诸如网络服务器之类的功能。在这些示例中,这些镜像中的每一个包括启动特定功能所需的应用程序和信息。镜像422包括针对计算机402可以执行的每个功能的镜像。在这些示例中,镜像包括建立和运行分区中的操作系统所需的所有信息。
如图所示,计算机404包括分区424、426、428和430以及主分区432。主分区432还包括代理434和镜像436。代理434管理镜像436并且启动和停止服务器。
在该示例中,分区424配置来用作邮件服务器,分区426配置来用作数据库服务器,而分区428配置来用作网络服务器。在该示例中分区430未用于任何功能。
计算机406包含分区438、440、442和444。计算机406还包含主分区446。该分区还包括代理448和镜像450。如其它计算机那样,代理448管理镜像450和分区内的服务器功能的启动和停止。
镜像422、436和450是位于镜像服务器408上的镜像452的副本。通过控制应用程序454控制向计算机402、404和406发送镜像。控制应用程序454确保镜像422、436和450对于数据中心400的大多数当前镜像来说是最新的。在这些所示的示例中,在配置数据456中存储位于计算机402、404和406上的镜像的版本的标识。此外,控制应用程序454还在配置数据456内存储关于在计算机402、404和406上当前运行的服务器功能的信息。
在所示的示例中,镜像452被发送并用于在非峰值时间使用当前用于更新计算机上的镜像的机制来更新镜像422、436和450。因此,如果在镜像452中包含或更新新网络服务器镜像,则可以将该网络服务器镜像通过代理420、434和448分别发送到计算机402、404和406。控制应用程序454确定计算机402、404和406上的镜像是否是最新的镜像。如果不存在最新或当前镜像,则控制应用程序454通过代理420、434和448分别在主分区418、432和446上更新镜像。
在这些示例中,即使可以重新使用镜像不同的次数,也只有针对特定功能或作用的单个镜像需要被保持在计算机上存储的镜像组中。例如,镜像422中的单个网络服务器镜像可以用于启动计算机402中的分区中的多个网络服务器。在这些示例中使用复制写入(copy-on-write)技术实现该特征。该技术向每个分区提供对该镜像的相同指针。只要计算机402中的分区之一尝试写入或修改网络服务器的镜像的副本,则在另一位置中存储写入或变化,而保持原始镜像不变。
因此,使用复制写入处理,基础初始镜像不修改,并且可以用于在同一计算机上使多个应用程序实例联机而不会发生不一致的现象。该特征还减少存储镜像所需要的空间量,这是因为不需要复制的镜像。
不同的实施例通过在针对在数据中心400内的不同服务器功能需要那些镜像之前预装入或预加载镜像422、436和450,在计算机402、404和406上提供了服务器功能的更快的启动或实例化。因此,在网络使用较低时向在数据中心400内的所有不同的计算机分发基础镜像,不需要显著的网络开销来使不同服务器作用的新实例联机。在所示实施例中的该技术避免了在数据中心400上可能经历较大或较高量业务期间使用现有网络资源来将镜像从镜像服务器408复制到给定物理主机的情况。
控制应用程序454还可以监视计算机402、404和406中不同分区的负载。在这些实施例中,该负载是请求量或由每个分区执行的工作。可以通过代理420、434和448使用公知的监视系统来执行该监视,以监视由不同分区处理的业务或请求量。控制应用程序454可以使用当前所使用的不同负载平衡策略开始或启动新的服务器。
不同的所示实施例提供通过升级当前工作的服务器而不引起停机时间的能力来提供附加的好处。即使只有给定分区的单个虚拟实例正在运行,也可以使用经更新的镜像来启动新的分区,使得器进入负载平衡模式,并且在现存分区断线之前处理请求。
在这些实例中,针对特定作用或功能使用具有合适应用程序的操作系统镜像来实现镜像452。将该镜像变为“初始(primed)”基础镜像,以分发到数据中心400中的逻辑分区计算机。该处理包括在第一次启动操作系统时扫描和标记操作系统镜像中的可能改变的所有数据。可能改变的信息包括在操作系统和应用程序级的网络存储和装置参数。在启动镜像时可以标记该信息,并且对其进行修改。替代地,可以以根据计算机上的操作系统镜像的第一次启动来使信息被开始的方式消除或改变该信息。
当镜像第一次运行时,代理420、434和448可以配置从配置数据库456收集的所标记的信息。替代地,可以通过位于镜像本身的处理来执行所标记的数据的这种修改。
为了描述所示实施例的不同特征的目的进行数据中心400的描述,并且不意味着暗示关于可以实现这些特征的方式的任何架构限制。例如,虽然显示了四个计算机,以在数据中心400中提供服务器功能,但是可以使用其它数量的计算机。
现在转到图5,根据示例实施例描述了用于启动服务器的流程图。可以在诸如图4中的代理420之类的代理中实现在图5中图解的处理。
该处理通过接收请求开始,以启动新服务器(步骤500)。该处理搜索计算机上的镜像(步骤502)。该镜像是包括针对新服务器的作用和功能来说是合适的应用程序的那个镜像。例如,一个镜像可以是用于网络服务器功能,而另一个镜像可以是用于电子邮件功能。接下来,该处理确定所请求的镜像是否本地存在于计算机上(步骤504)。如果本地存在镜像,则处理开始复制写入处理来重新引导写入到镜像(步骤506)。虽然这些所示的实施例使用复制写入处理,但是可以实现其它的机制以保留从其启动服务器处理的原始镜像。
然后在分区上启动镜像(步骤508)。最后,该处理返回镜像正在运行的确认(步骤510),然后处理终止。在这些示例中,请求者、控制应用程序使用确认来跟踪正在数据中心中运行的服务器。
返回在步骤504中做出的确定,如果本地不存在所请求的镜像,该处理返回错误(步骤512)。该处理然后终止。
现在转到图6,根据所述实施例描述用于启动服务器的处理的流程图。可以在诸如图4中的控制应用程序454之类的应用程序中实现图6所示的处理。
该处理通过检测要求新服务器的条件开始(步骤600)。在这些示例中,步骤600中的条件可以是,例如,控制应用程序检测到请求的处理需要长于某个时间阈值量或业务已经上升到阈值之上。还可以通过用户输入请求新服务器的启动来启动该条件。
接下来从池(pool)中选择计算机(步骤602)。可以使用不同的机制来进行在步骤602中服务器的选择。例如,可以使用循环(round robin)机制。替代地,该处理可以选择具有最少量业务或正在处理的请求的服务器。此外,该步骤可以包括寻找分区为空或包含可以被重新分配给新服务器的服务器的分区的计算机。例如,可以选择其中正在使用所有分区的计算机,而不是其中分区是空闲的计算机。在所有分区正在使用的计算机是用于具有很少业务或无业务的功能的那些计算机,同时具有空闲分区的计算机正在处理大量请求时该状态可能出现。
将请求发送到所选的计算机来启动新服务器(步骤604)。从所选的计算机接收应答(步骤606)。最后,更新配置数据(步骤608),随后处理终止。
现在转到图7,根据所示实施例描述用于更新镜像的处理的流程图。可以在诸如图4中的控制应用程序454之类的应用程序中实现在图7中所示的处理。在该图中的处理用于确保在数据中心中的不同计算机上的镜像保持最新和一致。
该处理通过标识新镜像开始(步骤700)。从池中选择未处理的计算机(步骤702)。将新镜像与计算机上的当前镜像相比(步骤704)。接下来,该处理确定是否需要对镜像进行更新(步骤706)。如果在步骤706需要更新,则处理开始计算机上的镜像的更新(步骤708)。
做出关于是否存在更多的未处理的计算机的进一步确定(步骤710)。如果不存在更多的未处理的计算机,则处理终止。然而,如果存在更多的未处理的计算机,则处理返回到步骤702来从池中选择未处理的计算机。此外,返回到步骤706中做出的确定,如果该处理确定不需要更新,则如上所述,处理前进到步骤710。
现在转到图8,根据所示实施例描述用于创建初始基础镜像的处理的流程图。可以在诸如图4中的控制应用程序454之类的应用程序中实现在图8中所示的处理。
该处理通过安装操作系统镜像开始(步骤800)。接下来,消除自动产生的安全外壳标识密钥(security shell identification key)(步骤802)。将配置文件的主机名称改变为类名(generic name)(步骤804)。然后针对所有网络适配器消除因特网协议(IP)地址配置(步骤806)。最后,卸载操作系统镜像(步骤808),随后处理终止。
现在转到图9,根据所示实施例描述用于开始计算机上的镜像的处理的流程图。将配置文件的主机名改变为唯一名称(步骤902)。设置用于网络适配器的IP地址(步骤904)。卸载操作系统镜像(步骤906)。最后,启动分区(步骤908),然后处理终止。
在不同描述的实施例中的流程图和方框图图解设备、方法和计算机程序产品的某些可能实现的架构、功能和操作。在这方面,流程图或方框图中的每个方框可以表示模块、片段或代码部分,其包括用于实现特定功能的一个或多个可执行指令。在某些替代的实现中,可以以与图示顺序不同的顺序进行在方框中注明的功能。例如,在某些情况下,可以基本上同时执行顺序示出的两个方框,或者有时可以根据所涉及的功能以反向顺序执行方框。
因此,所示实施例提供用于管理服务器的计算机实现的方法、设备和计算机可使用的程序代码。在第一时间段期间向逻辑分区计算机组发送镜像来形成一组预加载的基础镜像,其中与第一时间段之后的第二时间段相比,在第一时间段中较少使用网络资源。当在第二时间段期间存在要求新服务器或服务器处理的条件时,在逻辑分区计算机组中的计算机上的逻辑分区中启动新服务器处理。从预加载的基础镜像组中使用预加载的基础镜像之一来启动该新服务器处理。以这种方式,在第二时间段期间减少资源的使用,这是因为避免了向计算机传送预加载的基础镜像。
可以实现不同的所示实施例,以用于诸如数据中心之类的系统中。可以以向客户机提供服务器功能的逻辑分区的数据处理系统的任意集合来实现不同实施例中存在的不同的特征。
在这些示例中,可以使用逻辑分区计算机上的代理和服务器计算机上的控制应用程序来实现不同的实施例。代理在主分区上执行,并且用于控制镜像的接收和逻辑分区的系统上的服务器的启动和停止。在这些示例中,控制应用程序将镜像分发到代理,并且还监视业务来确定何时需要新服务器和何时可以移除服务器。此外,控制应用程序还用于保持在不同逻辑分区计算机上的所更新的或当前镜像。
本发明可以采用整体硬件实施例、整体软件实施例或包括硬件和软件元素的实施例的形式。在优选的实施例中,以软件实现本发明,其包括(但不限于)固件、驻留软件、微码等。
此外,本发明可以采用可从提供程序代码的计算机可使用或计算机可读介质访问的计算机程序产品的形式,其中该程序代码以由计算机或任意指令执行系统使用或结合它们使用。为了本描述的目的,计算机可使用或计算机可读介质可以是可包含、存储、通信、传播或传送由任意指令执行系统、设备或装置使用或结合它们使用的程序的有形设备。
介质可以是电、磁、光、电磁、红外或半导体系统(或设备或装置)或传播介质。计算机可读介质的示例包括半导体或固态存储器、磁带、可移除计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的当前示例包括紧凑盘-只读存储器(CD-ROM)、紧凑盘-读/写(CD-R/W)和DVD。
适于存储和/或执行程序代码的数据处理系统将包括通过系统总线直接或间接耦合到存储器元件的至少一个处理器。存储器元件可以包括在程序代码的实际执行期间采用的本地存储器、大规模存储单元和提供至少一些程序代码的临时存储以便在执行期间减少从大规模存储单元必须获取代码的次数的高速缓存。
输入/输出或I/O装置(包括但不限于键盘、显示器、指示装置等)可以直接或通过中间I/O控制器耦合到系统。
网络适配器还可以耦合到系统来使数据处理系统通过中间专用或公共网络耦合到其它数据处理系统或远端打印机或存储装置。调制解调器、线缆调制解调器和以太网卡仅仅是当前可用类型的网络适配器的一部分。
为了说明和描述的目的已经提供的本发明的描述,并且不意欲穷尽或将本发明限制到所公开的形式。多种修改和变型对于本领域技术人员来说是明显的。选择并描述实施例以便最好地解释本发明的原理、实际应用程序,并且使本领域其它普通技术人员能够针对具有各种修改的各种实施例理解本发明,这是因为这些修改适用于预期的特定用途。
Claims (12)
1.一种用于管理服务器的方法,该方法包括:
在第一时间段期间向逻辑分区计算机组发送镜像来形成一组预加载的基础镜像,其中与第一时间段之后的第二时间段相比,在第一时间段中逻辑分区计算机组较少使用网络资源,该步骤进一步包括:选择计算机;确定在所选的计算机上是否存在针对逻辑分区计算机组中的所选的计算机而指定的所选的镜像;和响应于在所选的计算机不存在所选的镜像的确定,向每个计算机发送所选的镜像;和
响应于在第二时间段期间发生的要求新服务器处理的条件,利用来自用于新服务器处理的预加载的基础镜像组中的预加载的基础镜像,在逻辑分区计算机组中的计算机上的逻辑分区中启动新服务器处理,其中由于在第二时间段期间避免了将预加载的基础镜像传送到计算机,因此在第二时间段期间减少了网络资源的使用,该步骤进一步包括:接收请求来启动新服务器处理;响应于接收所述请求来定位计算机上的镜像;和启动将对镜像的修改存储在除镜像外的另一位置中的计算机,其中镜像保持不变,并且在计算机上针对新服务器处理的其它实例重新使用。
2.如权利要求1所述的方法,还包括:
安装镜像;
标识当第一次启动镜像时改变的信息来形成所标识的信息;和
修改所标识的信息来形成经修改的信息,其中当在特定分区中使用镜像时改变经修改的信息以由特定逻辑分区进行使用。
3.如权利要求2所述的方法,其中修改步骤包括:
标记所标识的信息。
4.如权利要求2所述的方法,其中修改步骤包括:
当由逻辑分区第一次启动镜像时,改变所标识的信息,使得改变所标识的信息以由特定逻辑分区进行使用。
5.如权利要求1所述的方法,其中启动步骤包括:
向在逻辑分区计算机组中的计算机中的基础分区中进行执行的代理发送用于启动新处理的请求。
6.如权利要求1所述的方法,其中所述处理是复制写入处理。
7.如权利要求1所述的方法,其中如果在所选的计算机上存在所选的镜像的不同版本,则在所选的计算机不存在所选的镜像。
8.一种用于管理服务器的系统,包括:
在第一时间段期间向逻辑分区计算机组发送镜像来形成一组预加载的基础镜像的单元,其中与第一时间段之后的第二时间段相比,在第一时间段中逻辑分区计算机组较少使用网络资源,该单元进一步包括:用于选择计算机的单元;用于确定在所选的计算机上是否存在针对逻辑分区计算机组中的所选的计算机而指定的所选的镜像的单元;和用于响应于在所选的计算机不存在所选的镜像的确定,向每个计算机发送所选的镜像的单元;和
响应于在第二时间段期间发生的要求新服务器处理的条件,利用来自用于新服务器处理的预加载的基础镜像组中的预加载的基础镜像,在逻辑分区计算机组中的计算机上的逻辑分区中启动新服务器处理的单元,其中由于在第二时间段期间避免了将预加载的基础镜像传送到计算机,因此在第二时间段期间减少了网络资源的使用,该单元进一步包括:用于接收请求来启动新服务器处理的单元;用于响应于所述请求的接收来定位计算机上的镜像的单元;和用于启动其中将对镜像的修改存储在除镜像外的另一位置的计算机的单元,其中镜像保持不变,并且在计算机上针对新服务器处理的其它实例进行重新使用。
9.如权利要求8所述的系统,还包括:
用于安装镜像的单元;
用于标识当第一次启动镜像时改变的信息来形成所标识的信息的单元;和
用于修改所标识的信息来形成经修改的信息的单元,其中当在特定分区中使用镜像时改变经修改的信息以由特定逻辑分区进行使用。
10.如权利要求9所述的系统,其中用于修改所标识的信息来形成经修改的信息的单元,其中当在特定分区中使用镜像时改变经修改的信息以由特定逻辑分区进行使用,包括:
用于当由逻辑分区第一次启动镜像时,改变所标识的信息,使得改变所标识的信息以由特定逻辑分区进行使用的单元。
11.如权利要求8所述的系统,其中
响应于在第二时间段期间发生的要求新服务器处理的条件,从用于新服 务器处理的预加载的基础镜像组中利用预加载的基础镜像,在逻辑分区计算机组中的计算机上的逻辑分区中启动新服务器处理的单元,其中由于在第二时间段期间避免了将预加载的基础镜像传送到计算机,因此在第二时间段期间减少了网络资源的使用,包括:
用于向在逻辑分区计算机组中的计算机中的基础分区中进行执行的代理发送用于启动新处理的请求的单元。
12.如权利要求8所述的系统,其中如果在所选的计算机上存在所选的镜像的不同版本,则在所选的计算机不存在所选的镜像。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/537,799 US20080082665A1 (en) | 2006-10-02 | 2006-10-02 | Method and apparatus for deploying servers |
US11/537,799 | 2006-10-02 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101159596A CN101159596A (zh) | 2008-04-09 |
CN101159596B true CN101159596B (zh) | 2013-03-13 |
Family
ID=39262301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710149949.8A Expired - Fee Related CN101159596B (zh) | 2006-10-02 | 2007-10-08 | 用于布置服务器的方法和设备 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20080082665A1 (zh) |
CN (1) | CN101159596B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7743140B2 (en) * | 2006-12-08 | 2010-06-22 | International Business Machines Corporation | Binding processes in a non-uniform memory access system |
US7788477B1 (en) * | 2007-01-31 | 2010-08-31 | Hewlett-Packard Development Company, L.P. | Methods, apparatus and articles of manufacture to control operating system images for diskless servers |
US8375138B2 (en) * | 2008-11-05 | 2013-02-12 | Fh Innovations, Ltd | Computer system with true video signals |
US8321503B2 (en) * | 2010-06-24 | 2012-11-27 | Microsoft Corporation | Context-specific network resource addressing model for distributed services |
US9032053B2 (en) * | 2010-10-29 | 2015-05-12 | Nokia Corporation | Method and apparatus for upgrading components of a cluster |
EP3167363B1 (en) * | 2014-07-10 | 2020-12-16 | Harman International Industries, Incorporated | Operating system startup acceleration |
CN110287004B (zh) * | 2019-07-05 | 2021-07-30 | 中国工商银行股份有限公司 | 基于docker容器技术的基础环境镜像预热方法及装置 |
CN111432006B (zh) * | 2020-03-30 | 2023-03-31 | 中科九度(北京)空间信息技术有限责任公司 | 一种轻量级资源虚拟化与分配方法 |
US11797368B2 (en) | 2022-01-27 | 2023-10-24 | Hewlett Packard Enterprise Development Lp | Attributing errors to input/output peripheral drivers |
US11368539B1 (en) * | 2021-05-27 | 2022-06-21 | International Business Machines Corporation | Application deployment in a multi-cluster environment |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1667601A (zh) * | 2004-03-11 | 2005-09-14 | 国际商业机器公司 | 在逻辑分区之间共享网络i/o适配器的装置与方法 |
CN1786919A (zh) * | 2004-12-07 | 2006-06-14 | 国际商业机器公司 | 用于在逻辑分区数据处理系统中管理资源的方法和设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6021114A (en) * | 1997-04-18 | 2000-02-01 | Siemens Information And Communication Networks, Inc. | Method and system for utilizing communications lines |
US7213065B2 (en) * | 2001-11-08 | 2007-05-01 | Racemi, Inc. | System and method for dynamic server allocation and provisioning |
SE0301835L (sv) * | 2003-06-24 | 2005-02-01 | Infineon Technologies Ag | Förfarande och anordning för att minska den genomsnittliga tiden som behövs för en kommunikationsenhet att ansluta sig till ett kommunikationsnätverk |
US7269723B2 (en) * | 2005-01-19 | 2007-09-11 | International Business Machines Corporation | Reducing the boot time of a client device in a client device/data center environment |
-
2006
- 2006-10-02 US US11/537,799 patent/US20080082665A1/en not_active Abandoned
-
2007
- 2007-10-08 CN CN200710149949.8A patent/CN101159596B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1667601A (zh) * | 2004-03-11 | 2005-09-14 | 国际商业机器公司 | 在逻辑分区之间共享网络i/o适配器的装置与方法 |
CN1786919A (zh) * | 2004-12-07 | 2006-06-14 | 国际商业机器公司 | 用于在逻辑分区数据处理系统中管理资源的方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
US20080082665A1 (en) | 2008-04-03 |
CN101159596A (zh) | 2008-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101159596B (zh) | 用于布置服务器的方法和设备 | |
US11425194B1 (en) | Dynamically modifying a cluster of computing nodes used for distributed execution of a program | |
US11121915B2 (en) | FPGA-enabled compute instances | |
US10897497B2 (en) | Automated infrastructure updates in a cluster environment that includes containers | |
US10540159B2 (en) | Model-based virtual system provisioning | |
US9826031B2 (en) | Managing distributed execution of programs | |
US9851989B2 (en) | Methods and apparatus to manage virtual machines | |
CN101326489B (zh) | 用于运行多个环境的操作系统小型引导 | |
US8327350B2 (en) | Virtual resource templates | |
US8418181B1 (en) | Managing program execution based on data storage location | |
US8321558B1 (en) | Dynamically monitoring and modifying distributed execution of programs | |
US11481239B2 (en) | Apparatus and methods to incorporate external system to approve deployment provisioning | |
US20170201597A1 (en) | Attaching service level agreements to application containers and enabling service assurance | |
US10616034B1 (en) | Time-based computing instances | |
CN1725182A (zh) | 更新逻辑分区计算机系统的输入输出能力的装置和方法 | |
US8306995B2 (en) | Inter-organizational and intra-organizational repository for operating system images | |
US10129094B1 (en) | Variable computing capacity | |
US8234644B2 (en) | Selecting a system management product for performance of system management tasks | |
US11500663B1 (en) | Predictive virtual machine launch-based capacity management | |
US11750451B2 (en) | Batch manager for complex workflows | |
US9798571B1 (en) | System and method for optimizing provisioning time by dynamically customizing a shared virtual machine | |
CN116166413A (zh) | 针对异构基础设施上的工作负载的生命周期管理 | |
US11483205B1 (en) | Defragmentation of licensed resources in a provider network | |
US11017417B1 (en) | Using incentives to manage computing resources | |
US11423377B1 (en) | Lendable computing resources |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20180625 Address after: 7 floor, building 10, Zhang Jiang Innovation Park, 399 Keyuan Road, Zhang Jiang high tech park, Pudong New Area, Shanghai. Patentee after: International Business Machines (China) Co., Ltd. Address before: New York grams of Armand Patentee before: International Business Machines Corp. |
|
TR01 | Transfer of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130313 Termination date: 20191008 |
|
CF01 | Termination of patent right due to non-payment of annual fee |