Management and provisioning of virtual machines
AssigneeSymantec Corporation
InventorsNiranjan S. Pendharkar, Venkeepuram R. Satish, Jaya Singhvi
Life of this patent
Estimating the term…
Abstract
Various systems and methods for management and provisioning of virtual machines are disclosed. For example, embodiments include selecting a potential node to host a virtual machine, where the node is selected from among a plurality of potential nodes. The selection may be based on a virtual machine (VM) configuration of a virtual machine, which may include various requirements needed to host the VM. Embodiments also include provisioning the VM on the host node after the host node is selected from among the plurality of potential nodes, and determining whether a currently-hosted node are operating in accordance with various criteria needed for the VM.
Claims40
A computer-implemented method comprising:
- accessing, using one or more processors, a virtual machine (VM) configuration of a virtual machine, wherein
- the VM is to be hosted by a host node, and
- the VM configuration comprises one or more requirements that are necessary for hosting the VM;
- accessing a first cluster configuration of a first cluster, wherein
- an n-ary tree comprises a first leaf level and a second leaf level,
- the first leaf level comprises at least a root node of the first cluster,
- the second leaf level comprises a first plurality of potential nodes (second leaf nodes) of the first cluster,
- the first plurality of second leaf nodes are configured to host at least one VM, and
- the first cluster configuration comprises configuration information for one or more nodes of the first plurality of second leaf nodes, wherein
- each second leaf node of the one or more second leaf nodes generates configuration information corresponding to the each second leaf node;
- and
- comparing the configuration information corresponding to the each second leaf node with the VM configuration, wherein
- the each second leaf node performs the comparing with respect to itself,
- the comparing determines whether the each second leaf node is capable of satisfying the one or more requirements that are necessary for hosting the VM,
- the each second leaf node transmits a result of its respective comparison to the root node, and
- the result is one of a set of such results;
- and
- provisioning the VM to be hosted at one of the second leaf nodes, wherein
- the provisioning is based, at least in part, on the set of such results.
A system comprising:
- one or more processors,
- a first cluster configuration of a first cluster, wherein
- an n-ary tree comprises a first leaf level and a second leaf level,
- the first leaf level comprises at least a root node of the first cluster,
- the second leaf level comprises a first plurality of potential nodes (second leaf nodes) of the first cluster,
- the first plurality of second leaf nodes are operable to host at least one virtual machine (VM), and
- the first cluster configuration comprises configuration information for one or more nodes of the first plurality of second leaf nodes, wherein
- each node of the one or more nodes generates configuration information corresponding to the each second leaf node;
- a VM configuration, wherein
- the VM configuration comprises one or more requirements that are necessary for hosting the VM;
- a comparison module, wherein
- the comparison module is configured to compare the configuration information corresponding to the each second leaf node with the VM configuration, wherein
- the each second leaf node is configured to perform a comparison of the VM configuration with the configuration information corresponding to itself,
- the comparison determines whether the each second leaf node is capable of satisfying the one or more requirements that are necessary for hosting the VM,
- the each second leaf node is configured to transmit a result of its respective comparison to the root node, and
- the result is one of a set of such results, and
- the comparison module is configured to be executed using the one or more processors;
- and
- a provisioning module configured to provision the VM to be hosted at one of the second leaf nodes, wherein
- the provisioning is based, at least in part, on the set of such results.
A computer program product comprising:
- a plurality of instructions, comprising
- a first set of instructions, executable on a computer system, configured to
- access a virtual machine (VM) configuration of a virtual machine, wherein
- the VM is to be hosted by a host node, and
- the VM configuration comprises one or more requirements that are necessary for hosting the VM,
- a second set of instructions, executable on the computer system, configured to
- access a first cluster configuration of a first cluster, wherein
- an n-ary tree comprises a first leaf level and a second leaf level,
- the first leaf level comprises at least a root node of the first cluster,
- the second leaf level comprises a first plurality of potential nodes (second leaf nodes) of the first cluster,
- the first plurality of second leaf nodes are configured to host at least one VM, and
- the first cluster configuration comprises configuration information for one or more nodes of the first plurality of second leaf nodes, wherein
- each second leaf node of the one or more second leaf nodes generates configuration information corresponding to the each second leaf node, and
- a third set of instructions, executable on the computer system, configured to compare the configuration information corresponding to the each second leaf node with the VM configuration, wherein
- the each second leaf node is configured to perform a comparison of the VM configuration with the configuration information corresponding to itself,
- the comparison determines whether the each second leaf node is capable of satisfying the one or more requirements that are necessary for hosting the VM,
- the each second leaf node is configured to transmit a result of its respective comparison to the root node, and
- the result is one of a set of such results;
- a fourth set of instructions, executable on the computer system, configured to provision the VM to be hosted at one of the second leaf nodes, wherein
- the VM is provisioned, at least in part, based upon the set of such results;
- and
- a non-transitory storage media, wherein the instructions are encoded in the non-transitory storage media.
Dependencies are inferred from the claim text.