×

Virtual machine fault tolerance

  • US 8,201,169 B2
  • Filed: 06/15/2009
  • Issued: 06/12/2012
  • Est. Priority Date: 06/15/2009
  • Status: Active Grant
First Claim
Patent Images

1. In a computer system running at least a primary virtual machine (VM) on virtualization software on a primary virtualized computer system (VCS) and running a secondary VM on virtualization software on a secondary VCS, a computer implemented method for the secondary VM to provide quasi-lockstep fault tolerance for the primary VM comprises:

  • as the primary VM is executing a workload, virtualization software in the primary VCS is;

    (a) causing predetermined events to be recorded in an event log, (b) keeping output associated with the predetermined events pending, and (c) sending the log entries to the virtualization software in the secondary VCS;

    as the secondary VM is replaying the workload, virtualization software in the secondary VCS is;

    (a) sending acknowledgements indicating that log entries have been received;

    (b) when the virtualization software encounters one of the predetermined events, searching the log entries to determine whether a log entry corresponding to the same event was received from the primary VCS, and if so, comparing data associated with the predetermined event produced by the secondary VM with that of the primary VM;

    if there is a match, the virtualization software in the secondary VCS transmitting an acknowledgement to the virtualization software in the primary VCS;

    one of the virtualization software in the primary or secondary VCS dropping the event and the other dispatching the output; and

    if there is no match, performing a checkpoint resynchronization;

    wherein at least one of the predetermined events relates to virtual disk I/O, and virtual disks are shared; and

    wherein the secondary VM output is not sent to the virtual disks after a match is found.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×