CN100447746C - 使用动态启动映像和虚拟盘的计算机集群虚拟化的系统和方法 - Google Patents

使用动态启动映像和虚拟盘的计算机集群虚拟化的系统和方法 Download PDF

Info

Publication number
CN100447746C
CN100447746C CNB2005100817193A CN200510081719A CN100447746C CN 100447746 C CN100447746 C CN 100447746C CN B2005100817193 A CNB2005100817193 A CN B2005100817193A CN 200510081719 A CN200510081719 A CN 200510081719A CN 100447746 C CN100447746 C CN 100447746C
Authority
CN
China
Prior art keywords
nodes
node
distributed application
reflection
strategy
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.)
Active
Application number
CNB2005100817193A
Other languages
English (en)
Other versions
CN1700178A (zh
Inventor
S·V·戴维森
R·J·彼得森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Raytheon Co
Original Assignee
Raytheon Co
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=34940758&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN100447746(C) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Raytheon Co filed Critical Raytheon Co
Publication of CN1700178A publication Critical patent/CN1700178A/zh
Application granted granted Critical
Publication of CN100447746C publication Critical patent/CN100447746C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/355Class or cluster creation or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0667Virtualisation aspects at data level, e.g. file, record or object virtualisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • G06F3/1213Improving printing performance achieving reduced delay between job submission and print start at an intermediate node or at the final node
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing

Abstract

一种用于计算机集群虚拟化的方法包括选择一分布式应用。一个与该分布式应用相关联的策略被检索。多个节点中的一个被动态地选择。然后,至少部分根据该检索到的策略,该被选择的节点的启动映像被用于与该分布式应用兼容的启动映像的重新设置。然后,将一虚拟磁盘映像与该节点相关联。然后使用该相关联的虚拟磁盘映像,至少一部分该分布式应用在该重新设置的节点上被执行。

Description

使用动态启动映像和虚拟盘的计算机集群虚拟化的系统和方法
技术领域
这一公开内容一般地涉及数据处理领域和,更具体地,涉及用于使用动态启动映像和虚拟磁盘访问的计算机集群虚拟化的系统和方法。
本发明的背景技术
典型地,企业应用程序在专用计算资源上执行。企业常常包括各种用于不同应用实例如生产、测试和开发的计算环境。典型地,这些多个计算环境与正在使用着的实例或生产实例具有同样的大小和容量。而且,为了延长时间周期,非生产环境被频繁地闲置。通常这会导致大量的计算资源和用于维护和管理这些不同环境的劳动费用的浪费。
目前,企业可以使用材料供应作为解决这些问题的一种尝试。通常,材料供应是通过从知识库拷贝本地磁盘到该资源来对企业应用程序进行示例性计算资源的处理。然后,该资源通过一个通常占用超过10分钟的处理来启动该材料供应的操作系统和软件。
发明内容
这一公开内容提供了用于包括选择一分布式应用的计算机集群虚拟化的系统和方法。一个与该分布式应用相关的策略被检索。可能根据该策略,多个节点中的一个被动态地选择。然后,至少是部分地根据该检索到的策略,该被选择节点的一启动映像被用于该分布式应用兼容的启动映像的重启动。而后,一个虚拟磁盘映像被相关联于该节点。然后使用相关的虚拟磁盘映像,至少一部分分布式应用在该重启动节点上被执行。
本发明有几个重要的技术优点。例如,本发明的一个可能的优点是,它允许正在处理中的计算节点被重设置以成为用于分布式应用的虚拟集群的一个成员,因此可以将设置时间减少到15秒或更少。本公开内容的另一可能优点是可以在信息技术(IT)硬件和维护成本上减少至少30%。而且,当一个应用没有在高峰处理期间时,那一应用的空闲节点可以被动态地重新分配或重新设置到其它的分布式应用。而且另一可能的优点是,它提供集中容量规划、性能监视和简单化管理。此外,本发明可以容许更好的节点故障的管理。本发明的各种实施例可以不具有、或具有一些或全部的这些优点。本发明的其它技术优点对一个本领域技术人员来说将是相当明显的。
附图的简要说明
为了更全面地理解本公开内容和它的优点,现在将与附图结合的标记引入以下描述,其中:
图1说明了根据本公开内容的一个实施例的一个提供动态启动的示例性分布式系统;和
图2说明了本公开内容的一个实施例的用于动态重启动一个节点的示例性方法。
附图的详细说明
图1是一个说明使用动态启动映像131的用于执行软件应用114和各种处理的分布式计算系统100的框图。通常,系统100是一个用于企业或其它分布式应用的可升级的分布式计算环境。系统100提供了一个可升级的容错计算环境,该计算环境能够根据计算需要动态增长,且通过为每个应用114提供它自己的可升级的虚拟集群,它能够同时为多个应用114提供计算资源。例如,系统100可以包括通过网络116连接到一个或多个管理工作站或本地客户机120的服务器102。但是选择性地,系统100可以是一个独立计算环境或其它合适的环境。简言之,系统100是任何能自动地允许在处理过程中被动态分配的节点108作为应用114的需求、参数和需要改变的处理的计算环境。在此使用的术语“动态地”,通常意思是根据一个或多个变量,在运行时间某一处理被确定,至少是部分被确定。在此使用的术语“自动地”,通常意思是实质上由至少是系统100的一部分执行的适当的处理。应当理解,不脱离本公开内容的范围,“自动地”进一步考虑了与系统100相互作用的任何适当的用户或管理员。
服务器102包括任何跨越一个或多个节点108可操作地执行多个应用114的本地计算机或分布式计算机。通常,服务器102包括分布式计算机,比如安装在机架上的服务器、叶片服务器或其它分布式服务器。节点108包括任何计算机或处理装置,比如,例如叶片式、通用个人计算机(PC)、麦金托什机、工作站、基于UNIX的计算机或其它任何适当的装置。通常,图1仅仅提供了一个可以与本公开内容结合使用的计算机或叶片的例子。例如,虽然图1说明了一个可以与本公开内容结合使用的叶片服务器102,但服务器102可以使用除了服务器的计算机以及服务器池来实现。换言之,本公开内容考虑了除了通用计算机的计算机以及没有传统操作系统的计算机。就象本文档所使用的,术语“计算机”是指包含了个人计算机、工作站、网络计算机或任何其它适当的处理设备。服务器102或部件节点108,可以适合于执行任何操作系统,包括Linux、Unix、Windows Server或其它任何适当的操作系统。按照一个实施例,服务器102也可以包括或可通信地连接到远程Web服务器。
示例性服务器102包括可通信地连接到多个节点108且可操作以执行动态启动引擎105的管理节点104。但是可以理解,服务器102和节点108可以不包括所有的示例部分。管理节点104包括至少一个实质上专用于管理服务器102或帮助管理员的叶片或计算设备。例如,管理节点104可以包括两个可热交换的叶片,两个叶片或安装在机架上的服务器中的一个是冗余的(比如主/从配置)。
动态启动引擎105能包括任何硬件、软件、固件或其组合,可操作的以动态分配和管理节点108,且使用节点108的虚拟集群(或应用环境)执行应用114。例如,动态启动引擎105可以用任何合适的计算机语言编写或描述,包括C、C++、Java、Visual Basic、汇编语言和4GL的适当版本以及其它语言和它们的组合。可以理解,当动态启动引擎105在图1中被说明为一个单一的多任务模块时,由该引擎执行的特征和功能可以由多个模块来执行,比如,例如物理层模块、虚拟层模块、工作调度程序和表示引擎。而且,不脱离本公开内容的范围,动态启动引擎105可以是另一软件模块的一个孩子或子模块。因此,动态启动引擎105包括一个或多个软件模块,可操作以根据策略132智能化地管理节点108和应用114。
通常,动态启动引擎105通过启动和停止在单个节点108上的应用环境,管理一个或多个应用114。例如,动态启动引擎105可以根据来自启动映像文件130的不同的启动映像131而重新设置该特别节点108,启动映像文件130具体于希望的应用环境或与希望的应用环境兼容。换言之,动态启动引擎105支持在任何被控制的节点108上动态地启动任何合适的应用环境。因此,动态启动引擎105也可以支持在任何被控制的计算机上为公共IP接口动态地设置IP或MAC地址。动态启动引擎105也可以使用网络启动协议或通过从附属的磁盘存储启动来直接从网络启动任何节点108。动态启动引擎105也可以使用高速网络访问包括了用于任何被控制的计算机的操作系统、服务和应用的虚拟本地磁盘映像。可以理解,动态启动引擎105可以根据日历日期和时间或使用任何其它预先设置的参数来启动或关闭应用环境。
动态启动引擎105也可以支持各种容错和恢复技术。例如,启动引擎105可以通过自动代替和动态地为故障节点108重新启动一个代替节点108而自动地从单一硬件部分故障中恢复服务器102。而且,因为动态启动引擎105能够自动识别新节点108且进行任何的配置、重置或启动,所以安装新节点108可以很容易。
节点108包括任何计算机、叶片或服务器,可操作以执行至少一部分(比如任务或处理)应用114。在高层上,示例性的节点108包括存储器109和处理器110。存储器109可以包括任何存储器或数据库模块,且可以采用易失或非易失存储器的形式,包括但不限于磁媒体、光媒体、随机访问存储器(RAM)、只读存储器(ROM)、可移动媒体或任何其它适当的本地或远程存储器部分。存储器109可以包括各种任何的本地信息。节点108也包括处理器110。处理器110执行指令和操作数据以执行服务器102的操作,比如,例如中央处理单元(CPU)或现场可编程门阵列(FPGA)。虽然图1显示了在每个节点108上的一个单一处理器110,但根据特别需要多个处理器110可以被使用,处理器的标记110意味着包括可应用的多个处理器110。处理器110可以包括启动映像的任何指示器,比如,例如电可擦除可编程只读存储器(EEPROM)111。但可以理解,不脱离本公开内容的范围,节点108可以包括以任何适当的方式配置的任何数量的部件。为了提供本地临时文件空间和虚拟存储器交换空间,节点108也可以包括一个或多个本地硬盘驱动器。
应用114可以包括任何企业或分布式应用,比如,例如数据库管理系统(DBMS)、财务软件和其它。典型地,应用114由用任何适当语言编写和可操作以执行任何数据处理的软件构成。但非传统的应用也在本公开内容的范围内。应用114可以在一个应用环境内运行或在逻辑上为应用执行确定环境的虚拟集群内运行。在一个实施例中,应用环境包括,i)应用环境的名称和描述;ii)节点108的最小/最大数;iii)软件配置信息,比如操作系统软件版本和应用114的软件版本;和iv)每个节点108的硬件配置,比如启动映像、主机名和IP地址、在节点108启动后应用的客户配置、虚拟本地磁盘映像、逻辑文件系统、安装文件系统以及网络配置。但可以理解,任何适当的参数、变量或性能可以被用来帮助动态启动引擎105以定义、定位和处理该应用环境。例如,应用环境也可以包括关于应用114的启动、关闭和正常状态监视的信息。
服务器102可以包括在客户服务器或其它分布式环境中用于与其它计算机系统比如客户机120经网络116通信的接口115。在特定实施例中,服务器102经高速接口115从网络116接收启动映像131、虚拟本地磁盘映像134、策略132或应用数据140以用于存储或处理。通常,接口115包括用软件和/或适当组合的硬件编码的逻辑,且可操作以与网络116通信。更具体地,接口115可以包括支持与通信网络116相关的一个或多个通信协议的软件或可操作以与物理信号通信的硬件。
网络116促进在计算机服务器102和任何其它计算机比如客户机120之间的无线或有线通信。当然,虽然显示地位于服务器102和客户机120之间,但不脱离本公开内容的范围,网络116也可以位于各节点108之间。换言之,网络116包含任何网络、多个网络或子网络,可操作以使各计算部件之间易于通信。例如,网络116可以与Internet协议(IP)包、帧中继帧、异步传输模式(ATM)单元、语音、视频、数据和网络地址间的其它适当信息进行通信。网络116也可以基于任何其它适当的通信协议比如InfiniBand(IB)、吉比特以太网(GB)或FibreChannel(FC)的处理和路由数据包。数据包被典型地用于在应用数据140内传输数据。一个数据包可以包括具有源标识符和目标标识符的报头。源标识符,例如源地址,标识信息的发送者,目标标识符,例如目的地址,标识信息的接收者。网络116可以包括一个或多个局域网(LAN)、无线访问网(RAN)、城域网(MAN)、广域网(WAN)、称为Internet的所有或一部分全球计算机网络和/或在一个或多个位置的其它任何通信系统。
启动表130是任何磁盘区或包含多个启动映像131的网络文件系统。当被显示为远程时,启动映像131可以由动态启动引擎105预加载以简化初始化和安装。启动映像131是任何形式、图像、指示器或至少一部分启动驱动器的主操作系统分区的标记。启动映像131典型地是二进制的形式。启动映像的类型包括来自文件的内核映像、来自块设备或软盘的内核映像或一些操作系统的启动扇区。例如,一个Linux启动映像可以表现为:
0x1B031336,
0x4,
0x90000000,
0x90000200,
0x4,
0x90200,
0x800,
0x800,
0x4,
0x10000,
0x80000,
0x80000,
0x04000004,
0x100000,
0x80000,
0x80000
可以理解,上述例子中的启动映像131仅是为了举例说明的目的,且它可以不包括、或包括一些或全部的举例说明的元件以及没有显示的其它元件。而且,不脱离本公开内容的范围,启动映像131可以是与上述例子不同的布局或格式。
策略表132包括任何用于管理节点108和应用114的参数。例如,策略132可以用于为应用环境自动地增加或减少节点108。可选择地或可组合地,策略132可以由服务器102使用以解决计算应用114之间的问题。通常,策略表132可以包括一个或多个存储在用SQL语句或脚本形式描述的关联数据库中的表。在另一实施例中,策略表132可以存储或定义各种数据结构,如XML文档、虚拟存储访问方法(VSAM)文件、平面文件、Btrieve文件或逗号分隔值(CSV)文件。策略表132也可以包括多个存储在一个计算机上或跨越多个计算机的表或文件。而且,不脱离本公开内容的范围策略表132可以是本地的或远程的,且可以存储任何类型的适当数据。例如,策略表132可以存储单独的虚拟集群策略,该策略包括:i)分配到应用环境的节点的最小/最大数量;ii)分配到该应用的服务器的默认数量;iii)动态地将节点108添加到应用环境的条件;iv)动态地将节点108从该应用环境移除的条件;v)移除节点108(比如关闭网络访问)但留下它进行问题研究的条件;和vi)由于应用114被主动运行一个事务或过程因此节点108不应被移除的条件。
在另一例子中,策略表132可以包括任何数量的中间虚拟集群策略比如优先权、资源共享和抢占策略。典型地,如果有策略冲突,则优先权决定哪个应用环境获得资源。例如,如果一个特定应用环境的优先权更高,它可以获得对节点108的优先访问。资源共享常常是根据应用环境的有限权利。例如,每个应用环境可以被授予节点108的百分比权利。资源共享也可以根据在一个时间的滑动窗口上的计算机的使用。抢占策略可以允许高优先权的应用环境从低优先权的应用环境中接管节点108。
虚拟本地磁盘映像表133是任何磁盘区或包括多个虚拟本地磁盘映像134的网络文件系统。当举例说明为远程时,虚拟本地磁盘映像134可以用操作系统和应用软件预加载以简化初始化和安装。虚拟本地磁盘映像134是任何形式、图像、指示器或用于每个应用的每个虚拟节点的本地磁盘存储标记。典型地虚拟本地磁盘映像134包括操作系统、配置服务和每个应用的虚拟节点的安装应用程序。每个虚拟本地磁盘映像134可以包括多个为了在多个节点间共享而是只读的文件系统或通常是指定到一个应用节点的可修改的文件系统。虚拟本地磁盘映像134可以存储在传统文件系统内的层次型目录中或可以存储在具有提供给该应用节点的网络文件系统接口的可恢复数据库中。
通常,应用数据140可以是任何用于为应用114存储数据的存储器、数据库、存储区网络(SAN)或网络连接存储器(NAS)。应用数据140可以包括一个或多个存储在用SQL语句或脚本描述的关联数据库中的表。在另一实施例中,应用数据140可以存储或定义各种数据结构如XML文档、VSAM文件、平面文件、Btrieve文件或CSV文件。应用数据140也可以包括多个存储在一个计算机上或跨越多个计算机的表或文件。而且,不脱离本公开内容的范围,应用数据14可以是本地的或远程的。
客户机120是任何可操作以通过图形用户接口(GUI)122为用户提供管理屏幕的设备。在高层中,举例说明的客户机120包括至少一个GUI122,且包括一个可操作以接收、传输、处理和存储任何与系统100关联的适当数据的电子计算装置。可以理解,可以有任何数量的客户机120可通信地连接到服务器102。此外,不脱离本公开内容的范围,“客户机120”和“客户机120的用户”可以交替地使用。而且,为了便于说明,每个客户机是按照由一个用户使用来描述的。但本公开内容考虑了许多用户可以用同样的GUI122去使用一个计算机以进行通信命令或显示图形表达。
如本公开内容所使用的,客户机120是指包括个人计算机、触摸屏终端、工作站、网络计算机、公用信息机、无线数据端口、蜂窝电话、个人数字助理(PDA)、在这些或其它设备中的一个或多个处理器或其它任何合适的处理装置。例如,客户机120可以包括如下计算机,该计算机包含了输入设备如键盘、触摸屏、鼠标或其它可以接受信息的设备和将与服务器102或客户机120的操作相关的信息如数字数据、可视信息或GUI122进行转化的输出设备。输入设备和输出设备都可以包括固定或移动存储媒体如磁计算机磁盘、CD-ROM或其它合适的媒体,以通过管理和工作建议显示,即GUI122,从客户机120的用户处接收输入或为客户机120的用户提供输出。
GUI122包括一个可操作的图形用户接口,以允许系统(或网络)管理员与系统100相互作用以监视应用114或系统性能、修改虚拟集群,或任何合适的监督目的。通常,GUI122为客户机120的用户提供有效率的和用户友好的由系统100提供的数据的表示。GUI122可以包括多个具有交互区域、下拉列表和由用户操作的按钮的可定制的帧或视图。在一个实施例中,GUI122提供呈现应用环境或策略屏幕的各种图形视图的显示,并通过一个输入设备接收由客户机120的用户发出的命令。这些图形视图可以包括i)应用环境、节点资源和被监视的负载的当前状态的图形表示;ii)应用环境和节点负载以及使用时间的图形表示;iii)向导;和iv)应用114运行在每个应用环境内和每个节点108上的视图。简言之,GUI122可以表现为系统管理员呈现节点108的任何物理和逻辑状态或特征,并从管理员处接收各种命令。
在一个实施例中,GUI122可以允许管理员创建、删除、拷贝和修改应用环境。使用GUI122,管理员也可以安装应用环境共享策略、激活和无效应用环境、监视应用环境和节点108状态和负载。此外,GUI122可以允许从主动应用环境增加或减少节点108。GUI122也可以根据各种系统100特征,比如,例如在节点108上或应用环境内的可配置负载标准被达到、一个节点108成为不可获得、启动或停止应用环境、从应用环境中增加或减少节点108、服务器102不能满足最低应用环境需求、或服务需求(比如事务响应时间)的标准被超过,而发出警报给管理员。
应当理解,术语图形用户接口可以被用在单数或多数中以描述一个或多个图形用户接口和每个特别的图形用户接口的显示。因此,GUI122考虑了任何处理系统100中的信息并高效地将结果呈现给用户的图形用户接口,比如通用网络浏览器。GUI122也考虑了可操作以经SSL-HTTPS通信的安全浏览器。服务器102可以经网络浏览器(例如,Microsoft Internet Explorer或NetscapeNavigator)接收来自客户机120的数据并通过网络116返回合适的HTML或XML响应。
在操作的一个方面中,动态启动引擎105选择一个分布式应用114。根据一个或多个相关的策略132,动态启动引擎105可以从特别应用环境或虚拟集群中动态地增加或减少一个或多个选择的节点108。根据检索的策略132,动态启动引擎105为选择的节点108选择合适的启动映像132。例如,如果已有4个节点108执行一部分应用114,那么动态启动引擎105自动地选择与应用114兼容的第5个启动映像132(至少是部分根据节点108的硬件和其它特征以及一个或多个策略132)。根据检索的策略132,动态启动引擎105也可以为选择的节点108选择合适的虚拟本地磁盘映像134。一旦合适的启动映像132和/或虚拟本地磁盘映像134被选择,动态启动引擎105用选择的启动映像132和虚拟本地磁盘映像134的指针或其它标记闪现(flash)节点108,并重启节点108。一旦节点108被初始化(通常小于15秒),动态启动引擎105(或一些其它工作调度程序)就执行合适的任务、过程或在选择的节点108上的其它部分的应用114。
图2是说明在本公开内容的一个实施例中用于动态启动节点108的示例性方法200的流程图。图2举例说明了方法200,该方法一般地描述了将多个节点108中的一个动态分配到虚拟集群或应用环境中。当然,任何数量的节点108可以在本公开内容范围内,进行连接或并发地进行重置、重启或进行其它分配。在高层中,方法200包括选择节点108以分配到应用环境114、重新设置选择的节点108的启动映像132以及重启动节点108。以下集中描述在方法200中执行的动态启动引擎105的操作。但系统100考虑了使用实现一些或所有所描述功能的逻辑元件的任何合适的组合和排列。
方法200从步骤205开始,在那里,动态启动引擎105确定应用环境114应当分配更多的节点108。这一确定可以使用任何适当的技术实现。例如,管理员可以手动地将节点108增加到应用114的应用环境中。在另一例子中,动态启动引擎105可以根据策略132动态地确定节点108可以或应当被使用。接下来,在步骤210,动态启动引擎105确定是否存在可用的计算节点108没有被利用。如果存在可利用的多个节点108,那么在步骤215动态启动引擎105使用任何合适的技术选择第一个可以利用的计算节点108。例如,动态启动引擎105可以根据物理位置、虚拟位置、应用114的兼容性、处理器速度或任何其它合适的特征选择节点108。在判断步骤220,动态启动引擎105确定被选择的节点是否与应用114兼容。如果节点108不与应用114兼容,那么动态启动引擎105在步骤225中可以使用任何合适的技术移除所选择的节点。接着,在步骤230,动态启动引擎105根据软件应用114动态地选择策略132。例如,动态启动引擎105可以确定三个节点108同时执行软件应用114。根据这一确定,动态启动引擎105在策略132中定位第4个逻辑节点108。根据选择的策略132,在步骤235中,动态启动引擎105用指向新启动映像131的指针闪现(flash)被选择的节点,并在步骤237中将虚拟本地磁盘映像134与其关联。如上所述,动态启动引擎105可以闪现EEPROM111或其它任何合适的部件。接着,在步骤240,动态启动引擎105使用新启动映像131启动被选择的节点108。一旦节点108被重新启动(或如果节点已与应用114兼容),那么在步骤245中动态启动引擎105在选择的节点108上执行应用114,方法200结束。
返回到判断步骤210,如果没有可用的计算节点108,那么在步骤250,动态启动引擎105为应用114选择一个最适宜的已被使用的节点108。最适宜的节点108的选择或以用任何适当的方式进行,例如确定最少被使用的节点108、选择一个兼容节点108或确定一些其它“最优”。在步骤255,动态启动引擎105中止在选择的节点108上的当前进程。动态启动引擎105可以使用任何适当技术如执行一个特定应用命令、使用操作系统终止进程和其它技术来终止进程。在判断步骤260,动态启动引擎105确定被选择的节点108是否与应用114兼容。如果节点108与应用114不兼容,那么在步骤265动态启动引擎105使用任何适当的技术移除被选择的节点。接着,在步骤270,动态启动引擎105根据软件应用114动态地选择策略132。例如,动态启动引擎105可以确定三个节点108同时执行软件应用114。根据这一确定,动态启动引擎105在策略132中定位第4个逻辑节点108。根据选择的策略132,在步骤275中,动态启动引擎105用指向新启动映像131的指针闪现(flash)被选择的节点,并在步骤277中将虚拟本地磁盘映像134与其关联。如上所述,资源管理引擎可以闪现EEPROM111或其它任何合适的部件。接着,在步骤280,动态启动引擎105使用新启动映像131和虚拟本地磁盘映像134启动被选择的节点108。一旦节点108被重新启动(或如果节点已与应用114兼容),那么在步骤285中动态启动引擎105在选择的节点108上执行应用114,方法200结束。
前述的流程图和相关的描述只是举例说明示例方法200。为了执行这些或其它任务,系统100考虑了使用任何用于执行这些或其他任务的适当的技术。因此,该流程图中的许多步骤可以同时发生和/或以与显示的顺序不同的顺序发生。而且,系统100可以使用增加了步骤、更少的步骤和/或不同步骤的方法,只要这些方法是适当的。
虽然本公开内容已根据某一实施例和通常关联的方法进行了描述,这些实施例和方法的改变和置换对本领域技术人员来说是显然的。因此,上述示例性实施例的描述没有限定或限制本公开内容。在不脱离本公开内容的精神和范围的前提下,其它变化、替换和改变也是可以的。

