Selecting optimal hypervisor platforms that satisfy application workload requirements
US-2015373093-A1 · Dec 24, 2015 · US
US2016112504A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016112504-A1 |
| Application number | US-201514981730-A |
| Country | US |
| Kind code | A1 |
| Filing date | Dec 28, 2015 |
| Priority date | Jan 28, 2011 |
| Publication date | Apr 21, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Described herein is a system and method for dynamically managing service-level objectives (SLOs) for workloads of a cluster storage system. Proposed states/solutions of the cluster may be produced and evaluated to select one that achieves the SLOs for each workload. A planner engine may produce a state tree comprising nodes, each node representing a proposed state/solution. New nodes may be added to the state tree based on new solution types that are permitted, or nodes may be removed based on a received time constraint for executing a proposed solution or a client certification of a solution. The planner engine may call an evaluation engine to evaluate proposed states, the evaluation engine using an evaluation function that considers SLO, cost, and optimization goal characteristics to produce a single evaluation value for each proposed state. The planner engine may call a modeler engine that is trained using machine learning techniques.
Opening claim text (preview).
What is claimed is: 1 . A method comprising: in response to a trigger, generating a first plurality of proposed solution states for a clustered storage system, wherein each of the first plurality of proposed solution states is associated with a proposed solution and indicates a predicted state of the clustered storage system if the associated proposed solution is applied to the clustered storage system; for each of the first plurality of proposed solution states, computing a first set of evaluation values for a set of one or more service level objectives associated with workloads of the clustered storage system; computing an evaluation value for the associated proposed solution based, at least in part, on the first set of evaluation values; selecting a first proposed solution state from the first plurality of proposed solution states based, at least in part, on the evaluation values computed for the proposed solutions associated with the first plurality of proposed solution states; and applying the proposed solution associated with the selected first proposed solution state to the clustered storage system. 2 . The method of claim 1 , wherein the trigger comprises one of a service level objective violation, addition of a workload to the clustered storage system, removal of a workload from the clustered storage system, modification of one of the workloads of the clustered storage system, addition of a storage resource to the clustered storage resource, removal of a storage resource from the clustered storage resource, and modification of a storage resource to the clustered storage resource. 3 . The method of claim 1 , wherein applying the proposed solution associated with the first proposed solution state comprises executing a set of one or more specific actions indicated for the proposed solution. 4 . The method of claim 3 further comprising determining dependencies among the set of specific actions, wherein executing the set of specific actions is in accordance with determined dependencies. 5 . The method of claim 3 , wherein a specific action comprises any one of throttling, migrating a storage object, resizing a storage object, provisioning a resource of the clustered storage system, compressing a storage object, deduplicating a storage object, backing up a storage object, and taking a snapshot of a storage object. 6 . The method of claim 1 , wherein the predicted states indicated in the first plurality of proposed solution states are relative to a current state of the clustered storage system. 7 . The method of claim 1 further comprising: for each of the first plurality of proposed solution states, computing a second set of evaluation values for a set of one or more predicted resource costs of the associated proposed solution, wherein computing the evaluation value for the associated proposed solution is also based, at least in part, on the second set of evaluation values. 8 . The method of claim 7 , wherein computing the second set of evaluation values comprises computing the second set of evaluation values in accordance with weights assigned to the set of predicted resource costs, wherein the weights correspond to a resource based optimization goal. 9 . The method of claim 1 , wherein computing the first set of evaluation values comprises computing the first set of evaluation values in accordance with priority values assigned to each of the set of one or more service level objectives. 10 . The method of claim 1 further comprising ranking the first plurality of proposed solution states based, at least in part, on the evaluation values computed for the proposed solutions associated with the first plurality of proposed solution states, wherein selecting the first proposed solution is based, at least in part, on the ranking. 11 . The method of claim 10 , further comprising removing one or more nodes from a state tree based, at least in part, on evaluation of the evaluation values against a threshold, wherein generating the first plurality of proposed solution states comprises generating the state tree with a node for each of the first plurality of proposed solution states. 12 . The method of claim 10 further comprising generating a second plurality of proposed solution states based, at least in part, on remaining ones of the first plurality of proposed solution states, wherein the nodes for the first plurality of proposed solution states are at a first level of the state tree and the second plurality of proposed solution states is represented by nodes at a lower, second level of the state tree. 13 . One or more non-transitory computer readable media comprising program instructions, the program instructions to: in response to a trigger, generate a plurality of proposed solution states for a clustered storage system, wherein each of the plurality of proposed solution states is associated with a proposed solution and indicates a predicted state of the clustered storage system if the associated proposed solution is applied to the clustered storage system; for each of the plurality of proposed solution states, compute a first set of evaluation values for a set of one or more service level objectives associated with workloads of the clustered storage system; compute an evaluation value for the associated proposed solution based, at least in part, on the first set of evaluation values; select a first proposed solution state from the plurality of proposed solution states based, at least in part, on the evaluation values computed for the proposed solutions associated with the plurality of proposed solution states; and apply the proposed solution associated with the selected first proposed solution state to the clustered storage system. 14 . The non-transitory computer readable media of claim 13 , wherein the trigger comprises one of a service level objective violation, addition of a workload to the clustered storage system, removal of a workload from the clustered storage system, modification of one of the workloads of the clustered storage system, addition of a storage resource to the clustered storage resource, removal of a storage resource from the clustered storage resource, and modification of a storage resource to the clustered storage resource. 15 . The non-transitory computer readable media of claim 13 , wherein the program instructions to apply the proposed solution associated with the first proposed solution state comprises program instructions to execute a set of one or more specific actions indicated for the proposed solution. 16 . The non-transitory computer readable media of claim 15 further comprising program instructions to determine dependencies among the set of specific actions, wherein the program instructions to execute the set of specific actions is in accordance with determined dependencies. 17 . The non-transitory computer readable media of claim 13 further comprising program instructions to: for each of the first plurality of proposed solution states, compute a second set of evaluation values for a set of one or more predicted resource costs of the associated proposed solution, wherein the program instructions to compute the evaluation value for the associated proposed solution also compute the evaluation value based, at least in part, on the second set of evaluation values. 18 . An apparatus comprising: a processor; a computer readable medium having program instructions executable by the processor to cause the apparatus to, in response to a trigger, generate a plurality of propose
based on parameters of servers, e.g. available memory or workload (monitoring of computer activity G06F11/30) · CPC title
based on usage prediction · CPC title
for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title
Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF] · CPC title
Network security protocols · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.