Virtual Machine Placement With Automatic Deployment Error Recovery
First Claim
1. A system for automatically selecting hosts and datastores for deployment of a plurality of virtual machines (VMs), said system comprising:
- a memory area associated with a computing device, said memory area storing an inventory of hosts and datastores, said inventory describing resources associated with the hosts and datastores; and
a processor programmed to;
receive a request to select, for a plurality of VMs, one or more candidate hosts and one or more candidate datastores from the inventory stored in the memory area, said request identifying a source VM;
determine resource requirements for the plurality of VMs based on the identified source VM; and
select, for each of the plurality of VMs, the one or more candidate hosts and the one or more candidate datastores from the inventory of hosts and datastores based on the determined resource requirements and the resources associated with the inventory of hosts and datastores.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments perform automatic selection of hosts and/or datastores for deployment of a plurality of virtual machines (VMs) while monitoring and recovering from errors during deployment. Resource constraints associated with the VMs are compared against resources or characteristics of available hosts and datastores. A VM placement engine selects an optimal set of hosts/datastores and initiates VM creation automatically or in response to administrator authorization. During deployment, available resources are monitored enabling dynamic improvement of the set of recommended hosts/datastores and automatic recovery from errors occurring during deployment.
-
Citations
26 Claims
-
1. A system for automatically selecting hosts and datastores for deployment of a plurality of virtual machines (VMs), said system comprising:
-
a memory area associated with a computing device, said memory area storing an inventory of hosts and datastores, said inventory describing resources associated with the hosts and datastores; and a processor programmed to; receive a request to select, for a plurality of VMs, one or more candidate hosts and one or more candidate datastores from the inventory stored in the memory area, said request identifying a source VM; determine resource requirements for the plurality of VMs based on the identified source VM; and select, for each of the plurality of VMs, the one or more candidate hosts and the one or more candidate datastores from the inventory of hosts and datastores based on the determined resource requirements and the resources associated with the inventory of hosts and datastores. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
receiving a request to select at least one candidate datastore for a plurality of virtual machines (VMs), said request identifying at least one host and resource requirements associated with the plurality of VMs; selecting the candidate datastore from a plurality of datastores accessible to the host based on a comparison of the resource requirements and an assessment of resources associated with the plurality of datastores; deploying at least one of the plurality of VMs on the host and the selected candidate datastore; updating, during said deploying, the assessment of the resources; and selecting another candidate datastore accessible to the host based on a comparison of the resource requirements and the updated assessment of the resources. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. One or more computer-readable storage media including computer-executable instructions that, when executed, cause at least one processor to place virtual machines while implementing error recovery by:
-
receiving a request to select at least one candidate datastore for a plurality of virtual machines (VMs), said request identifying at least one host and resource requirements associated with the plurality of VMs; selecting the candidate datastore from a plurality of datastores accessible to the host based on a comparison of the resource requirements and an assessment of resources associated with the plurality of datastores; deploying at least one of the plurality of VMs on the host and the selected candidate datastore; maintaining, during said deploying, a status log for each of the plurality of VMs; detecting deployment failure during said deploying; and resolving the detected deployment failure based at least on the maintained status log. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26)
-
Specification