Virtual Hadoop manager
First Claim
Patent Images
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 Assignments
0 Petitions
Accused Products
Abstract
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.
56 Citations
20 Claims
-
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. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
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. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system for executing a distributed computing application within a virtualized computing environment, the host computer system comprising:
-
a memory device; a processor coupled to the memory device that contains a program for the processor to carry out the steps of; 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. - View Dependent Claims (20)
-
Specification