IP Library Granted Patent US 8,176,289
Granted Patent B2
US 8,176,289 · App. 12/470,145 · Granted May 8, 2012

Method to support sparse volumes or thin provisioned volumes in real time

Assignee: Red Hat Israel, Ltd.
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,176,289
App. No.
12/470,145
Granted
May 8, 2012
Kind
B2
Abstract

A storage pool is shared by multiple host computers in a cluster that runs virtual machines. In one embodiment, one of the host computers in the cluster is designated to include a storage pool manager. Each host computer in the cluster monitors its storage consumption and notifies the storage pool manager of its storage consumption. Thus, storage space in the storage pool can be dynamically allocated on demand.

Claims (47)

1. A computer-implemented method comprising:

monitoring, by each host computer of a cluster of host computers that each run virtual machines and share a pool of storage, storage consumption of the virtual machines at the host computer; and

notifying, by the host computer, a designated host computer of the cluster of host computers of the storage consumption, the designated host computer designated by a host controller managing the cluster of host computers to act as a central storage manager for managing the shared pool of storage for the cluster of host computers.

2. The method of claim 1 , wherein notifying a designated host computer further comprises:

notifying the designated host computer when a change to storage allocation is necessary.

3. The method of claim 1 , further comprising:

mapping logical data blocks into physical data blocks in the pool of storage.

4. The method of claim 1 , wherein the notification includes a request for at least one of the following:

expanding a volume, shrinking the volume, and resizing the volume, wherein the volume includes storage space allocated to the host computer.

5. A computer-implemented method comprising:

receiving, by a designated host computer of a cluster of host computers that each run virtual machines and share a pool of storage, a notification of storage consumption from a requesting host computer of the cluster of host computers, the designated host computer designated by a host controller managing the cluster of host computers to act as a central storage manager for managing the shared pool of storage for the cluster of host computers; and

changing, by the designated host computer, storage allocation for the requesting host computer in response to the notification.

6. The method of claim 5 , further comprising:

allocating at least a portion of a volume in the pool of storage to the requesting host computer, the volume being a thin provisioned volume or a sparse volume.

7. The method of claim 5 , wherein changing storage allocation includes at least one of the following:

expanding a volume, shrinking the volume, and resizing the volume, wherein the volume includes storage space allocated to the requesting host computer.

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:

interacting, by each host computer of a cluster of host computers that each run virtual machines and share a pool of storage, with a logical volume manager (LVM) of the host computer, the LVM to virtualize the shared pool of storage into multiple storage spaces used by the virtual machines of the host computer;

monitoring, by each host computer, storage consumption of the virtual machines at the host computer via the LVM; and

notifying, by the each host computer, a designated host computer of the cluster of host computers of the storage consumption, the designated host computer designated by a host controller managing the cluster of host computers to act as a central storage manager for managing the shared pool of storage for the cluster of host computers.

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

notifying the designated host computer when a change to storage allocation is necessary.

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

mapping logical data blocks into physical data blocks in the pool of storage.

11. The non-transitory computer readable storage medium of claim 8 , wherein changing storage allocation includes at least one of the following:

expanding a volume, shrinking the volume, and resizing the volume, wherein the volume includes storage space allocated to the first host computer.

12. 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 designated host computer of a cluster of host computers that each run virtual machines and share a pool of storage, a notification of storage consumption from a requesting host computer of the cluster of host computers, the designated host computer designated by a host controller managing the cluster of host computers to act as a central storage manager for managing the shared pool of storage for the cluster of host computers; and

changing, by the designated host computer, storage allocation for the requesting host computer in response to the notification.

13. The non-transitory computer readable storage medium of claim 12 , wherein the method further comprises:

allocating at least a portion of a volume in the pool of storage to the requesting host computer, the volume being a thin provisioned volume or a sparse volume.

14. The non-transitory computer readable storage medium of claim 12 , wherein changing storage allocation includes at least one of the following:

expanding a volume, shrinking the volume, and resizing the volume, wherein the volume includes storage space allocated to the first host computer.

15. A system comprising:

a memory;

a processing device communicably coupled to the memory;

a hypervisor to virtualize the memory and the processing device for a plurality of virtual machines hosted by the system, wherein data of the virtual machines is stored in a pool of storage shared by the system with a cluster of host computers; and

a storage pool manager executable by the processing device from the memory when the system is designated by a host controller managing the cluster of host computers to act as a central storage manager for managing the shared pool of storage for the cluster of host computers, the storage pool manager configured to:

receive a notification of storage consumption from each of the host computers in the cluster of host computers; and

change storage allocation for one or more of the host computers in response to the notification.

16. The system of claim 15 , further comprising a local storage manager executable from the memory by the processing device, the local storage manager configured to receive the storage allocation from the storage pool manager.

17. The system of claim 15 , wherein the data storage includes a volume allocated to at least one host computer in the cluster, the volume is changed by the storage pool manager by at least one of the following:

expansion, shrinkage, and resizing.

18. The system of claim 15 , wherein each host computers in the cluster includes a monitoring unit to monitor local storage consumption.

19. The system of claim 15 , wherein each host computer in the cluster includes a notification unit to notify the storage pool manager of local storage consumption.

20. The system of claim 15 , wherein each host computer in the cluster includes:

a logical volume management module to dynamically map a logical data block to a physical data block in real time.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2009
From: FRANK, SHAHAR
To: RED HAT ISRAEL, LTD.
Reel/Frame 022721/0578 →
Continuity (1)
Related Publication 20100299495A1 · Nov 25, 2010