Optimizing on demand allocation of virtual machines using a stateless preallocation pool

US9229710B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9229710-B2
Application numberUS-78274310-A
CountryUS
Kind codeB2
Filing dateMay 19, 2010
Priority dateJul 31, 2009
Publication dateJan 5, 2016
Grant dateJan 5, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method, computer system, and computer program product for allocating virtual machines in a stateless preallocation pool on a computing device is provided. In response to determining that a virtual machine is to be removed from an active pool in a computing device, it is determined whether the virtual machine is to be moved to a preallocation pool of the computing device. In response to determining that the virtual machine is to be moved to the preallocation pool, the virtual machine is cleansed of stateful data by removing unique information about the virtual machine's prior allocation while in the active pool. The virtual machine is moved to the preallocation pool. In response to determining that the virtual machine is needed in the active pool, the virtual machine is moved from the preallocation pool to the active pool.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for allocating virtual machines in a stateless preallocation pool on a computing device, comprising: moving a virtual machine to a preallocation pool of a computing device after removal of the virtual machine from an active pool in the computing device, the virtual machine including stateful data and non-state data; cleansing the virtual machine of the stateful data, the stateful data comprising unique information about the virtual machine's prior allocation while in the active pool, wherein the non-state data of the virtual machine is maintained in the virtual machine after the cleansing; moving the virtual machine to the preallocation pool; and moving the virtual machine from the preallocation pool back to the active pool when the virtual machine is needed in the active pool. 2. The method of claim 1 , wherein the virtual machine is moved to the preallocation pool to maintain a constant ratio of different types of virtual machines in the preallocation pool. 3. The method of claim 2 , wherein the virtual machine moved to the preallocation pool maintains the constant ratio of different types of virtual machines. 4. The method of claim 2 , wherein the virtual machine is one of the different types of virtual machines, and wherein moving the virtual machine to the preallocation pool causes the preallocation pool to maintain the constant ratio among the different types of virtual machines. 5. The method of claim 2 , wherein the different types of virtual machines are configured to respectively have different functionality. 6. The method of claim 2 , wherein the constant ratio of different types of virtual machines comprises a first total number of first different virtual machines to a second total number of second different virtual machines to a N total number of N different virtual machines, wherein N represents a last number in a sequence of numbers. 7. The method of claim 1 , wherein virtual machine is moved to the preallocation pool to maintain a constant amount of virtual machines in the preallocation pool to support current workload requests and to support future expected workload requests. 8. The method of claim 7 , wherein the expected workload requests are derived from historical data so that the expected workload requests in the future are predicted based on the historical data. 9. The method of claim 1 , wherein when a plurality of virtual machines are moved from the active pool to the preallocation pool, each of the virtual machines in the plurality of virtual machines is cleansed of stateful data. 10. The method of claim 1 , wherein cleansing the virtual machine of stateful data comprises removing from the virtual machine at least one of: application data, cache data, or tables. 11. The method of claim 1 , wherein after the cleansing of the virtual machine of stateful data, the remaining non-state data comprises an operating system of the virtual machine or a database management system software of the virtual machine. 12. A computing system for allocating virtual machines in a stateless preallocation pool, comprising: at least one computing device for storing a program operative for: moving a virtual machine to a preallocation pool of the computing device after removal of the virtual machine from an active pool in the computing device, the virtual machine including stateful data and non-state data; cleansing the virtual machine of the stateful data, the stateful data comprising unique information about the virtual machine's prior allocation while in the active pool, wherein the non-state data of the virtual machine is maintained in the virtual machine after the cleansing; moving the virtual machine to the preallocation pool; and moving the virtual machine from the preallocation pool back to the active pool when the virtual machine is needed in the active pool. 13. The system of claim 12 , wherein the virtual machine is moved to the preallocation pool to maintain a constant ratio of different types of virtual machines in the preallocation pool. 14. The system of claim 13 , wherein the virtual machine moved to the preallocation pool maintains the constant ratio of different types of virtual machines. 15. The system of claim 13 , wherein the virtual machine is one of the different types of virtual machines, and wherein moving the virtual machine to the preallocation pool causes the preallocation pool to maintain the constant ratio among the different types of virtual machines. 16. The system of claim 13 , wherein the different types of virtual machines are configured to respectively have different functionality. 17. The system of claim 13 , wherein the constant ratio of different types of virtual machines comprises a first total number of first different virtual machines to a second total number of second different virtual machines to a N total number of N different virtual machines, wherein N represents a last number in a sequence of numbers. 18. The system of claim 12 , wherein the virtual machine is moved to the preallocation pool to maintain a constant amount of virtual machines in the preallocation pool to support a current workload requests and to support future expected workload requests. 19. The system of claim 12 , wherein when a plurality of virtual machines are moved from the active pool to the preallocation pool, each of the virtual machines in the plurality of virtual machines is cleansed of stateful data. 20. The system of claim 12 , wherein cleansing the virtual machine of stateful data comprises removing from the virtual machine at least one of: application data, cache data, or tables. 21. The system of claim 12 , wherein after the cleansing of the virtual machine of stateful data, the remaining non-state data comprises an operating system of the virtual machine or a database management system software of the virtual machine. 22. A computer program product, stored on a non-transitory computer readable storage medium, the computer program product including instructions for causing a computer to execute a method for allocating virtual machines in a stateless preallocation pool, comprising: moving a virtual machine to a preallocation pool of a computing device after removal of the virtual machine from an active pool in the computing device, the virtual machine including stateful data and non-state data; cleansing the virtual machine of the stateful data, the stateful data comprising unique information about the virtual machine's prior allocation while in the active pool, wherein the non-state data of the virtual machine is maintained in the virtual machine after the cleansing; moving the virtual machine to the preallocation pool; and moving the virtual machine from the preallocation pool back to the active pool when the virtual machine is needed in the active pool.

Assignees

Inventors

Classifications

  • G06F9/00Primary

    Arrangements for program control, e.g. control units (program control for peripheral devices G06F13/10) · CPC title

  • Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455) · CPC title

  • Starting, stopping, suspending or resuming virtual machine instances · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9229710B2 cover?
A method, computer system, and computer program product for allocating virtual machines in a stateless preallocation pool on a computing device is provided. In response to determining that a virtual machine is to be removed from an active pool in a computing device, it is determined whether the virtual machine is to be moved to a preallocation pool of the computing device. In response to determ…
Who is the assignee on this patent?
Arasaratnam Omkharan, IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/00. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 05 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).