Optimizing provisioning through automated virtual machine template generation

US9600267B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9600267-B2
Application numberUS-201514739006-A
CountryUS
Kind codeB2
Filing dateJun 15, 2015
Priority dateJun 15, 2015
Publication dateMar 21, 2017
Grant dateMar 21, 2017

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.

Software that dynamically updates virtual machine templates at deterministic intervals in order to reduce patching time, by performing the following operations: (i) identifying a virtual machine (VM) provisioned according to a first VM template; (ii) initiating a patching process that applies a set of patch(es) to the VM, thereby creating a patched VM; (iii) determining that an amount of time taken to complete the patching process is greater than a predetermined threshold; and (iv) responsive to determining that the amount of time taken to complete the patching process is greater than the predetermined threshold, generating a second VM template based, at least in part, on the patched VM.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: identifying, by one or more processors, a virtual machine (VM) provisioned according to a first VM template; initiating, by one or more processors, a patching process that applies a set of patch(es) to the VM, thereby creating a patched VM; determining, by one or more processors, a patch threshold based, at least in part, on a cost function, wherein the patch threshold is an amount of time that must elapse before a resource cost of completing the patching process is greater than a resource cost of creating a new VM template that already includes the set of patch(es); determining, by one or more processors, that an amount of time taken to complete the patching process is greater than the patch threshold; and responsive to determining that the amount of time taken to complete the patching process is greater than the patch threshold, generating, by one or more processors, a second VM template based, at least in part, on the patched VM. 2. The method of claim 1 , wherein the patching process is a managed service in a cloud computing environment. 3. The method of claim 1 , further comprising provisioning, by one or more processors, a new VM according to the second VM template. 4. The method of claim 1 , further comprising replacing, by one or more processors, the first VM template with the second VM template. 5. The method of claim 1 , wherein the determining that the amount of time taken to complete the patching process is greater than the patch threshold comprises: recording a first timestamp at the time that the patching process is initiated; recording a second timestamp at the time that the patching process is completed; and calculating a difference between the first timestamp and the second timestamp. 6. The method of claim 1 , wherein the generating of the second VM template comprises creating a snapshot of the patched VM after the patching process has completed. 7. The method of claim 1 , wherein: the patching process includes a plurality of patching subprocesses; and the amount of time taken to complete the patching process is an aggregate amount of time to complete each of the corresponding patching subprocesses. 8. A computer program product comprising a computer readable storage medium having stored thereon: instructions executable by a device to cause the device to identify a virtual machine (VM) provisioned according to a first VM template; instructions executable by the device to cause the device to initiate a patching process that applies a set of patch(es) to the VM, thereby creating a patched VM; instructions executable by the device to cause the device to determine a patch threshold based, at least in part, on a cost function, wherein the patch threshold is an amount of time that must elapse before a resource cost of completing the patching process is greater than a resource cost of creating a new VM template that already includes the set of patch(es); instructions executable by the device to cause the device to determine that an amount of time taken to complete the patching process is greater than the patch threshold; and instructions executable by the device to cause the device to, responsive to determining that the amount of time taken to complete the patching process is greater than the patch threshold, generate a second VM template based, at least in part, on the patched VM. 9. The computer program product of claim 8 , wherein the patching process is a managed service in a cloud computing environment. 10. The computer program product of claim 8 , further comprising instructions executable by the device to cause the device to provision a new VM according to the second VM template. 11. The computer program product of claim 8 , further comprising instructions executable by the device to cause the device to replace the first VM template with the second VM template. 12. The computer program product of claim 8 , wherein the determining that the amount of time taken to complete the patching process is greater than the patch threshold comprises: recording a first timestamp at the time that the patching process is initiated; recording a second timestamp at the time that the patching process is completed; and calculating a difference between the first timestamp and the second timestamp. 13. The computer program product of claim 8 , wherein the generating of the second VM template comprises creating a snapshot of the patched VM after the patching process has completed. 14. The computer program product of claim 8 , wherein: the patching process includes a plurality of patching subprocesses; and the amount of time taken to complete the patching process is an aggregate amount of time to complete each of the corresponding patching subprocesses. 15. A computer system comprising: a processor(s) set; and a computer readable storage medium; wherein: the processor set is structured, located, connected and/or programmed to execute instructions stored on the computer readable storage medium; and the instructions include: instructions executable by the processor set to cause the system to identify a virtual machine (VM) provisioned according to a first VM template; instructions executable by the processor set to cause the system to initiate a patching process that applies a set of patch(es) to the VM, thereby creating a patched VM; instructions executable by the processor set to cause the system to determine a patch threshold based, at least in part, on a cost function, wherein the patch threshold is an amount of time that must elapse before a resource cost of completing the patching process is greater than a resource cost of creating a new VM template that already includes the set of patch(es); instructions executable by the processor set to cause the system to determine that an amount of time taken to complete the patching process is greater than the patch threshold; and instructions executable processor set to cause the system to, responsive to determining that the amount of time taken to complete the patching process is greater than the patch threshold, generate a second VM template based, at least in part, on the patched VM. 16. The computer system of claim 15 , wherein the patching process is a managed service in a cloud computing environment. 17. The computer system of claim 15 , wherein the instructions further include instructions executable by the processor set to cause the system to provision a new VM according to the second VM template. 18. The computer system of claim 15 , wherein the instructions further include instructions executable by the processor set to cause the system to replace the first VM template with the second VM template. 19. The computer system of claim 15 , wherein the determining that the amount of time taken to complete the patching process is greater than the patch threshold comprises: recording a first timestamp at the time that the patching process is initiated; recording a second timestamp at the time that the patching process is completed; and calculating a difference between the first timestamp and the second timestamp. 20. The computer system of claim 15 , wherein: the patching process includes a plurality of patching subprocesses; and the amount of time taken to complete the patching process is an aggregate amount of time to complete each of the corresponding patching subprocesses.

Assignees

Inventors

Classifications

  • Hypervisor-specific management and integration aspects · CPC title

  • G06F8/65Primary

    Updates (security arrangements therefor G06F21/57) · CPC title

  • Uninstallation · CPC title

  • in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46) · CPC title

  • Software maintenance or management · 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 US9600267B2 cover?
Software that dynamically updates virtual machine templates at deterministic intervals in order to reduce patching time, by performing the following operations: (i) identifying a virtual machine (VM) provisioned according to a first VM template; (ii) initiating a patching process that applies a set of patch(es) to the VM, thereby creating a patched VM; (iii) determining that an amount of time t…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F8/65. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 21 2017 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 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).