Virtual Hadoop manager

US9727355B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9727355-B2
Application numberUS-201414311755-A
CountryUS
Kind codeB2
Filing dateJun 23, 2014
Priority dateAug 23, 2013
Publication dateAug 8, 2017
Grant dateAug 8, 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.

A distributed computing application is described that provides a highly elastic and multi-tenant platform for Hadoop applications and other workloads running in a virtualized environment. Multiple instances of a distributed computing framework, such as Hadoop, may be executed concurrently. A centralized manager detects when contention for computing resources, such as memory and CPU, causes tasks to run slower on VMs executing on a given host, and scales up or scales down a cluster based on the detected resource contention.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for executing a multi-tenant distributed computing application within a virtualized computing environment, the method comprising: receiving cluster metrics for each compute cluster in a plurality of compute clusters executing in a virtualized computing environment, wherein each compute cluster includes a workload scheduler and a plurality of worker nodes; receiving resource-related metrics associated with performance of the virtualized computing environment, wherein the resource-related metrics comprise at least one of memory related metrics and CPU-related metrics; making a determination of whether actual resource contention exists among the plurality of compute clusters for computing resources of a host based on the received cluster metrics and resource-related metrics; responsive to making the determination that actual resource contention exists, shrinking at least one of the plurality of compute clusters executing, at least in part, on the host; and responsive to making the determination that actual resource contention does not exist on the host, expanding at least one of the plurality of compute clusters executing, at least in part, on the host and having pending work. 2. The method of claim 1 , wherein the determination of actual resource contention is made based on an amount of memory reclamation for a virtual machine executing on the host exceeding an amount of unused guest memory for the virtual machine. 3. The method of claim 1 , wherein the determination of actual resource contention is made based on CPU ready metrics indicating cycles of time that a virtual machine in the virtualized computing environment was ready but could not get scheduled to run on a physical CPU and based on CPU Overlap metrics that indicate cycles of time a virtual machine in the virtualized computing environment was interrupted to perform system services on behalf of that virtual machine. 4. The method of claim 1 , wherein a portion of the resource-related metrics associated with a VM that was powered-on within an initial time period are disregarded from making a determination of whether actual resource contention exists. 5. The method of claim 1 , wherein shrinking at least one of the plurality of compute clusters executing, at least in part, on the host further comprises: responsive to making the determination that both a memory-contended VM and a CPU-contended VM exist on the host, selecting the memory-contended VM. 6. The method of claim 1 , wherein shrinking at least one of the plurality of compute clusters executing, at least in part, on the host further comprises: decommissioning a task tracker node executing on a VM, and powering off the VM; and wherein expanding at least one of the plurality of compute clusters executing, at least in part, on the host and having pending work further comprises: powering on a VM executing on the host, and re-commissioning a task tracker to execute on the VM. 7. The method of claim 1 , wherein the determination of actual resource contention is made according to a control-theory-based algorithm based on the received cluster metrics and resource-related metrics. 8. The method of claim 7 , further comprising: receiving a second set of cluster metrics and resource-related metrics; and making a determination, during a subsequent action cycle, that actual resource contention exists based on the second set of cluster metrics and resource-related metrics and further based on the cluster metrics and resource-related metrics received during a prior action cycle. 9. The method of claim 1 , further comprising: generating one or more moving averages based on the received resource-related metrics associated with performance of the virtualized computing environment; and discarding a second set of resource-related metrics received during a subsequent action cycle responsive to determining the second set of resource-related metrics are anomalous relative to the moving average. 10. A non-transitory computer readable storage medium having stored thereon computer software executable by a processor, the computer software embodying a method for executing a multi-tenant distributed computing application within a virtualized computing environment, the method comprising: receiving cluster metrics for each compute cluster in a plurality of compute clusters executing in a virtualized computing environment, wherein each compute cluster includes a workload scheduler and a plurality of worker nodes; receiving resource-related metrics associated with performance of the virtualized computing environment, wherein the resource-related metrics comprise at least one of memory related metrics and CPU-related metrics; making a determination of whether actual resource contention exists among the plurality of compute clusters for computing resources of a host based on the received cluster metrics and resource-related metrics; responsive to making the determination that actual resource contention exists, shrinking at least one of the plurality of compute clusters executing, at least in part, on the host; and responsive to making the determination that actual resource contention does not exist on the host, expanding at least one of the plurality of compute clusters executing, at least in part, on the host and having pending work. 11. The non-transitory computer readable storage medium of claim 10 , wherein the determination of actual resource contention is made based on an amount of memory reclamation for a virtual machine executing on the host exceeding an amount of unused guest memory for the virtual machine. 12. The non-transitory computer readable storage medium of claim 10 , wherein the determination of actual resource contention is made based on CPU ready metrics indicating cycles of time that a virtual machine in the virtualized computing environment was ready but could not get scheduled to run on a physical CPU and based on CPU Overlap metrics that indicate cycles of time a virtual machine in the virtualized computing environment was interrupted to perform system services on behalf of that virtual machine. 13. The non-transitory computer readable storage medium of claim 10 , wherein a portion of the resource-related metrics associated with a VM that was powered-on within an initial time period are disregarded from making a determination of whether actual resource contention exists. 14. The non-transitory computer readable storage medium of claim 10 , wherein shrinking at least one of the plurality of compute clusters executing, at least in part, on the host further comprises: responsive to making a determination that both a memory-contended VM and a CPU-contended VM exist on the host, selecting the memory-contended VM. 15. The non-transitory computer readable storage medium of claim 10 , wherein shrinking at least one of the plurality of compute clusters executing, at least in part, on the host further comprises: decommissioning a task tracker node executing on a VM, and powering off the VM; and wherein expanding at least one of the plurality of compute clusters executing, at least in part, on the host and having pending work further comprises: powering on a VM executing on the host, and re-commissioning a task tracker to execute on the VM. 16. The non-transitory computer readable storage medium of claim 10 , wherein the determination of actual resource contention is made according to a control-theory-based algorithm based on the received cluster-metrics and resource-related metrics. 17. The non-transitory computer readab

Assignees

Inventors

Classifications

  • Hypervisor-specific management and integration aspects · CPC title

  • Hypervisors; Virtual machine monitors · CPC title

  • Distribution of virtual machine instances; Migration and load balancing · CPC title

  • involving task migration · CPC title

  • G06F9/455Primary

    Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines · 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 US9727355B2 cover?
A distributed computing application is described that provides a highly elastic and multi-tenant platform for Hadoop applications and other workloads running in a virtualized environment. Multiple instances of a distributed computing framework, such as Hadoop, may be executed concurrently. A centralized manager detects when contention for computing resources, such as memory and CPU, causes task…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 08 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).