IP Library › Granted Patent US 8,135,985
Granted Patent B2
US 8,135,985 · App. 12/486,332 · Granted Mar 13, 2012

High availability support for virtual machines

Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,135,985
App. No.
12/486,332
Granted
Mar 13, 2012
Kind
B2
Abstract

A computer implemented method, a tangible computer storage medium, and a data processing system provide high availability support for virtual machines in a logical partitioned platform. A monitoring system detect a failure in the virtual machine. Partition management firmware then restarts the virtual machine in a consistency failover image node utilizing a consistency failover image. If a subsequent failure of the virtual machine is detected within a predetermined time, partition management firmware restarts the virtual machine in a boot failover image node utilizing a boot failover image.

Claims (53)

1. A computer implemented method for providing failover support for virtual machines in a logical partitioned platform, the method comprising the computer implemented steps of:

detecting, with a monitoring system, a first failure in a virtual machine in the logical partition platform;

responsive to detecting the failure in the virtual machine, restarting with a partition management firmware the virtual machine in a consistency failover image node utilizing a consistency failover image; and

responsive to identifying a subsequent failure of the virtual machine within a predetermined time, restarting with a partition management firmware the virtual machine in a boot failover image node utilizing a boot failover image.

2. The computer implemented method of claim 1 , the computer implemented method further comprising:

responsive to detecting the failure in the virtual machine, restarting the virtual machine in the consistency failover image node utilizing the consistency failover image, wherein the consistency failover image is a first set of files containing contents and structure representing the virtual machine at a time of creation of the consistency failover image; and

responsive to identifying the subsequent failure of the virtual machine within the predetermined time, restarting the virtual machine in a boot failover image node utilizing the boot failover image, wherein the boot failover image is a second file containing contents and structure representing the virtual machine at a time of startup of the virtual machine.

3. The computer implemented method of claim 2 , wherein the consistency failover image is a set of consistency failover images, the computer implemented method further comprising:

periodically generating one of the set of consistency failover images, wherein each subsequent image of the set of consistency failover images includes changes to a file system of the virtual machine and changes to a memory of the virtual machine, the changes being made since a generation of a previous subsequent image of the set of consistency failover images.

4. The computer implemented method of claim 3 , wherein the step of restarting the virtual machine in a consistency failover image node utilizing a consistency failover image further comprises:

responsive to detecting the failure in the virtual machine, restarting the virtual machine in the consistency failover image node utilizing the set of consistency failover images.

5. The computer implemented method of claim 1 , further comprising the computer implemented steps of:

starting the virtual machine; and

responsive to starting the virtual machine, generating the boot failover image, wherein the boot failover image is constructed during a virtual machine boot process before any changeable files are opened by the virtual machine.

6. The computer implemented method of claim 1 , wherein the computer implemented step of responsive to identifying the subsequent failure of the virtual machine within the predetermined time, restarting the virtual machine in the boot failover image node utilizing the boot failover image further comprises:

responsive to identifying the subsequent failure of the virtual machine within the predetermined time, restarting the virtual machine in the boot failover image node utilizing the boot failover image, wherein the predetermined time is less than 100 milliseconds.

7. The computer implemented method of claim 1 further comprising the computer implemented steps of:

invoking a recovery routine to synchronize a file system image of the virtual machine, so that the virtual machine maintains a same file system image that was held by the virtual machine prior to the failure.

8. A tangible computer storage hardware having a computer program product encoded thereon for providing high availability support for virtual machines in a logical partitioned platform, the tangible computer storage hardware comprising:

instructions for detecting a first failure in a virtual machine;

instructions, responsive to detecting the failure in the virtual machine, for restarting the virtual machine in a consistency failover image node utilizing a consistency failover image; and

instructions, responsive to identifying a subsequent failure of the virtual machine within a predetermined time, for restarting the virtual machine in a boot failover image node utilizing a boot failover image.

9. The tangible computer storage hardware of claim 8 further comprising:

instructions, responsive to detecting the failure in the virtual machine, for restarting the virtual machine in the consistency failover image node utilizing the consistency failover image, wherein the consistency failover image is a first set of files containing contents and structure representing the virtual machine at the time of creation of the consistency failover image; and

instructions, responsive to identifying the subsequent failure of the virtual machine within the predetermined time, for restarting the virtual machine in a boot failover image node utilizing the boot failover image, wherein the boot failover image is a second file containing contents and structure representing the virtual machine at the time of startup of the virtual machine.

