CN101593136B - 使得计算机具有高可用性的方法和计算机系统 - Google Patents

使得计算机具有高可用性的方法和计算机系统 Download PDF

Info

Publication number
CN101593136B
CN101593136B CN200810098727.2A CN200810098727A CN101593136B CN 101593136 B CN101593136 B CN 101593136B CN 200810098727 A CN200810098727 A CN 200810098727A CN 101593136 B CN101593136 B CN 101593136B
Authority
CN
China
Prior art keywords
virtual machine
instruction
servant
host
log
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
CN200810098727.2A
Other languages
English (en)
Other versions
CN101593136A (zh
Inventor
张剑鸣
黄剑
向哲
金凌
夏寅贲
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN200810098727.2A priority Critical patent/CN101593136B/zh
Priority to US12/473,788 priority patent/US8020041B2/en
Publication of CN101593136A publication Critical patent/CN101593136A/zh
Application granted granted Critical
Publication of CN101593136B publication Critical patent/CN101593136B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • 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
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明提供了一种利用计算机获得高可用性的方法及其计算机系统,该系统包括:至少两个计算机,包括主计算机和仆计算机,并且每个计算机包含有虚拟机容器;在所述虚拟机容器上运行的虚拟机;使得这所述虚拟机容器执行虚拟机同步操作的通信信道,其中所述虚拟机容器的虚拟机同步操作通过虚拟机执行I/O指令来触发。

Description

使得计算机具有高可用性的方法和计算机系统
技术领域
本发明涉及一种容错计算机系统,具体而言,本发明涉及一种如何使得计算机具有高可用性的方法和计算机系统。 
背景技术
通常,计算机系统经常会由于各种原因导致各种故障,使得用户不能及时地完成相关的工作。计算机系统的这种故障被称为不可用性。本领域的技术人员一直在为克服计算机系统的各种情况的不可用性进行努力,以便使得计算机系统具有较高的可用性,或者说使得计算机系统在使用过程中具有高可靠性以及低故障率。 
为此,本领域中常用的方法就是为执行任务的主计算机配备一台备用计算机。主计算机执行用户所请求的任务并将其所执行的各种操作告知备用计算机,以便在主计算机出现故障时,备用计算机能够接管主计算机所需提供的服务。这样,提供给用户的服务不会因为主计算机的硬件故障而中断。但是,这种容错解决方案通常需要在两台计算机中安装特定的计算机硬件或者需要修改计算机的操作系统,这为那些不需要面对容错问题的用户增加了不必要的成本。为此,一种现有技术提出了在两台物理机上构建多个虚拟机,两台物理机上的虚拟机互为备份,通过虚拟机监视器获取虚拟机的I/O操作,并通过硬件支持的RR(恢复)寄存器记录指令执行的数量,从而执行操作的备份。在其中一个物理机的故障消除后,RR寄存器清零,使得主虚拟机与备份虚拟机进行同步。尽管这种方案解决了用户在成本以及操作程序的更新和修改方面的问题,但是其同步的速度并不能令用户满意。 
另一种现有的容错计算机系统是通过在两台物理机中构建主虚拟机以及仆虚拟机,利用两个虚拟机之间的同步进行双机热备,从而实现容错的目的。其中,虚拟机之间通过同步操作来实现虚拟机的同步。这种现有技术要求仆虚拟机复制主虚拟机的所有操作,即虚拟机之间频繁地处于同步触发状态,这使主虚拟机在实现虚拟机同步方面花费太多资源(CPU等),相应地减少了主计算机执行主要任务所需要的资源,影响了主计算机的主要性能。 
本发明的目的就是提供一种解决上述现有技术中技术问题的途径。具体而言,本发明目的是提供一种使得计算机具有高可用性的系统以及方法。 
发明内容
总体而言,本发明提供了一种使得计算机具有高可用性的方法,该方法包括:提供具有主虚拟机容器的主计算机以及具有仆虚拟机容器的仆计算机;在所述主虚拟机容器和仆虚拟机容器上分别运行主虚拟机和仆虚拟机;以及通过主计算机和仆计算机之间的通信信道,以I/O指令作为要被发送的指令的边界从主虚拟机向仆虚拟机发送所述指令,使得所述主虚拟机和仆虚拟机同步。 
相应地,本发明提供了一种使得计算机具有高可用性的计算机系统,该系统包括:具有主虚拟机容器的主计算机和具有仆虚拟机容器的仆计算机、分别在所述主虚拟机容器和仆虚拟机容器上运行的主虚拟机和仆虚拟机、主计算机和仆计算机之间的通信信道,其中所述主虚拟机通过所述通信信道,以I/O指令作为要被发送的指令的边界向所述仆虚拟机发送所述指令,使得所述主虚拟机和仆虚拟机同步。 
根据本发明的另一个方面,提供了一种计算机,包括虚拟机容器以及在所述虚拟机容器上运行的虚拟机,所述虚拟机包括:指令队列、主存以及日志存储器,其中,虚拟机将主存中的命令加载到其指令队列,执行指令队列中的各种指令以及将数据写入主存,并将指令队列中的各种命令以日志存储指令的形式写入虚拟机的日志存储器中,其中所述虚拟机用指令队列中的I/O指令作为处理边界来触发与另一台计算机的虚拟机同步操作。 
附图说明
下面参照附图仅作为示例详细描述本发明的实施例,其中: 
图1所示的是根据本发明一个实施例的计算机系统架构的示意图; 
图2所示的是根据本发明一个实施例的计算机系统的软件配置的示意图; 
图3是根据本发明一个实施例的使得至少两台计算机之间同步的方法的流程图。 
具体实施方式
下面结合说明书附图对本发明进行详细的描述。 
计算机系统的高可用性意味着即使在其中一个计算机存在故障时该计算机系统也能够连续地进行操作。本发明就提供了一种具有高可用性的计算机系统。图1所示的是一种具有高可用性的计算机系统的实施例。如图1所示,计算机系统由至少两台物理机(计算机)构成,其中一台作为主物理机1,另一台作为仆物理机6。这两台物理机例如通过服务器11或其他类似的通信信道彼此进行数据通信。服务器11还包括SAN存储器。每个物理机中都包含有一个虚拟机容器。主物理机上的虚拟机容器为主虚拟机容器2,仆物理机上的虚拟机容器为仆虚拟机容器7。每个虚拟机容器都有各自的主存3、8以及日志存储器4、9。两个虚拟机容器上的虚拟机上运行着相同的操作系统以及相同的应用程序。虚拟机在运行应用程序的过程中将各种指令运行的结果存储起来,并且将应用程序的操作的日志(journal)存储在日志存储器4、9中。虚拟机执行排列在各自指令队列5、10中的指令,并将执行的结果写入主存。根据本发明,虚拟机的行为分为两种,即存储器(或寄存器)读/写操作以及I/O操作(例如盘I/O)。根据本发明,计算机系统的主虚拟机通过指令队列中的I/O操作来触发主虚拟机和仆虚拟机之间的同步操作,也就是,本发明通过I/O操作的发生来触发同步操作。主虚拟机在执行指令队列5中的指令过程的同时,将两个相邻的同步点(I/O指令)之间各种命令以日志存储指令的形式保存在主虚拟机容器的日志存储器4中。在主虚拟机执行指令队列5中的指令的过程中,如果遇到I/O操作指令(同步点)时,将存储器日志存储器中存储的日志存储指令传输给仆虚拟机容器的日志存储器9,也就是,将日志存储器4的内容拷贝到日志存储器9中,供仆虚拟机执行。通过这种方式,两台虚拟机之间的同步能够高效快速地实现。 
图2是所示的是根据本发明的计算机系统的软件配置的示意图。如图2所示,物理机1和6分别包括各自的CPU、存储器以及输入输出装置的硬件集成13和15,操作系统14和16分别运行在相应的硬件集成上。虚拟机容器2和7分别运行在相应的操作系统14和16上。虚拟机容器2和7彼此进行同步。每个虚拟机容器上分别运行一个或多个应用程序17和18,每个虚拟机容器都占用一定的CPU空间。 
下面,对两台物理机中的虚拟机的同步操作过程进行详细的描述。在正常状态下,只有一个虚拟机容器为客户提供服务。主计算机通过客户IO信道 与客户进行交流。主虚拟机容器以及仆虚拟机容器使得用于两个处理器的CPU状态、主存、存储器存取、时钟以及中断请求处于同步状态。仆虚拟机容器保持存储器和IO配置的复本(replica)。仆虚拟机容器能够被动地存取客户IO信道。两个虚拟机容器的同步包括:CPU和主存状态以及存储器存取的同步、时钟同步、中断请求的同步以及批同步。CPU和主存状态以及存储器存取的同步,就是当两个虚拟机容器的CPU在相同的状态语境内从相同程序中的相同程序计数器开始运行时,对于运算和逻辑指令,它们在每个指令之后需要产生完全相同的状态类型,并且以相同的方式存取该存储器。时钟同步就是尽管运算和逻辑执行必须是相同的,但是当时间漂移(shift)时执行时间会不同。因此,当一个CPU到达一个点以便提取当前时间戳(stamp)时,它必须等待其对应的CPU一起到达该点。随后这一对同步虚拟机容器在时间戳方面达成一致,并且将以相同的值将其报告给两个处理器。中断请求的同步就是当两个虚拟机容器打算对其虚拟处理器发出一个中断(例如盘存取完全中断)时,其必须等待其对应虚拟机容器也发出这种中断。随后该同步虚拟机容器对在中断点达成一致,并且分别将中断发送给两个处理器。为了改进性能,通过同时使得一组存取同步来实现存储器不匹配检测。为了降低通信有效载荷的量,他们能够使用特征代码(例如,CRC,MD5)来验证彼此是否匹配,这就是批同步。 
返回参见图1,在虚拟机容器2和7的指令队列中基于应用程序的运行而排列了各种等待执行的指令。本发明将虚拟机容器的行为分为两种,即存储器(或寄存器)读/写操作以及I/O操作(例如盘I/O)。主虚拟机容器维持计算机的主存以及日志存储器并且向主存中加载各种指令。在指令队列中排列各种存储器读/写指令以及I/O指令,并且本发明虚拟机容器利用I/O指令作为处理边界(transaction boundary),即从前一条I/O指令到下一条I/O指令作为一个处理,也就是进行一次同步处理。在该处理过程中,主虚拟机容器执行诸如存储器写指令,以便将数据写入主存,并将该存储器读/写指令以日志存储指令的形式写入日志存储器4中。该主虚拟机从前一条I/O指令开始一直执行指令队列中的各种指令直到遇到后一条I/O指令为止。此时,主虚拟机执行该I/O指令,并将两条相邻的I/O指令之间的存储在日志存储器4中的日志存储指令拷贝到仆虚拟机容器的日志存储器9中。接着,仆虚拟机容器执行日志存储器9中的日志存储指令,以便将数据写入其主存中。通过 上述过程,两台物理机之间实现正常的同步操作。 
当主物理机出现故障或崩溃时,也就是当不匹配发生时或者主虚拟机进行不正确操作时,仆虚拟机容器将接管与客户的通信信道,独自运行而不与主虚拟机同步,并且向系统管理员发出通知。此时,仆虚拟机容器将起到幸存者的作用。通过比较程序计数器、CPU状态以及存储器存取,同步的虚拟机容器能够检测到主物理机出现了故障或崩溃等异常情况。检测的手段可以采用本领域常规的手段。当主虚拟机容器被修复后,仆虚拟机将CPU和主存状态、存储器存取、时钟以及中断表迁移到修复后的主虚拟机容器。此时,幸存者变成了主虚拟机容器,而修复虚拟机容器变成了仆虚拟机容器。 
图3所示的是根据本发明的使得两台计算机之间同步的方法的流程图。开始,在步骤S31启动物理机1和6并运行相关的应用程序。在步骤S32处,主虚拟机从主存中加载关于应用程序运行的各种指令到指令队列。在步骤S33,主虚拟机开始执行各种指令(或命令),包括I/O指令,并将执行指令的结果数据写入主存。在步骤S34处,将所执行的指令以日志存储指令的形式写入日志存储器中。在步骤S35处,判断所执行的指令是否为I/O指令。如果判断结果为“否”,则主虚拟机的进程返回到步骤S33,以继续执行指令队列中的下一条指令。如果判断结果为“是”,则主虚拟机的进程前进到步骤S36。在步骤S36处,主虚拟机将所执行的I/O指令与在该I/O指令之前的一条I/O指令之间的、存储在主虚拟机的日志存储中的日志存储指令发送到仆虚拟机容器的日志存储器中。随后,主虚拟机在执行完步骤S36之后,返回到步骤S32以重复上述步骤。而仆虚拟机在步骤S37处执行存储在其日志存储器中的日志存储指令,并将运行的数据写入其主存中。通过上述步骤的反复进行,实现主虚拟机容器和仆虚拟机容器之间的各种同步。 
本发明的描述是为了示例说明的目的而提供的,而不旨在是彻底无遗漏的,或者局限于所公开的实施例。很多修改和变更对于本领域的普通技术人员将是清楚的。选择这些实施例是为了说明本发明的原理及其实际应用,并且使得本领域的其他普通技术人员能够理解本发明,以便实现可能适于其他预期用途的具有各种修改的各种实施例。 

Claims (12)

1.一种使得计算机具有高可用性的方法,该方法包括:提供具有主虚拟机容器的主计算机以及具有仆虚拟机容器的仆计算机;在所述主虚拟机容器和仆虚拟机容器上分别运行主虚拟机和仆虚拟机;以及通过主计算机和仆计算机之间的通信信道,以I/O指令作为要被发送的指令的边界从主虚拟机向仆虚拟机发送所述指令,使得所述主虚拟机和仆虚拟机同步。
2.如权利要求1所述的方法,其中,所述使得所述主虚拟机和仆虚拟机同步包括使得主虚拟机和仆虚拟机的CPU寄存器状态及主存同步。
3.如权利要求1或2所述的方法,其还包括:主虚拟机从其主存中将指令加载到其指令队列,执行指令队列中的各种指令以及将数据写入主存,并将各种指令以日志存储指令的形式写入主虚拟机中日志存储器中。
4.如权利要求3所述的方法,其中,所述以I/O指令作为要被发送的指令的边界从主虚拟机向仆虚拟机发送所述指令包括:在遇到一条I/O指令后将在所述一条I/O指令和紧接于所述一条I/O指令之前的一条I/O指令之间的、存储在日志存储器中的日志存储指令发送到仆虚拟机的日志存储器。
5.如前权利要求4所述的方法,还包括:仆虚拟机执行其日志存储器中的日志存储指令,以便仆虚拟机的CPU寄存器状态及主存与主虚拟机的同步。
6.一种使得计算机具有高可用性的计算机系统,该系统包括:具有主虚拟机容器的主计算机和具有仆虚拟机容器的仆计算机、分别在所述主虚拟机容器和仆虚拟机容器上运行的主虚拟机和仆虚拟机、主计算机和仆计算机之间的通信信道,其中所述主虚拟机通过所述通信信道,以I/O指令作为要被发送的指令的边界向所述仆虚拟机发送所述指令,使得所述主虚拟机和仆虚拟机同步。
7.如权利要求6所述的计算机系统,其中,所述使得主虚拟机与仆虚拟机同步包括使得主虚拟机和仆虚拟机的CPU寄存器状态及主存同步。
8.如权利要求6或7所述的计算机系统,所述主虚拟机和仆虚拟机都包括:指令队列、主存以及日志存储器,其中,主虚拟机将主存中的命令加载到其指令队列,执行指令队列中的各种指令以及将数据写入主存,并将对应于指令队列中的各种命令以日志存储指令的形式保存在主虚拟机的日志存储器中。
9.如权利要求8所述的计算机系统,其中,所述主虚拟机在遇到一条I/O指令后,将在所述一条I/O指令和紧接于所述一条I/O指令之前的另一条I/O指令之间的、存储在主虚拟机的日志存储器中的日志存储指令发送到仆虚拟机的日志存储器。
10.如前权利要求9所述的计算机系统,还包括:仆虚拟机执行其日志存储器中的日志存储指令,使得仆虚拟机的CPU寄存器状态及主存与主虚拟机同步。
11.一种计算机,包括虚拟机容器以及在所述虚拟机容器上运行的虚拟机,所述虚拟机包括:指令队列、主存以及日志存储器,其中,虚拟机将主存中的命令加载到其指令队列,执行指令队列中的各种指令以及将数据写入主存,并将指令队列中的各种命令以日志存储指令的形式写入虚拟机的日志存储器中,其中所述虚拟机使用指令队列中的I/O指令作为处理边界来触发与另一台计算机的虚拟机同步操作。
12.如权利要求11所述的计算机,所述同步操作包括,所述虚拟机在遇到一条I/O指令后,将在所述一条I/O指令和紧接于所述一条I/O指令之前的另一条I/O指令之间的、存储在日志存储器中的日志存储指令,通过与另一台计算机之间的通信信道,发送到所述另一台计算机的虚拟机的日志存储器,供所述另一台计算机的虚拟机执行。
CN200810098727.2A 2008-05-30 2008-05-30 使得计算机具有高可用性的方法和计算机系统 Active CN101593136B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN200810098727.2A CN101593136B (zh) 2008-05-30 2008-05-30 使得计算机具有高可用性的方法和计算机系统
US12/473,788 US8020041B2 (en) 2008-05-30 2009-05-28 Method and computer system for making a computer have high availability

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810098727.2A CN101593136B (zh) 2008-05-30 2008-05-30 使得计算机具有高可用性的方法和计算机系统

Publications (2)

Publication Number Publication Date
CN101593136A CN101593136A (zh) 2009-12-02
CN101593136B true CN101593136B (zh) 2012-05-02

Family

ID=41381321

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810098727.2A Active CN101593136B (zh) 2008-05-30 2008-05-30 使得计算机具有高可用性的方法和计算机系统

Country Status (2)

Country Link
US (1) US8020041B2 (zh)
CN (1) CN101593136B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874068A (zh) * 2017-02-09 2017-06-20 联想(北京)有限公司 主机装置的容器运行加速方法及系统

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7840839B2 (en) * 2007-11-06 2010-11-23 Vmware, Inc. Storage handling for fault tolerance in virtual machines
JP5352299B2 (ja) * 2009-03-19 2013-11-27 株式会社日立製作所 高信頼性計算機システムおよびその構成方法
US8201169B2 (en) 2009-06-15 2012-06-12 Vmware, Inc. Virtual machine fault tolerance
WO2012022359A1 (de) * 2010-08-18 2012-02-23 Siemens Aktiengesellschaft Automatisierungsvorrichtung mit virtueller maschine zur synchronisation und synchronisationsverfahren
US8650564B2 (en) * 2010-10-19 2014-02-11 Vmware, Inc. Method and system for synchronizing fault-tolerant virtual machines and adjusting CPU resource limit based on execution latency
US8738962B2 (en) * 2010-11-17 2014-05-27 International Business Machines Corporation Memory mirroring with memory compression
TWI537828B (zh) * 2010-12-21 2016-06-11 萬國商業機器公司 虛擬機管理的方法及其電腦系統之裝置和電腦程式
US8813072B1 (en) 2011-03-18 2014-08-19 DirectPacket Research Inc. Inverse virtual machine
US9639379B1 (en) * 2011-07-19 2017-05-02 Open Invention Network Llc Dynamic configuration of virtual machines
US8782242B2 (en) * 2011-10-13 2014-07-15 Vmware, Inc. Software application placement using computing resource containers
CN102523257A (zh) * 2011-11-30 2012-06-27 广东电子工业研究院有限公司 一种基于iaas云平台的虚拟机容错方法
CN103176831B (zh) * 2011-12-22 2016-08-10 中国移动通信集团公司 一种虚拟机系统及其管理方法
US9201704B2 (en) * 2012-04-05 2015-12-01 Cisco Technology, Inc. System and method for migrating application virtual machines in a network environment
US9003405B1 (en) * 2012-05-22 2015-04-07 The Boeing Company Synchronization of virtual machine-based desktop environments
US10031782B2 (en) * 2012-06-26 2018-07-24 Juniper Networks, Inc. Distributed processing of network device tasks
CN102905059A (zh) * 2012-09-27 2013-01-30 曙光信息产业(北京)有限公司 无间断广播电视播放系统
US9858157B2 (en) * 2012-10-31 2018-01-02 International Business Machines Corporation Intelligent restore-container service offering for backup validation testing and business resiliency
US20140310287A1 (en) * 2012-12-17 2014-10-16 Unisys Corporation Method and system for storing data in commodity computing
CN103294439B (zh) * 2013-06-28 2016-03-02 华为技术有限公司 一种图像更新方法、系统及装置
US9110838B2 (en) * 2013-07-31 2015-08-18 Honeywell International Inc. Apparatus and method for synchronizing dynamic process data across redundant input/output modules
CN104346266A (zh) * 2013-08-06 2015-02-11 贵州电网公司信息通信分公司 一种分析计算机信息系统可用率的方法
CN103581177A (zh) * 2013-10-24 2014-02-12 华为技术有限公司 虚拟机管理方法及装置
CN105224406B (zh) * 2014-07-03 2019-03-15 深圳市腾讯计算机系统有限公司 一种输入输出指令处理的方法及装置
CN104317641B (zh) * 2014-11-18 2018-05-01 成都远为天胜科技有限公司 一种维护虚拟机的方法
US10218585B2 (en) 2015-02-19 2019-02-26 Red Hat, Inc. Container host discovery
US11023265B2 (en) 2015-03-20 2021-06-01 Intel Corporation Techniques for improving output-packet-similarity between primary and secondary virtual machines
WO2016197069A1 (en) * 2015-06-05 2016-12-08 Nutanix, Inc. Architecture for managing i/o and storage for a virtualization environment using executable containers and virtual machines
WO2016206047A1 (en) * 2015-06-25 2016-12-29 Intel Corporation Techniques for reliable primary and secondary containers
US10713195B2 (en) * 2016-01-15 2020-07-14 Intel Corporation Interrupts between virtual machines
WO2017205220A1 (en) * 2016-05-23 2017-11-30 William Turner Hyperconverged system architecture featuring the container-based deployment of virtual machines
US10460113B2 (en) * 2016-08-16 2019-10-29 International Business Machines Corporation Security fix of a container in a virtual machine environment
US10649679B2 (en) 2016-11-23 2020-05-12 Nutanix, Inc. Containerized application extensions in distributed storage systems
WO2018103031A1 (zh) * 2016-12-08 2018-06-14 深圳前海达闼云端智能科技有限公司 虚拟机功能服务的实现方法、装置、电子设备和计算机程序产品
US10761911B2 (en) 2017-02-13 2020-09-01 Nutanix, Inc. Asynchronous application interactions in distributed systems
US11144412B2 (en) 2017-06-05 2021-10-12 Vmware, Inc. Virtual machine image file synchronization using delta bitmaps and delta files
US11068472B2 (en) * 2019-11-25 2021-07-20 eShares, Inc. Extensible universal ledger

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5488716A (en) * 1991-10-28 1996-01-30 Digital Equipment Corporation Fault tolerant computer system with shadow virtual processor
CN1312922A (zh) * 1998-08-11 2001-09-12 艾利森电话股份有限公司 容错计算机系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2353113B (en) * 1999-08-11 2001-10-10 Sun Microsystems Inc Software fault tolerant computer system
US6922685B2 (en) * 2000-05-22 2005-07-26 Mci, Inc. Method and system for managing partitioned data resources
US7840963B2 (en) * 2004-10-15 2010-11-23 Microsoft Corporation Marking and utilizing portions of memory state information during a switch between virtual machines to minimize software service interruption
US20070094659A1 (en) * 2005-07-18 2007-04-26 Dell Products L.P. System and method for recovering from a failure of a virtual machine
JP4544146B2 (ja) * 2005-11-29 2010-09-15 株式会社日立製作所 障害回復方法
US7526617B2 (en) * 2005-12-29 2009-04-28 Sap Ag System and method for memory management using memory windows
US7840839B2 (en) * 2007-11-06 2010-11-23 Vmware, Inc. Storage handling for fault tolerance in virtual machines

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5488716A (en) * 1991-10-28 1996-01-30 Digital Equipment Corporation Fault tolerant computer system with shadow virtual processor
CN1312922A (zh) * 1998-08-11 2001-09-12 艾利森电话股份有限公司 容错计算机系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874068A (zh) * 2017-02-09 2017-06-20 联想(北京)有限公司 主机装置的容器运行加速方法及系统
CN106874068B (zh) * 2017-02-09 2020-02-21 联想(北京)有限公司 主机装置的容器运行加速方法及系统

Also Published As

Publication number Publication date
CN101593136A (zh) 2009-12-02
US20090300414A1 (en) 2009-12-03
US8020041B2 (en) 2011-09-13

Similar Documents

Publication Publication Date Title
CN101593136B (zh) 使得计算机具有高可用性的方法和计算机系统
US11627041B2 (en) Dynamic reconfiguration of resilient logical modules in a software defined server
JP4920391B2 (ja) 計算機システムの管理方法、管理サーバ、計算機システム及びプログラム
US9798792B2 (en) Replication for on-line hot-standby database
US20160350013A1 (en) Method and system for implementing a distributed operations log
JP5140633B2 (ja) 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム
US7523344B2 (en) Method and apparatus for facilitating process migration
Liu Cutting {MapReduce} Cost with Spot Market
CN104427002A (zh) 集群系统及用于在集群系统中提供服务可用性的方法
US8612973B2 (en) Method and system for handling interrupts within computer system during hardware resource migration
KR20160073297A (ko) 인-메모리 클러스터 컴퓨팅 프레임워크 노드 및 그것의 데이터 캐싱 방법
WO2011074284A1 (ja) 仮想計算機の移動方法、仮想計算機システム及びプログラムを格納した記憶媒体
US7484032B2 (en) Fault tolerant computer system
US20070283314A1 (en) A Method and System for Performing a Change-Over to a Component of a Computing System
CN102597963B (zh) 集群中的动态副本卷交换
CN109614276A (zh) 故障处理方法、装置、分布式存储系统和存储介质
CN104391764A (zh) 一种计算机容错方法及系统
JP2007156679A (ja) サーバの障害回復方法及びデータベースシステム
US20210294497A1 (en) Storage system and method for analyzing storage system
CN112199240A (zh) 一种节点故障时进行节点切换的方法及相关设备
Chen et al. Replication-based fault-tolerance for large-scale graph processing
CN1755660B (zh) 冗余处理器中的诊断存储器转储方法
CN103377090A (zh) 多处理器系统中共享不同数据集的多个编目的方法和系统
CN109324549B (zh) 一种双主控设备配置方法及双主控设备
CN105808391A (zh) 一种热替换cpu节点的方法及装置

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