Claims (45)

1、一种用于计算机集群虚拟化的方法,包括:
选择一分布式应用;
确定所述分布式应用是否需要更多的资源用于执行;
响应于所述分布式应用需要更多的资源用于执行,选择多个节点中的一个;
确定所选择的所述多个节点中的一个与所述分布式应用是否兼容;
响应于所选择的所述多个节点中的一个与所述分布式应用相兼容,在所选择的所述多个节点中的一个上执行所述分布式应用;
响应于所选择的所述多个节点中的一个与所述分布式应用不兼容,检索与所述分布式应用相关联的一策略;
至少部分根据检索到的策略,重新设置所选择的所述多个节点中的一个的启动映像,所述启动映像与所述分布式应用相兼容;以及
至少部分根据检索到的策略,将一虚拟磁盘映像与所选择的所述多个节点中的一个相关联;以及
使用相关联的虚拟磁盘映像在所选择的所述多个节点中的一个上执行至少一部分所述分布式应用。
2、如权利要求1的方法,所述应用在所述多个节点的子集上执行,且该方法进一步包括:
将节点的子集与检索到的策略相比较;以及
根据该比较选择与所述分布式应用相兼容的多个启动映像中的一个。
3、如权利要求2的方法,其中将节点的子集与检索到的策略相比较包括:
确定子集中的节点的最小或最大数量;以及
根据所述策略和所述子集中的节点的最小或最大数量选择所述启动映像。
4、如权利要求2的方法,其中所述节点的子集中的每一个都和与所述分布式应用相兼容的所述多个启动映像中的一个相关联。
5、如权利要求1的方法,其中选择多个节点中的一个包括:
确定所述多个节点中的一个或多个是否没有被第二分布式应用所使用;以及
响应于至少一个所述节点没有被使用,选择没有被使用的节点中的一个。
6、如权利要求5的方法,响应于没有节点没有被使用,进一步包括根据下述内容的一个或多个选择一个由所述第二分布式应用使用的节点:
所述检索到的策略;
最少被使用的节点;
特定应用环境的优先权;以及
所选择的所述多个节点中的一个与所选择的分布式应用的兼容性。
7、如权利要求6的方法,其中重新设置所选择的所述多个节点中的一个的启动映像包括:
自动地关闭所选择的所述多个节点中的一个;
重新设置所选择的所述多个节点中的一个的启动映像;以及
使用该重新设置的启动映像重新启动所选择的所述多个节点中的一个。
8、如权利要求7的方法,进一步包括:在关闭所述节点前终止与所述第二分布式应用相关联的任何进程。
9、如权利要求1的方法,其中,所述策略包括多个对启动映像的引用,每个引用和与所述分布式应用相兼容的多个节点中的一个相关联。
10、如权利要求1的方法,其中,所述策略包括一个或多个用于确定节点的选择定时的参数。
11、如权利要求1的方法,其中,所述启动映像包括一个远程存储在存储区网络中的启动映像。
12、如权利要求1的方法,其中所选择的所述多个节点中的一个在重置前与第一启动映像相关联,并且从重置开始与第二启动映像相关联,所述第一和第二启动映像在以下至少一个特征上有区别:
操作系统;
系统配置;以及
分布式应用参数。
13、如权利要求1的方法,进一步包括:
确定多个节点的一个中的故障,所述多个节点中的故障节点执行至少一部分所选择的分布式应用;以及
其中选择多个节点中的一个包括响应于所述故障而选择剩余节点中的一个。
14、如权利要求1的方法,其中所述多个节点中的每一个包括相同的处理器体系结构。
15、如权利要求1的方法,其中选择多个节点中的一个包括在一个预先确定的时间选择多个节点中的一个。
16、一种用于计算机集群虚拟化的系统,包括:
用于选择一分布式应用的装置;
用于确定所述分布式应用是否需要更多的资源用于执行的装置;
用于响应于所述分布式应用需要更多的资源用于执行,选择多个节点中的一个的装置;
用于确定所选择的所述多个节点中的一个与所述分布式应用是否兼容的装置;
用于响应于所选择的所述多个节点中的一个与所述分布式应用相兼容,在所选择的所述多个节点中的一个上执行所述分布式应用的装置;
用于响应于所选择的所述多个节点中的一个与所述分布式应用不兼容,检索与所述分布式应用相关联的一策略的装置;
用于至少部分根据检索到的策略,重新设置所选择的所述多个节点中的一个的启动映像的装置,所述启动映像与所述分布式应用相兼容;以及
用于至少部分根据检索到的策略,将一虚拟磁盘映像与所选择的所述多个节点中的一个相关联的装置;和
用于使用该关联的虚拟磁盘映像在所选择的所述多个节点中的一个上执行至少一部分所述分布式应用的装置。
17、如权利要求16的系统,所述应用在所述多个节点的子集上执行,且所述系统进一步包括:
用于将节点的子集与检索到的策略相比较的装置;以及
用于根据该比较选择与所述分布式应用相兼容的多个启动映像中的一个的装置。
18、如权利要求17的系统,其中所述用于将节点的子集与检索到的策略相比较的装置包括:
用于确定子集中的节点的最小或最大数量的装置;以及
用于根据所述策略和所述子集中的节点的最小或最大数量选择所述启动映像的装置。
19、如权利要求17的系统,其中所述节点的子集中的每一个都和与所述分布式应用相兼容的所述多个启动映像中的一个相关联。
20、如权利要求16的系统,其中所述用于选择多个节点中的一个的装置包括:
用于确定所述多个节点中的一个或多个是否没有被第二分布式应用所使用的装置;以及
用于响应于至少一个所述节点没有被使用,选择没有被使用的节点中的一个的装置。
21、如权利要求20的系统,响应于没有节点没有被使用,进一步包括:用于根据下述内容的一个或多个选择一个由所述第二分布式应用使用的节点的装置:
所述检索到的策略;
最少被使用的节点;
特定应用环境的优先权;以及
所选择的所述多个节点中的一个与所选择的分布式应用的兼容性。
22、如权利要求21的系统,其中所述用于重新设置所选择的所述多个节点中的一个的启动映像的装置包括:
用于自动地关闭所选择的所述多个节点中的一个的装置;
用于重新设置所选择的所述多个节点中的一个的启动映像的装置;以及
用于使用该重新设置的启动映像重新启动所选择的所述多个节点中的一个的装置。
23、如权利要求22的系统,进一步包括:用于在关闭所述节点前终止与所述第二分布式应用相关联的任何进程的装置。
24、如权利要求16的系统,其中所述策略包括多个对启动映像的引用,每个引用和与与所述分布式应用相兼容的多个节点中的一个相关联。
25、如权利要求16的系统,其中所述策略包括一个或多个用于确定节点的选择定时的参数。
26、如权利要求16的系统,其中所述启动映像包括一个远程存储在存储区网络中的启动映像。
27、如权利要求16的系统,其中所选的所述多个节点中的一个在重置前与第一启动映像相关联,并且从重置开始与第二启动映像相关联,所述第一和第二启动映像在以下至少一个特征上有区别:
操作系统;
系统配置;以及
分布式应用参数。
28、如权利要求16的系统,进一步包括:
引用确定多个节点的一个中的故障的装置,所述多个节点中的故障节点执行至少一部分所选择的分布式应用;以及
其中所述用于选择多个节点中的一个的装置包括用于响应于所述故障而选择剩余节点中的一个的装置。
29、如权利要求16的系统,其中所述多个节点中的每一个包括相同的处理器体系结构。
30、如权利要求16的系统,其中所述用于选择多个节点中的一个的装置包括用于在一个预先确定的时间选择多个节点中的一个的装置。
31、一种用于计算机集群虚拟化的系统,包括:
多个计算节点;以及
一管理节点包括:
用于选择一分布式应用的装置;
用于确定所述分布式应用是否需要更多的资源用于执行的装置;
用于响应于所述分布式应用需要更多的资源用于执行,选择多个节点中的一个的装置;
用于确定所选择的所述多个节点中的一个与所述分布式应用是否兼容的装置;
用于响应于所选择的所述多个节点中的一个与所述分布式应用相兼容,在所选择的所述多个节点中的一个上执行所述分布式应用的装置;
用于响应于所选择的所述多个节点中的一个与所述分布式应用不兼容,检索与所述分布式应用相关联的一策略的装置;
用于至少部分根据检索到的策略,重新设置所选择的所述多个节点中的一个的启动映像,该启动映像与该分布式应用相兼容的装置;以及
用于至少部分根据检索到的策略,将一虚拟磁盘映像与所选择的所述多个节点中的一个相关联的装置;以及
用于使用该关联的虚拟磁盘映像在所选择的所述多个节点中的一个上执行至少一部分所述分布式应用的装置。
32、如权利要求31的系统,所述应用在所述多个节点的子集上执行,且所述管理节点进一步包括:
用于将节点的子集与检索到的策略相比较的装置;以及
用于根据该比较选择与所述分布式应用相兼容的多个启动映像中的一个的装置。
33、如权利要求32的系统,其中用于将节点的子集与检索到的策略相比较的装置包括:
用于确定子集中的节点的最小或最大数量的装置;以及
用于根据所述策略和所述子集中的节点的最小或最大数量选择所述启动映像的装置。
34、如权利要求32的系统,其中所述节点的子集中的每一个都和与所述分布式应用相兼容的所述多个启动映像中的一个相关联。
35、如权利要求31的系统,其中用于选择多个节点中的一个的装置包括:
用于确定所述多个节点中的一个或多个是否没有被第二分布式应用所使用的装置;以及
用于响应于至少一个所述节点没有被使用,选择没有被使用的节点中的一个的装置。
36、如权利要求35的系统,其中所述管理节点进一步包括:用于响应于没有节点没有被使用,根据下述内容的一个或多个选择一个由所述第二分布式应用使用的节点的装置:
所述检索到的策略;
最少被使用的节点;
特定应用环境的优先权;以及
所选择的所述多个节点中的一个与所选择的分布式应用的兼容性。
37、如权利要求36的系统,其中用于重新设置所选择的所述多个节点中的一个的启动映像的装置包括:
用于自动地关闭所选择的所述多个节点中的一个的装置;
用于重新设置所选择的所述多个节点中的一个的启动映像的装置;以及
用于使用该重新设置的启动映像重新启动所选择的所述多个节点中的一个的装置。
38、如权利要求37的系统,其中所述管理节点进一步包括:用于在关闭所述节点前终止与所述第二分布式应用相关联的任何进程的装置。
39、如权利要求31的系统,其中所述策略包括多个对启动映像的引用,每个引用和与所述分布式应用相兼容的多个节点中的一个相关联。
40、如权利要求31的系统,其中所述策略包括一个或多个用于确定节点的选择定时的参数。
41、如权利要求31的系统,其中所述启动映像包括一个远程存储在存储区网络中的启动映像。
42、如权利要求31的系统,其中所选择的所述多个节点中的一个在重置前与第一启动映像相关联,并且从重置开始与第二启动映像相关联,所述第一和第二启动映像在以下至少一个特征上有区别:
操作系统;
系统配置;以及
分布式应用参数。
43、如权利要求31的系统,其中该管理节点进一步包括:
用于确定多个节点的一个中的故障,所述多个节点中的故障节点执行至少一部分所选择的分布式应用的装置;以及
其中用于选择多个节点中的一个的装置包括:用于响应于所述故障而选择剩余节点中的一个的装置。
44、如权利要求31的系统,其中所述多个节点中的每一个包括相同的处理器体系结构。
45、如权利要求31的系统,其中用于选择多个节点中的一个的装置包括:用于在一个预先确定的时间选择多个节点中的一个的装置。
CNB2005100817193A 2004-04-15 2005-04-15 使用动态启动映像和虚拟盘的计算机集群虚拟化的系统和方法 Active CN100447746C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/825,345 US8190714B2 (en) 2004-04-15 2004-04-15 System and method for computer cluster virtualization using dynamic boot images and virtual disk
US10/825,345 2004-04-15

