IP Library › Granted Patent US 9,891,954
Granted Patent B2
US 9,891,954 · App. 14/601,264 · Granted Feb 13, 2018

Cluster resource management in a virtualized computing environment

Inventors: Jinto Antony (Bangalore, IN); Manikandan Ramasubramanian (Bangalore, IN)
Assignee: VMWARE, INC.
G06F9/5016G06F9/5077
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,891,954
App. No.
14/601,264
Granted
Feb 13, 2018
Kind
B2
Abstract

Techniques for managing computing resources in a cluster are disclosed. In one embodiment, a method includes identifying a virtual machine requiring additional memory. The virtual machine runs on a first host computing system. Further, the method includes determining that the virtual machine does not need additional central processing unit (CPU) resources. Furthermore, the method includes identifying at least one other host computing system having the required additional memory and allocating the required additional memory available in the at least one other host computing system to the virtual machine using a connection to each host computing system having the required additional memory.

Claims (71)

1. A method for managing computing resources in a cluster, comprising:

identifying a virtual machine requiring additional memory, wherein the virtual machine runs on a first host computing system, and wherein the additional memory is not available on the first host computing system for allocating to the virtual machine;

determining that the virtual machine does not need additional central processing unit (CPU) resources;

identifying at least one other host computing system having the required additional memory;

remotely allocating the required additional memory available in the at least one other host computing system to the virtual machine running on the first host computing system using a remote connection from the first host computing system to each host computing system having the required additional memory, wherein the remote connection is a mechanism by which the remotely allocated memory is included in local address space of the first host computing system;

identifying a buffer size associated with the additional memory required for the virtual machine running on the first host computing system; and

assigning a local memory buffer with the identified buffer size in memory of the first host computing system to locally access the required additional memory allocated from the at least one other host computing system.

2. The method of claim 1 , wherein identifying at least one other host computing system having the required additional memory, comprises:

identifying a second host computing system having the required additional memory.

3. The method of claim 2 , wherein allocating the required additional memory available in the at least one other host computing system to the virtual machine comprises:

allocating the required additional memory available in the second host computing system to the virtual machine using a connection to the second host computing system.

4. The method of claim 1 , further comprising storing a copy of the required additional memory allocated from the at least one other host computing system in a shared storage.

5. The method of claim 1 , wherein the connection comprises one of a remote direct memory access (RDMA)-enabled network connection and host bus interconnect hardware.

6. A method for managing computing resources in a cluster, comprising:

identifying a virtual machine requiring additional memory, wherein the virtual machine runs on a first host computing system;

determining that the virtual machine does not need additional central processing unit (CPU) resources;

identifying a second host computing system having the required additional memory;

allocating the required additional memory available in the second host computing system to the virtual machine using a connection to the second host computing system having the required additional memory; and

recommending migrating the virtual machine running on the first host computing system to the second host computing system when the required additional memory associated with the second host computing system is accessed remotely for a predefined time.

7. The method of claim 1 , wherein identifying at least one other host computing system having the required additional memory, comprises:

identifying the required additional memory from a set of host computing systems, wherein the required additional memory includes a portion of memory from each of the set of host computing systems.

8. The method of claim 7 , wherein allocating the required additional memory available in the at least one other host computing system to the virtual machine comprises:

allocating the required additional memory available in the set of host computing systems to the virtual machine using a connection to each of the set of host computing systems.

9. A system comprising:

a cluster comprising a plurality of host computing systems with each host computing system including virtual machines running therein; and

a management server communicative with the cluster, wherein the management server includes a resource management module to:

identify a virtual machine requiring additional memory, wherein the virtual machine runs on a first host computing system in the cluster, and wherein the additional memory is not available on the first host computing system for allocating to the virtual machine;

determine that the virtual machine does not need additional central processing unit (CPU) resources;

identify at least one other host computing system having the required additional memory;

remotely allocate the required additional memory available in the at least one other host computing system to the virtual machine running on the first host computing system using a remote connection from the first host computing system to each host computing system having the required additional memory, wherein the remote connection is a mechanism by which the remotely allocated memory is included in local address space of the first host computing system;

identify a buffer size associated with the additional memory required for the virtual machine running on the first host computing system; and

assign a local memory buffer with the identified butler size in memory of the first host computing system to locally access the required additional memory allocated from the at least one other host computing system.

10. The system of claim 9 , wherein the resource management module is further configured to:

identify a second host computing system having the required additional memory; and

