IP Library › Granted Patent US 8,930,652
Granted Patent B2
US 8,930,652 · App. 12/616,376 · Granted Jan 6, 2015

Method for obtaining a snapshot image of a disk shared by multiple virtual machines

Inventor: Itamar Heim (Tel Aviv, IL)
Assignee: Red Hat Israel, Ltd.
G06F9/45558G06F11/1484G06F2009/45562G06F9/4418G06F11/2094G06F2201/84
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,930,652
App. No.
12/616,376
Granted
Jan 6, 2015
Kind
B2
Abstract

Methods for obtaining a snapshot of a shared virtual machine (VM) image are described herein. In response to a request for obtaining a snapshot of a first VM image stored in a storage disk accessed and shared by a plurality of VMs, a virtualization manager selects a VM from the plurality of VMs hosted within one or more hosts. First needs to notify others to prepare for the snapshot by pausing, etc. A process associated with the selected VM is configured to capture a snapshot from the first VM image, generating a second VM image to be stored in storage disk. Thereafter, the virtualization manager notifies the plurality of VMs to utilize the second image after the second VM image has been generated.

Claims (41)

1. A computer-implemented method comprising:

receiving, by a virtualization manager, a request to obtain a snapshot of a first virtual machine (VM) image stored on a storage disk and shared by a plurality of VMs currently running on one or more hosts;

in response to the request, selecting, by a processing device of the virtualization manager, a VM from the plurality of VMs;

causing, by the virtualization manager, a process associated with the selected VM to create a second VM image by capturing a snapshot of the first VM image, and to store the second VM image on the storage disk;

after the second VM image is created, causing, by the virtualization manager, the plurality of VMs to utilize the second VM image when running on the one or more hosts; and

maintaining the first VM image as a backup copy for the plurality of VMs.

2. The method of claim 1 , further comprising:

suspending at least a portion of activities of the plurality of VMs accessing the first VM image prior to capturing the snapshot; and

causing the plurality of VMs to resume operations using the second VM image after the second VM image has been created.

3. The method of claim 2 , further comprising suspending activities of virtual input and output (IO) devices that are used by the plurality of VMs to access the first VM image without suspending the plurality of VMs entirely.

4. The method of claim 1 , wherein the selected VM has most IO activities with respect to the first VM image.

5. The method of claim 1 , wherein the selected VM is the last VM to be suspended prior to taking the snapshot and wherein the selected VM is the first VM to resume after the snapshot has been taken.

6. The method of claim 1 , further comprising designating the first VM image as a read-only image after the second VM image has been created.

7. The method of claim 1 , further comprising:

receiving a signal indicating an error occurred in at least one VM of the plurality of VMs when the plurality of VMs switch from using the first VM image to using the second VM image; and

causing the plurality of VMs to roll back from the second VM image to the first VM image in response to the signal.

8. A non-transitory computer-readable storage medium including instructions that, when executed by a processing system, cause the processing system to perform a method comprising:

receiving, by a virtualization manager, a request to obtain a snapshot of a first virtual machine (VM) image stored on a storage disk and shared by a plurality of VMs currently running on one or more hosts;

in response to the request, selecting, by a processing device of the virtualization manager, a VM from the plurality of VMs;

causing, by the virtualization manager, a process associated with the selected VM to create a second VM image by capturing a snapshot of the first VM image, and to store the second VM image on the storage disk;

after the second VM image is created, causing , by the virtualization manager, the plurality of VMs to utilize the second VM image when running on the one or more hosts; and

maintaining the first VM image as a backup copy for the plurality of VMs.

9. The computer-readable storage medium of claim 8 , wherein the method further comprises:

suspending at least a portion of activities of the plurality of VMs accessing the first VM image prior to capturing the snapshot; and

causing the plurality of VMs to resume operations using the second VM image after the second VM image has been created.

10. The computer-readable storage medium of claim 9 , wherein the method further comprises suspending activities of virtual input and output (IO) devices that are used by the plurality of VMs to access the first VM image without suspending the plurality of VMs entirely.

11. The computer-readable storage medium of claim 8 , wherein the selected VM has most IO activities to the first VM image.

12. The computer-readable storage medium of claim 8 , wherein the selected VM is the last VM to be suspended prior to taking the snapshot and wherein the selected VM is the first VM to resume after the snapshot has been taken.

13. The computer-readable storage medium of claim 8 , wherein the method further comprises designating the first VM image as a read-only image after the second VM image has been created.

14. The computer-readable storage medium of claim 8 , wherein the method further comprises:

receiving a signal indicating an error occurred in at least one VM of the plurality of VMs when the plurality of VMs switch from using the first VM image to using the second VM image; and

causing the plurality of VMs to roll back from the second VM image to the first VM image in response to the signal.

15. A system, comprising:

a host configuration unit to receive a request to obtain a snapshot of a first virtual machine (VM) image stored on a storage disk and shared by a plurality of VMs currently running on one or more hosts, wherein in response to the request, the host configuration unit selects a VM from the plurality of VMs, and causes a process associated with the selected VM to create a second VM image by capturing a snapshot of the first VM image, and to store the second VM image on the storage disk; and

a host monitoring unit coupled to the host configuration unit to receive a signal from the selected VM indicating that the second VM image has been created, wherein in response to the signal, the host configuration unit is configured to cause the plurality of VMs to switch from using the first VM image to using the second VM image when running on the one or more hosts, and to maintain the first images as a backup copy for the plurality of VMs.

16. The system of claim 15 , wherein the host configuration unit is configured to suspend at least a portion of activities of the plurality of VMs accessing the first VM image prior to capturing the snapshot, and to cause the plurality of VMs to resume operations using the second VM image after the second VM image has been created.

17. The system of claim 16 , wherein activities of virtual input and output (IO) devices that are used by the plurality of VMs to access the first VM image are suspended without suspending the plurality of VMs entirely.

18. The system of claim 15 , wherein the selected VM has most IO activities to the first VM image.

19. The system of claim 15 , wherein the selected VM is the last VM to be suspended prior to taking the snapshot and wherein the selected VM is the first VM to resume after the snapshot has been taken.

20. The system of claim 15 , wherein the first VM image is designated as a read-only image after the second VM image has been created.

21. The system of claim 15 , wherein the host monitoring unit is configured to receive a signal indicating an error occurred in at least one VM of the plurality of VMs when the plurality of VMs switch from using the first VM image to using the second VM image, and wherein the host configuration unit is configured to cause the plurality of VMs to roll back from the second VM image to the first VM image in response to the signal.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2009
From: HEIM, ITAMAR
To: RED HAT ISRAEL, LTD.
Reel/Frame 023503/0809 →
Continuity (1)
Related Publication 20110113206A1 · May 12, 2011