Publications (2)

Publication Number Publication Date
CN1700178A CN1700178A (zh) 2005-11-23
CN100447746C true CN100447746C (zh) 2008-12-31

Family

ID=34940758

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100817193A Active CN100447746C (zh) 2004-04-15 2005-04-15 使用动态启动映像和虚拟盘的计算机集群虚拟化的系统和方法

Country Status (13)

Country Link
US (1) US8190714B2 (zh)
EP (1) EP1594057B1 (zh)
JP (1) JP2005302039A (zh)
KR (1) KR101173712B1 (zh)
CN (1) CN100447746C (zh)
AT (1) ATE474265T1 (zh)
CA (1) CA2503773C (zh)
DE (1) DE602005022249D1 (zh)
HK (1) HK1078957A1 (zh)
IL (1) IL178607A (zh)
MY (1) MY143931A (zh)
TW (1) TWI287713B (zh)
WO (1) WO2005106655A1 (zh)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050114595A1 (en) * 2003-11-26 2005-05-26 Veritas Operating Corporation System and method for emulating operating system metadata to provide cross-platform access to storage volumes
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
US8190714B2 (en) 2004-04-15 2012-05-29 Raytheon Company System and method for computer cluster virtualization using dynamic boot images and virtual disk
US8336040B2 (en) 2004-04-15 2012-12-18 Raytheon Company System and method for topology-aware job scheduling and backfilling in an HPC environment
US9178784B2 (en) 2004-04-15 2015-11-03 Raytheon Company System and method for cluster management based on HPC architecture
US20050235055A1 (en) * 2004-04-15 2005-10-20 Raytheon Company Graphical user interface for managing HPC clusters
US8335909B2 (en) 2004-04-15 2012-12-18 Raytheon Company Coupling processors to each other for high performance computing (HPC)
US7711977B2 (en) * 2004-04-15 2010-05-04 Raytheon Company System and method for detecting and managing HPC node failure
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US7577959B2 (en) * 2004-06-24 2009-08-18 International Business Machines Corporation Providing on-demand capabilities using virtual machines and clustering processes
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
CA2586763C (en) 2004-11-08 2013-12-17 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
US8244882B2 (en) * 2004-11-17 2012-08-14 Raytheon Company On-demand instantiation in a high-performance computing (HPC) system
US7475274B2 (en) * 2004-11-17 2009-01-06 Raytheon Company Fault tolerance and recovery in a high-performance computing (HPC) system
US7433931B2 (en) * 2004-11-17 2008-10-07 Raytheon Company Scheduling in a high-performance computing (HPC) system
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9075657B2 (en) 2005-04-07 2015-07-07 Adaptive Computing Enterprises, Inc. On-demand access to compute resources
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
WO2006112980A2 (en) 2005-03-16 2006-10-26 Cluster Resources, Inc. Reserving resources in an on-demand compute environment from a local compute environment
US20110258320A1 (en) * 2005-04-07 2011-10-20 Adaptive Computing Enterprises, Inc. Elastic management of compute resources between a web server and an on-demand compute environment
US8484213B2 (en) * 2005-08-31 2013-07-09 International Business Machines Corporation Heterogenous high availability cluster manager
US8370416B2 (en) * 2006-04-26 2013-02-05 Hewlett-Packard Development Company, L.P. Compatibility enforcement in clustered computing systems
CN101169725A (zh) * 2006-10-23 2008-04-30 国际商业机器公司 随需个人计算机供应系统和方法
US8141090B1 (en) * 2007-04-24 2012-03-20 Hewlett-Packard Development Company, L.P. Automated model-based provisioning of resources
US8065676B1 (en) 2007-04-24 2011-11-22 Hewlett-Packard Development Company, L.P. Automated provisioning of virtual machines for a virtual machine buffer pool and production pool
US8069341B2 (en) * 2007-06-29 2011-11-29 Microsoft Corporation Unified provisioning of physical and virtual images
US9262366B2 (en) * 2007-09-21 2016-02-16 Microsoft Technology Licensing, Llc Software deployment in large-scale networked systems
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US20090113408A1 (en) * 2007-10-30 2009-04-30 Telefonaktiebolaget Lm Ericsson (Publ) System synchronization in cluster
US9015704B2 (en) 2008-03-24 2015-04-21 International Business Machines Corporation Context agent injection using virtual machine introspection
KR101398935B1 (ko) * 2008-04-29 2014-06-27 삼성전자주식회사 가상화를 이용한 시스템 복원 방법 및 장치
WO2010008706A1 (en) * 2008-07-17 2010-01-21 Lsi Corporation Systems and methods for booting a bootable virtual storage appliance on a virtualized server platform
CN102177499B (zh) * 2008-10-08 2014-12-17 惠普开发有限公司 具有定制镜像的固件存储介质
US9087066B2 (en) * 2009-04-24 2015-07-21 Swish Data Corporation Virtual disk from network shares and file servers
US9239840B1 (en) 2009-04-24 2016-01-19 Swish Data Corporation Backup media conversion via intelligent virtual appliance adapter
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US8639658B1 (en) * 2010-04-21 2014-01-28 Symantec Corporation Cache management for file systems supporting shared blocks
US9684712B1 (en) * 2010-09-28 2017-06-20 EMC IP Holding Company LLC Analyzing tenant-specific data
US9237188B1 (en) * 2012-05-21 2016-01-12 Amazon Technologies, Inc. Virtual machine based content processing
US9110670B2 (en) 2012-10-19 2015-08-18 Microsoft Technology Licensing, Llc Energy management by dynamic functionality partitioning
US9417925B2 (en) * 2012-10-19 2016-08-16 Microsoft Technology Licensing, Llc Dynamic functionality partitioning
CN103116569A (zh) * 2012-10-31 2013-05-22 劲智数位科技股份有限公司 操作系统环境调整的丛集式计算机系统
US20140122670A1 (en) * 2012-11-01 2014-05-01 Intigua Inc. System and method for automated system management
US9167002B2 (en) * 2013-08-15 2015-10-20 Microsoft Technology Licensing, Llc Global platform health management
FR3011151B1 (fr) * 2013-09-20 2017-01-13 Bull Sas Procede de configuration d'au moins un nœud d'une grappe d'ordinateurs
RU2600538C2 (ru) * 2014-04-08 2016-10-20 Интел Корпорейшн Запуск приложения на основе интерфейса передачи сообщения (mpi) в гетерогенной среде
RU2580425C1 (ru) * 2014-11-28 2016-04-10 Общество С Ограниченной Ответственностью "Яндекс" Способ структуризации хранящихся объектов в связи с пользователем на сервере и сервер
US9762454B2 (en) * 2015-05-08 2017-09-12 Rockwell Automation Technologies, Inc. System and method to capture and document cross-product compatibility status information for industrial devices
US10387011B2 (en) 2015-05-08 2019-08-20 Rockwell Automation Technologies, Inc. System and method to capture and document cross-product compatibility status information for industrial devices
KR101644958B1 (ko) * 2015-12-23 2016-08-12 한국과학기술정보연구원 다중 사용자 맞춤형 컴퓨팅 자원 제공을 위한 클러스터 구축 방법 및 클러스터 구축 장치
US10237335B2 (en) * 2016-06-15 2019-03-19 Advanced Micro Devices, Inc. Managing cluster-level performance variability without a centralized controller
US10289785B1 (en) * 2016-09-15 2019-05-14 Xilinx, Inc. Platform architecture creation for a system-on-chip
US10387165B2 (en) 2016-10-25 2019-08-20 International Business Machines Corporation Choosing optimum nodes to boot in multi-node server
CN107147532B (zh) * 2017-05-27 2020-03-06 杭州迪普科技股份有限公司 一种分布式设备的虚拟化方法和装置
US20190004816A1 (en) * 2017-06-29 2019-01-03 Dell Products L.P. Systems and methods for heterogeneous system on a chip servers
US11237841B2 (en) 2019-08-21 2022-02-01 Micron Technology, Inc. Configurable media structure

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005276A1 (en) * 2001-06-28 2003-01-02 Ibm Corporation Method and system for booting of a target device in a network environment based on automatic client discovery and scan
WO2003005192A1 (en) * 2001-07-04 2003-01-16 Idékapital Ab A system and a method for selecting a preconfigured operating system for a server