allocate the required additional memory available in the second host computing system to the virtual machine using a connection to the second host computing system.

11. The system of claim 9 , wherein the resource management module is further configured to;

identify the required additional memory from a set of host computing systems, wherein the required additional memory includes a portion of memory from each of the set of host computing systems; and

allocate the required additional memory available in the set of host computing systems to the virtual machine using a connection to each of the set of host computing systems.

12. The system of claim 9 , wherein the resource management module is further configured to store a copy of the required additional memory allocated from the at least one other host computing system in a shared storage.

13. The system of claim 9 , wherein the connection comprises one of a remote direct memory access (RDMA)-enabled network connection and host bus interconnect hardware.

14. A system comprising:

a cluster comprising a plurality of host computing systems with each host computing system including virtual machines running therein; and

a management server communicative with the cluster, wherein the management server includes a resource management module to:

identify a virtual machine requiring additional memory, wherein the virtual machine runs on a first host computing system in the cluster;

determine that the virtual machine does not need additional central processing unit (CPU) resources;

identify a second host computing system having the required additional memory;

allocate the required additional memory available in the second host computing system to the virtual machine using a connection to the second host computing system having the required additional memory; and

recommend migrating the virtual machine running on the first host computing system to the second host computing system when the required additional memory associated with the second host computing system is accessed remotely for a predefined time.

15. A non-transitory computer-readable storage medium including instructions that are configured, when executed by a computing system, to perform a method for managing computing resources in a cluster, the method comprising:

identifying, a virtual machine requiring additional memory, wherein the virtual machine runs on a first host computing system, and wherein the additional memory is not available on the first host computing system for allocating to the virtual machine;

determining that the virtual machine does not need additional central processing unit (CPU) resources;

identifying at least one other host computing system having the required additional memory;

remotely allocating the required additional memory available in the at least one other host computing system to the virtual machine running on the first host computing system using a remote connection from the first host computing system to each host computing system having the required additional memory, wherein the remote connection is a mechanism by which the remotely allocated memory is included in local address space of the first host computing system;

identifying a buffer size associated with the additional memory required for the virtual machine running on the first host computing system; and

assigning a local memory buffer with the identified buffer size in memory of the first host computing system to locally access the required additional memory allocated from the at least one other host computing system.

16. The non-transitory computer-readable storage medium of claim 15 , wherein identifying at least one other host computing system having the required additional memory, comprises:

identifying a second host computing system having the required additional memory.

17. The non-transitory computer-readable storage medium of claim 16 , wherein allocating the required additional memory available in at least one other host computing system to the virtual machine comprises:

allocating the required additional memory available in the second host computing system to the virtual machine using a connection to the second host computing system.

18. The non-transitory computer-readable storage medium of claim 15 , wherein identifying at least one other host computing system haying the required additional memory, comprises:

identifying the required additional memory from a set of host computing systems, wherein the required additional memory includes a portion of memory from each of the set of host computing systems.

19. The non -transitory computer-readable storage medium of claim 18 , wherein allocating the required additional memory available in at least one other host computing system to the virtual machine comprises:

allocating the required additional memory available in the set of host computing systems to the virtual machine using a connection to each of the set of host computing systems.

20. The non-transitory computer -readable storage medium of claim 15 , further comprising storing a copy of the required additional memory allocated from the at least one other host computing system in a shared storage.

21. The non-transitory computer -readable storage medium of claim 15 , wherein the connection comprises one of a remote direct memory access (RDMA)-enabled network connection and host bus interconnect hardware.

22. A non-transitory computer-readable storage medium including instructions that are configured, when executed by a computing system, to perform a method for managing computing resources in a cluster, the method comprising:

identifying a virtual machine requiring additional memory, wherein the virtual machine runs on a first host computing system;

determining that the virtual machine does not need additional central processing unit (CPU) resources;

identifying a second host computing system baying the required additional memory;

allocating the required additional memory available in the second host computing system to the virtual machine using a connection to the second host computing system having the required additional memory; and

recommending migrating the virtual machine running on the first host computing system to the second host computing system when the required additional memory associated with the second host computing system is accessed remotely for a predefined time.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2015
From: ANTONY, JINTO; RAMASUBRAMANIAN, MANIKANDAN
To: VMWARE, INC.
Reel/Frame 034766/0473 →
Priority Claims (1)
IN 5526/CHE/2014 · Nov 4, 2014 · national
Continuity (1)
Related Publication 20160124774A1 · May 5, 2016