×

Systems and methods for repurposing virtual machines

  • US 9,378,035 B2
  • Filed: 02/12/2013
  • Issued: 06/28/2016
  • Est. Priority Date: 12/28/2012
  • Status: Active Grant
First Claim
Patent Images

1. A method to be performed by a computing system for providing a virtual machine, the method comprising:

  • maintaining, by a virtual machine lifecycle management module, a list of virtual machines that are available for repurposing, the maintaining comprising;

    searching for idle virtual machines and archived virtual machines,determining that a virtual machine is unavailable for repurposing because it is reserved,computing an amount of time each virtual machine has been idle;

    dynamically determining, whether each of a plurality of virtual machines has been idle for a predetermined period of time;

    archiving, a respective virtual machine of the plurality of virtual machines that has been determined to be idle for the predetermined period of time; and

    replacing, the respective virtual machine with a stub that refers to the location of the archived virtual machine on a secondary storage;

    receiving a request to provide a virtual machine;

    receiving a specification for the virtual machine, the specification comprising at least one configuration parameter for the virtual machine, the at least one configuration parameter comprising an association with a value;

    determining if a virtual machine on the list meets or exceeds the specification and is available for repurposing;

    if there is not a virtual machine that is repurposable or there is not a virtual machine that meets or exceeds the specification, creating a new virtual machine that meets or exceeds the specification;

    if one or more virtual machines on the list is available for repurposing and the one or more virtual machines meets or exceeds the specification, then selecting a virtual machine from the one or more virtual machines by;

    selecting an idle virtual machine from among the one or more virtual machines based on it being the closest match to the specification, if at least one of the one or more virtual machines is idle, andselecting an archived virtual machine for repurposing based on it being the closest match to the specification, if no virtual machine of the one or more virtual machines is idle;

    repurposing the selected virtual machine, if a virtual machine has been selected, the repurposing comprising;

    recovering the selected virtual machine from the second storage device, if the selected virtual machine is an archived virtual machine;

    reverting the selected virtual machine to a generic state from which a user can modify the selected virtual machine;

    associating the selected virtual machine with the user; and

    switching permissions or ownership of the selected virtual machine from a previous user to the user; and

    updating the list to reflect that the selected virtual machine is unavailable.

View all claims
  • 4 Assignments
Timeline View
Assignment View
    ×
    ×