Family Cites Families (120)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4885770A (en) * 1987-09-04 1989-12-05 Digital Equipment Corporation Boot system for distributed digital data processing system
US4868818A (en) 1987-10-29 1989-09-19 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Fault tolerant hypercube computer system architecture
US5020059A (en) 1989-03-31 1991-05-28 At&T Bell Laboratories Reconfigurable signal processor
US5396635A (en) * 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
US5301104A (en) 1990-08-07 1994-04-05 Honeywell Inc. Method for allocating processing elements interconnected in a hypercube topology
US5280607A (en) 1991-06-28 1994-01-18 International Business Machines Corporation Method and apparatus for tolerating faults in mesh architectures
JPH05274178A (ja) 1992-03-25 1993-10-22 Fujitsu Ltd 並列計算機デバッグ結果表示処理方式
CA2106280C (en) 1992-09-30 2000-01-18 Yennun Huang Apparatus and methods for fault-tolerant computing employing a daemon monitoring process and fault-tolerant library to provide varying degrees of fault tolerance
US5781715A (en) 1992-10-13 1998-07-14 International Business Machines Corporation Fault-tolerant bridge/router with a distributed switch-over mechanism
US5513313A (en) 1993-01-19 1996-04-30 International Business Machines Corporation Method for generating hierarchical fault-tolerant mesh architectures
US5450578A (en) 1993-12-23 1995-09-12 Unisys Corporation Method and apparatus for automatically routing around faults within an interconnect system
JP3541212B2 (ja) 1993-12-28 2004-07-07 富士通株式会社 プロセッサ割当て装置
AU700629B2 (en) 1994-03-22 1999-01-07 Hyperchip Inc. Efficient direct cell replacement fault tolerant architecture supporting completely integrated systems with means for direct communication with system operator
US6408402B1 (en) 1994-03-22 2002-06-18 Hyperchip Inc. Efficient direct replacement cell fault tolerant architecture
JPH08227356A (ja) 1994-12-21 1996-09-03 Tec Corp データ処理装置
US5682491A (en) 1994-12-29 1997-10-28 International Business Machines Corporation Selective processing and routing of results among processors controlled by decoding instructions using mask value derived from instruction tag and processor identifier
US5603044A (en) 1995-02-08 1997-02-11 International Business Machines Corporation Interconnection network for a multi-nodal data processing system which exhibits incremental scalability
US5872928A (en) * 1995-02-24 1999-02-16 Cabletron Systems, Inc. Method and apparatus for defining and enforcing policies for configuration management in communications networks
US5889953A (en) * 1995-05-25 1999-03-30 Cabletron Systems, Inc. Policy management and conflict resolution in computer networks
US5805785A (en) 1996-02-27 1998-09-08 International Business Machines Corporation Method for monitoring and recovery of subsystems in a distributed/clustered system
US6006242A (en) * 1996-04-05 1999-12-21 Bankers Systems, Inc. Apparatus and method for dynamically creating a document
US5805786A (en) 1996-07-23 1998-09-08 International Business Machines Corporation Recovery of a name server managing membership of a domain of processors in a distributed computing environment
US6393581B1 (en) 1996-08-29 2002-05-21 Cornell Research Foundation, Inc. Reliable time delay-constrained cluster computing
JPH10116261A (ja) 1996-10-14 1998-05-06 Hitachi Ltd 並列計算機システムのチェックポイントリスタート方法
KR100207598B1 (ko) 1997-01-27 1999-07-15 윤종용 상호연결망으로서 파이브 채널을 사용한 클러스터시스템
US5933631A (en) * 1997-03-17 1999-08-03 International Business Machines Corporation Dynamic boot filesystem selection
US6029246A (en) * 1997-03-31 2000-02-22 Symantec Corporation Network distributed system for updating locally secured objects in client machines
US5991877A (en) * 1997-04-03 1999-11-23 Lockheed Martin Corporation Object-oriented trusted application framework
US6088330A (en) 1997-09-09 2000-07-11 Bruck; Joshua Reliable array of distributed computing nodes
US6167502A (en) 1997-10-10 2000-12-26 Billions Of Operations Per Second, Inc. Method and apparatus for manifold array processing
US6230252B1 (en) 1997-11-17 2001-05-08 Silicon Graphics, Inc. Hybrid hypercube/torus architecture
US6633945B1 (en) 1997-12-07 2003-10-14 Conexant Systems, Inc. Fully connected cache coherent multiprocessing systems
US6477663B1 (en) 1998-04-09 2002-11-05 Compaq Computer Corporation Method and apparatus for providing process pair protection for complex applications
US6189100B1 (en) * 1998-06-30 2001-02-13 Microsoft Corporation Ensuring the integrity of remote boot client data
US6195760B1 (en) 1998-07-20 2001-02-27 Lucent Technologies Inc Method and apparatus for providing failure detection and recovery with predetermined degree of replication for distributed applications in a network
US6466932B1 (en) * 1998-08-14 2002-10-15 Microsoft Corporation System and method for implementing group policy
US6683696B1 (en) * 1998-10-27 2004-01-27 Hewlett-Packard Development Company, L.P. Filter based data imaging method for an image forming device
US6158010A (en) * 1998-10-28 2000-12-05 Crosslogix, Inc. System and method for maintaining security in a distributed computer network
US6691165B1 (en) 1998-11-10 2004-02-10 Rainfinity, Inc. Distributed server cluster for controlling network traffic
US6496941B1 (en) 1998-12-29 2002-12-17 At&T Corp. Network disaster recovery and analysis tool
US6480972B1 (en) 1999-02-24 2002-11-12 International Business Machines Corporation Data processing system and method for permitting a server to remotely perform diagnostics on a malfunctioning client computer system
US6453426B1 (en) 1999-03-26 2002-09-17 Microsoft Corporation Separately storing core boot data and cluster configuration data in a server cluster
US6408326B1 (en) * 1999-04-20 2002-06-18 Microsoft Corporation Method and system for applying a policy to binary data
US6718486B1 (en) 2000-01-26 2004-04-06 David E. Lovejoy Fault monitor for restarting failed instances of the fault monitor
US6597956B1 (en) * 1999-08-23 2003-07-22 Terraspring, Inc. Method and apparatus for controlling an extensible computing system
US6415323B1 (en) 1999-09-03 2002-07-02 Fastforward Networks Proximity-based redirection system for robust and scalable service-node location in an internetwork
US6741983B1 (en) 1999-09-28 2004-05-25 John D. Birdwell Method of indexed storage and retrieval of multidimensional information
US6629266B1 (en) 1999-11-17 2003-09-30 International Business Machines Corporation Method and system for transparent symptom-based selective software rejuvenation
DE19957806A1 (de) * 1999-12-01 2001-06-07 Bsh Bosch Siemens Hausgeraete Wärmeisolierende Wandung
US6748437B1 (en) * 2000-01-10 2004-06-08 Sun Microsystems, Inc. Method for creating forwarding lists for cluster networking
WO2001061930A1 (fr) * 2000-02-21 2001-08-23 Kabushiki Kaisha Toshiba Dispositif de commande de moniteur et procede d'installation d'une voie de communication
US6460149B1 (en) 2000-03-03 2002-10-01 International Business Machines Corporation Suicide among well-mannered cluster nodes experiencing heartbeat failure
WO2001071524A1 (en) 2000-03-22 2001-09-27 Yotta Yotta, Inc. Method and system for providing multimedia information on demand over wide area networks
US6785713B1 (en) 2000-05-08 2004-08-31 Citrix Systems, Inc. Method and apparatus for communicating among a network of servers utilizing a transport mechanism
US6658504B1 (en) 2000-05-16 2003-12-02 Eurologic Systems Storage apparatus
US20040034794A1 (en) * 2000-05-28 2004-02-19 Yaron Mayer System and method for comprehensive general generic protection for computers against malicious programs that may steal information and/or cause damages
JP4292693B2 (ja) 2000-07-07 2009-07-08 株式会社日立製作所 計算機資源分割装置および資源分割方法
US7032119B2 (en) * 2000-09-27 2006-04-18 Amphus, Inc. Dynamic power and workload management for multi-server system
JP2002108839A (ja) 2000-09-28 2002-04-12 Mitsubishi Electric Corp 通信ネットワークシステム、ジョブ割当方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
KR20010000624A (ko) 2000-10-10 2001-01-05 최은석 고성능 컴퓨터를 이용한 연산기능 제공방법
US7428583B1 (en) * 2000-10-31 2008-09-23 Intel Corporation Network policy distribution
US6748737B2 (en) 2000-11-17 2004-06-15 Patrick Alan Lafferty Regenerative energy storage and conversion system
US7055148B2 (en) * 2000-12-07 2006-05-30 Hewlett-Packard Development Company, L.P. System and method for updating firmware
US6735660B1 (en) 2000-12-21 2004-05-11 International Business Machines Corporation Sideband signal transmission between host and input/output adapter
WO2002084509A1 (en) 2001-02-24 2002-10-24 International Business Machines Corporation A novel massively parrallel supercomputer
US7107337B2 (en) 2001-06-07 2006-09-12 Emc Corporation Data storage system with integrated switching
US6952766B2 (en) 2001-03-15 2005-10-04 International Business Machines Corporation Automated node restart in clustered computer system
US7028228B1 (en) 2001-03-28 2006-04-11 The Shoregroup, Inc. Method and apparatus for identifying problems in computer networks
US6918051B2 (en) 2001-04-06 2005-07-12 International Business Machines Corporation Node shutdown in clustered computer system
US6820221B2 (en) 2001-04-13 2004-11-16 Hewlett-Packard Development Company, L.P. System and method for detecting process and network failures in a distributed system
US7231430B2 (en) * 2001-04-20 2007-06-12 Egenera, Inc. Reconfigurable, virtual processing system, cluster, network and method
US6675264B2 (en) 2001-05-07 2004-01-06 International Business Machines Corporation Method and apparatus for improving write performance in a cluster-based file system
EP1402355B1 (en) 2001-05-23 2018-08-29 Tekelec Global, Inc. Methods and systems for automatically configuring network monitoring system
US6950833B2 (en) 2001-06-05 2005-09-27 Silicon Graphics, Inc. Clustered filesystem
US8010558B2 (en) 2001-06-05 2011-08-30 Silicon Graphics International Relocation of metadata server with outstanding DMAPI requests
US8032625B2 (en) 2001-06-29 2011-10-04 International Business Machines Corporation Method and system for a network management framework with redundant failover methodology
US20030005039A1 (en) 2001-06-29 2003-01-02 International Business Machines Corporation End node partitioning using local identifiers
GB0116310D0 (en) 2001-07-04 2001-08-29 New Transducers Ltd Contact sensitive device
US7065764B1 (en) 2001-07-20 2006-06-20 Netrendered, Inc. Dynamically allocated cluster system
US7016299B2 (en) 2001-07-27 2006-03-21 International Business Machines Corporation Network node failover using path rerouting by manager component or switch port remapping
EP1283464A1 (en) * 2001-08-06 2003-02-12 Hewlett-Packard Company A boot process for a computer, a boot ROM and a computer having a boot ROM
US6922791B2 (en) 2001-08-09 2005-07-26 Dell Products L.P. Failover system and method for cluster environment
JP2003099412A (ja) 2001-09-21 2003-04-04 Hitachi Eng Co Ltd 超並列コンピュータ
US7073053B1 (en) * 2001-10-11 2006-07-04 Cisco Technology, Inc. Method and apparatus for a boot progression scheme for reliably initializing a system
GB2381713A (en) 2001-11-01 2003-05-07 3Com Corp Failover mechanism involving blocking of access of a malfunctioning server and continuing monitoring to enable unblocking of access if server recovers
US6904482B2 (en) 2001-11-20 2005-06-07 Intel Corporation Common boot environment for a modular server system
EP1318453A1 (en) 2001-12-07 2003-06-11 Hewlett-Packard Company Scheduling system, method and apparatus for a cluster
CA2365729A1 (en) 2001-12-20 2003-06-20 Platform Computing (Barbados) Inc. Topology aware scheduling for a multiprocessor system
US7046687B1 (en) 2002-01-16 2006-05-16 Tau Networks Configurable virtual output queues in a scalable switching system
US7093004B2 (en) 2002-02-04 2006-08-15 Datasynapse, Inc. Using execution statistics to select tasks for redundant assignment in a distributed computing platform
US6918063B2 (en) 2002-02-04 2005-07-12 International Business Machines Corporation System and method for fault tolerance in multi-node system
US7640547B2 (en) 2002-02-08 2009-12-29 Jpmorgan Chase & Co. System and method for allocating computing resources of a distributed computing system
DE10214067B4 (de) 2002-03-28 2010-01-21 Advanced Micro Devices, Inc., Sunnyvale Integrierter Schaltkreischip mit Hochgeschwindigkeitsdatenschnittstelle sowie zugehöriges Southbridgebauelement und Verfahren
US7043539B1 (en) * 2002-03-29 2006-05-09 Terraspring, Inc. Generating a description of a configuration for a virtual network system
US7139798B2 (en) 2002-05-17 2006-11-21 Groove Networks, Inc. Method and apparatus for connecting a secure peer-to-peer collaboration system to an external system
US7161904B2 (en) 2002-06-04 2007-01-09 Fortinet, Inc. System and method for hierarchical metering in a virtual router based network switch
JP3932994B2 (ja) 2002-06-25 2007-06-20 株式会社日立製作所 サーバ引継システムおよびその方法
DE10234992A1 (de) 2002-07-31 2004-02-19 Advanced Micro Devices, Inc., Sunnyvale Retry-Mechanismus für blockierende Schnittstellen
US7765299B2 (en) 2002-09-16 2010-07-27 Hewlett-Packard Development Company, L.P. Dynamic adaptive server provisioning for blade architectures
US7127597B2 (en) * 2002-09-24 2006-10-24 Novell, Inc. Mechanism for controlling boot decisions from a network policy directory based on client profile information
US20040210656A1 (en) 2003-04-16 2004-10-21 Silicon Graphics, Inc. Failsafe operation of storage area network
US7287179B2 (en) 2003-05-15 2007-10-23 International Business Machines Corporation Autonomic failover of grid-based services
US7007125B2 (en) 2003-06-24 2006-02-28 International Business Machines Corporation Pass through circuit for reduced memory latency in a multiprocessor system
US7379983B2 (en) * 2003-06-25 2008-05-27 International Business Machines Corporation Merging scalable nodes into single-partition merged system using service processors of nodes
US7644153B2 (en) 2003-07-31 2010-01-05 Hewlett-Packard Development Company, L.P. Resource allocation management in interactive grid computing systems
WO2005036405A1 (en) 2003-10-08 2005-04-21 Unisys Corporation Computer system para-virtualization using a hypervisor that is implemented in a partition of the host system
US7207039B2 (en) * 2003-12-24 2007-04-17 Intel Corporation Secure booting and provisioning
US7685597B1 (en) * 2004-02-20 2010-03-23 Sun Microsystems, Inc. System and method for management of characterized resources
US8484348B2 (en) 2004-03-05 2013-07-09 Rockstar Consortium Us Lp Method and apparatus for facilitating fulfillment of web-service requests on a communication network
US20050256942A1 (en) 2004-03-24 2005-11-17 Mccardle William M Cluster management system and method
US7711977B2 (en) 2004-04-15 2010-05-04 Raytheon Company System and method for detecting and managing HPC node failure
US8190714B2 (en) 2004-04-15 2012-05-29 Raytheon Company System and method for computer cluster virtualization using dynamic boot images and virtual disk
US8335909B2 (en) 2004-04-15 2012-12-18 Raytheon Company Coupling processors to each other for high performance computing (HPC)
US9178784B2 (en) 2004-04-15 2015-11-03 Raytheon Company System and method for cluster management based on HPC architecture
US8336040B2 (en) 2004-04-15 2012-12-18 Raytheon Company System and method for topology-aware job scheduling and backfilling in an HPC environment
US20050235055A1 (en) 2004-04-15 2005-10-20 Raytheon Company Graphical user interface for managing HPC clusters
US7475274B2 (en) 2004-11-17 2009-01-06 Raytheon Company Fault tolerance and recovery in a high-performance computing (HPC) system
US7433931B2 (en) 2004-11-17 2008-10-07 Raytheon Company Scheduling in a high-performance computing (HPC) system
US8244882B2 (en) 2004-11-17 2012-08-14 Raytheon Company On-demand instantiation in a high-performance computing (HPC) system
JP2007141305A (ja) 2005-11-16 2007-06-07 Hitachi Global Storage Technologies Netherlands Bv 磁気ディスク装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005276A1 (en) * 2001-06-28 2003-01-02 Ibm Corporation Method and system for booting of a target device in a network environment based on automatic client discovery and scan
WO2003005192A1 (en) * 2001-07-04 2003-01-16 Idékapital Ab A system and a method for selecting a preconfigured operating system for a server