10. The tangible computer storage hardware of claim 9 , wherein the consistency failover image is a set of consistency failover images, the tangible computer storage hardware further comprising:

instructions for periodically generating one of the set of consistency failover images, wherein each subsequent image of the set of consistency failover images includes changes to a file system of the virtual machine and changes to a memory of the virtual machine, the changes being made since a generation of a previous subsequent image of the set of consistency failover images.

11. The tangible computer storage hardware of claim 10 , wherein the instructions for restarting the virtual machine in a consistency failover image node utilizing a consistency failover image further comprises:

instructions, responsive to detecting the failure in the virtual machine, for restarting the virtual machine in a consistency failover image node utilizing the set of consistency failover images.

12. The tangible computer storage hardware of claim 8 , further comprising:

instructions for starting the virtual machine; and

instructions, responsive to starting the virtual machine, for generating the boot failover image, wherein the boot failover image is constructed during a virtual machine boot process before any changeable files are opened by the virtual machine.

13. The tangible computer storage hardware of claim 8 , wherein the instructions responsive to identifying a subsequent failure of the virtual machine within the predetermined time, for restarting the virtual machine in the boot failover image node utilizing the boot failover image further comprises:

instructions, responsive to identifying a subsequent failure of the virtual machine within a predetermined time, for restarting the virtual machine in a boot failover image node utilizing a boot failover image, wherein the predetermined time is less than 100 milliseconds.

14. The tangible computer storage hardware of claim 8 further comprising:

instructions for invoking a recovery routine to synchronize a file system image of the virtual machine, so that the virtual machine maintains a same file system image that was held by the virtual machine prior to the failure.

15. A data processing system comprising:

a storage device having computer usable program code encoded thereon for providing high availability support for virtual machines in a logical partitioned platform;

a bus system connecting the storage device to a processor; and

a processor, wherein the processor executes the computer usable program to detect a first failure in a virtual machine; responsive to detecting the failure in the virtual machine, to restart the virtual machine in a consistency failover image node utilizing a consistency failover image; and responsive to identifying a subsequent failure of the virtual machine within a predetermined time, to restart the virtual machine in a boot failover image node utilizing a boot failover image.

16. The data processing system of claim 15 , wherein the processor further executes the computer usable program code:

responsive to detecting the failure in the virtual machine, to restart the virtual machine in the consistency failover image node utilizing the consistency failover image, wherein the consistency failover image is a first set of files containing contents and structure representing the virtual machine at a time of creation of the consistency failover image; and responsive to identifying the subsequent failure of the virtual machine within the predetermined time, to restart the virtual machine in a boot failover image node utilizing the boot failover image, wherein the boot failover image is a second file containing contents and structure representing the virtual machine at a time of startup of the virtual machine.

17. The data processing system of claim 16 , wherein the consistency failover image is a set of consistency failover images, wherein the processor further executes the computer usable program code:

to periodically generate one of the set of consistency failover images, wherein each subsequent image of the set of consistency failover images includes changes to a file system of the virtual machine and changes to a memory of the virtual machine, the changes being made since a generation of a previous subsequent image of the set of consistency failover images.

18. The data processing system of claim 17 , wherein the computer usable program code to restart the virtual machine in a consistency failover image node utilizing a consistency failover image further comprises computer usable program code:

responsive to detecting the failure in the virtual machine, to restart the virtual machine in a consistency failover image node utilizing the set of consistency failover images.

19. The data processing system of claim 15 , wherein the processor further executes the computer usable program code:

to start the virtual machine; and

responsive to starting the virtual machine, to generate the boot failover image, wherein the boot failover image is constructed during a virtual machine boot process before any changeable files are opened by the virtual machine.

20. The data processing system of claim 15 , wherein the computer usable program code responsive to identifying a subsequent failure of the virtual machine within the predetermined time, to restart the virtual machine in the boot failover image node utilizing the boot failover image further comprises computer usable program code:

responsive to identifying the subsequent failure of the virtual machine within the predetermined time, to restart the virtual machine in the boot failover image node utilizing the boot failover image, wherein the predetermined time is less than 100 milliseconds.

21. The data processing system of claim 15 wherein the processor further executes the computer usable program code:

to invoke a recovery routine to synchronize a file system image of the virtual machine, so that the virtual machine maintains a same file system image that was held by the virtual machine prior to the failure.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2009
From: MISHRA, RAJEEV; RUSSELL, LANCE WARREN; SHANKAR, RAVI A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 022839/0282 →
Continuity (1)
Related Publication 20100325471A1 · Dec 23, 2010