Also Published As

Publication number Publication date
IL178607A0 (en) 2007-02-11
HK1078957A1 (en) 2006-03-24
US8190714B2 (en) 2012-05-29
CA2503773A1 (en) 2005-10-15
WO2005106655A1 (en) 2005-11-10
KR20060134211A (ko) 2006-12-27
ATE474265T1 (de) 2010-07-15
JP2005302039A (ja) 2005-10-27
DE602005022249D1 (de) 2010-08-26
IL178607A (en) 2011-10-31
TWI287713B (en) 2007-10-01
US20050234846A1 (en) 2005-10-20
KR101173712B1 (ko) 2012-08-13
EP1594057A1 (en) 2005-11-09
EP1594057B1 (en) 2010-07-14
CA2503773C (en) 2013-06-04
TW200614001A (en) 2006-05-01
MY143931A (en) 2011-07-29
CN1700178A (zh) 2005-11-23

Similar Documents

Publication Publication Date Title
CN100447746C (zh) 使用动态启动映像和虚拟盘的计算机集群虚拟化的系统和方法
US11855904B2 (en) Automated migration of compute instances to isolated virtual networks
US10803193B2 (en) Multi-tenant authorization framework in a data management and storage cluster
KR101925696B1 (ko) 대규모 데이터 스트림들의 획득, 저장, 및 소비를 위한 관리 서비스
US11467755B2 (en) Method and system for enabling agentless backup and restore operations on a container orchestration platform
US10284437B2 (en) Cloud-based virtual machines and offices
EP3069495B1 (en) Client-configurable security options for data streams
US9465697B2 (en) Provision of backup functionalities in cloud computing systems
KR101432463B1 (ko) 가상 기계 볼륨 데이터의 애플리케이션-일관성 백업 생성 방법
US10445186B1 (en) Associating a guest application within a virtual machine to create dependencies in backup/restore policy
US20230385096A1 (en) Asynchronous queries on secondary data cores in a distributed computing system
JP2017501515A (ja) データストリーム取り込み及び永続性ポリシ
WO2012113336A1 (zh) 一种在虚拟化环境中管理资源的系统及其实现方法
CN111343219B (zh) 计算服务云平台
US11941406B2 (en) Infrastructure (HCI) cluster using centralized workflows
US20200092286A1 (en) Multiple domain authentication using data management and storage node
US9632812B1 (en) Collecting data associated with virtual machines from various data sources
US9489271B1 (en) User interface for restoring databases
US10929250B2 (en) Method and system for reliably restoring virtual machines

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