IP Library › Granted Patent US 10,795,736
Granted Patent B2
US 10,795,736 · App. 16/216,548 · Granted Oct 6, 2020

Cross-cluster host reassignment

Inventors: Sabareesh Subramaniam (Fremont, CA); Dragos Misca (San Francisco, CA); Pranshu Jain (Sunnyvale, CA); Arpitha Dondemadahalli Ramegowda (Sunnyvale, CA)
Assignee: VMWARE, INC.
G06F9/5088G06F9/45558G06F9/4856G06F9/505G06F9/5077G06F2009/4557G06F2209/503G06F2209/5022
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 10,795,736
App. No.
16/216,548
Granted
Oct 6, 2020
Kind
B2
Abstract

Disclosed are various implementations of approaches for reassigning hosts between computing clusters. A computing cluster assigned to a first queue is identified. The first queue can include a first list of identifiers of computing clusters with insufficient resources for a respective workload. A host machine assigned to a second queue can then be identified. The second queue can include a second list of identifiers of host machines in an idle state. A command can then be sent to the host machine to migrate to the computing cluster. Finally, the host machine can be removed from the second queue.

Claims (73)

1. A system, comprising:

a computing device comprising a processor and a memory;

machine readable instructions stored in the memory that, when executed by the processor, cause the computing device to at least:

identify a computing cluster assigned to a first queue, the first queue comprising a first list of identifiers of computing clusters with insufficient resources for a respective workload;

identify a host machine assigned to a second queue, the second queue comprising a second list of identifiers of host machines in an idle state;

send a command to the host machine to join to the computing cluster; and

remove a host identifier for the host machine from the second queue.

2. The system of claim 1 , wherein the machine readable instructions further cause the computing device to at least:

in response to the host machine joining the computing cluster, evaluate the computing cluster to determine that the computing cluster has sufficient resources for the respective workload; and

remove the computing cluster from the first queue.

3. The system of claim 1 , wherein the host machine is a first host machine assigned to the second queue, the command is a first command, and the machine readable instructions further cause the computing device to at least:

in response to the first host machine joining the computing cluster, evaluate the computing cluster to determine that the computing cluster continues to have insufficient resources for the respective workload;

identify a second host machine assigned to the second queue; and

send a second command to the second host machine to migrate to the computing cluster.

4. The system of claim 1 , wherein the machine readable instructions further cause the computing device to at least:

evaluate the computing cluster to determine that the computing cluster has insufficient resources for the respective workload; and

add the computing cluster to the first queue in response to a determination that the computing cluster has insufficient resources for the respective workload.

5. The system of claim 1 , wherein the computing cluster is a first computing cluster and the machine readable instructions further cause the computing device to at least:

evaluate a second computing cluster to determine that the second computing cluster has insufficient resources for the respective workload; and

add the second computing cluster to the first queue in response to a determination that the second computing cluster has insufficient resources for the respective workload.

6. The system of claim 1 , wherein the computing cluster is a first computing cluster, the command is a first command, and the machine readable instructions further cause the computing device to at least:

evaluate a second computing cluster to determine that host machine can be unassigned from the second computing cluster;

send a second command to the host machine to enter the idle state;

send a third command to the second computing cluster to redistribute the respective workload to other computing resources assigned to the second computing cluster; and

add an identifier of the host machine to the second queue.

7. The system of claim 6 , wherein a determination that the host machine can be unassigned from the second computing cluster is based at least in part on a resource usage rule.

8. A method, comprising:

identifying a computing cluster assigned to a first queue, the first queue comprising a first list of identifiers of computing clusters with insufficient resources for a respective workload;

identifying a host machine assigned to a second queue, the second queue comprising a second list of identifiers of host machines in an idle state;

sending a command to the host machine to join to the computing cluster; and

removing the host machine from the second queue.

9. The method of claim 8 , wherein the method further comprises:

in response to the host machine joining the computing cluster, evaluating the computing cluster to determine that the computing cluster has sufficient resources for the respective workload; and

removing the computing cluster from the first queue.

10. The method of claim 8 , wherein the host machine is a first host machine assigned to the second queue, the command is a first command, and the method further comprises:

in response to the first host machine joining the computing cluster, evaluating the computing cluster to determine that the computing cluster continues to have insufficient resources for the respective workload;

identifying a second host machine assigned to the second queue; and

sending a second command to the second host machine to migrate to the computing cluster.

11. The method of claim 8 , wherein the method further comprises:

evaluating the computing cluster to determine that the computing cluster has insufficient resources for the respective workload; and

adding the computing cluster to the first queue in response to a determination that the computing cluster has insufficient resources for the respective workload.

12. The method of claim 8 , wherein the computing cluster is a first computing cluster and the method further comprises:

evaluating a second computing cluster to determine that the second computing cluster has insufficient resources for the respective workload; and

adding the second computing cluster to the first queue in response to a determination that the second computing cluster has insufficient resources for the respective workload.

13. The method of claim 8 , wherein the computing cluster is a first computing cluster, the command is a first command, and the method further comprises:

evaluating a second computing cluster to determine that host machine can be unassigned from the second computing cluster;

sending a second command to the host machine to enter the idle state;

sending a third command to the second computing cluster to redistribute the respective workload to other computing resources assigned to the second computing cluster; and

adding an identifier of the host machine to the second queue.

14. The method of claim 13 , wherein a determination that the host machine can be unassigned from the second computing cluster is based at least in part on a resource usage rule.

15. A non-transitory computer-readable medium comprising machine readable instructions that, when executed by a processor, cause a computing device to at least:

identify a computing cluster assigned to a first queue, the first queue comprising a first list of identifiers of computing clusters with insufficient resources for a respective workload;

identify a host machine assigned to a second queue, the second queue comprising a second list of identifiers of host machines in an idle state;

send a command to the host machine to join to the computing cluster; and

remove the host machine from the second queue.

16. The non-transitory computer-readable medium of claim 15 , wherein the machine readable instructions further cause the computing device to at least:

in response to migration of the host machine joining the computing cluster, evaluate the computing cluster to determine that the computing cluster has sufficient resources for the respective workload; and

remove the computing cluster from the first queue.

17. The non-transitory computer-readable medium of claim 15 , wherein the host machine is a first host machine assigned to the second queue, the command is a first command, and the machine readable instructions further cause the computing device to at least:

in response to the first host machine joining the computing cluster, evaluate the computing cluster to determine that the computing cluster continues to have insufficient resources for the respective workload;

identify a second host machine assigned to the second queue; and

send a second command to the second host machine to migrate to the computing cluster.

18. The non-transitory computer-readable medium of claim 15 , wherein the machine readable instructions further cause the computing device to at least:

evaluate the computing cluster to determine that the computing cluster has insufficient resources for the respective workload; and

add the computing cluster to the first queue in response to a determination that the computing cluster has insufficient resources for the respective workload.

19. The non-transitory computer-readable medium of claim 15 , wherein the computing cluster is a first computing cluster and the machine readable instructions further cause the computing device to at least:

evaluate a second computing cluster to determine that the second computing cluster has insufficient resources for the respective workload; and

add the second computing cluster to the first queue in response to a determination that the second computing cluster has insufficient resources for the respective workload.

20. The non-transitory computer-readable medium of claim 15 , wherein the computing cluster is a first computing cluster, the command is a first command, and the machine readable instructions further cause the computing device to at least:

evaluate a second computing cluster to determine that host machine can be unassigned from the second computing cluster;

send a second command to the host machine to enter the idle state;

send a third command to the second computing cluster to redistribute the respective workload to other computing resources assigned to the second computing cluster; and

add an identifier of the host machine to the second queue.

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 Jul 11, 2019
From: SUBRAMANIAM, SABAREESH; MISCA, DRAGOS; JAIN, PRANSHU; DONDEMADAHALLI RAMEGOWDA, ARPITHA
To: VMWARE, INC.
Reel/Frame 049723/0769 →
Continuity (1)
Related Publication 20200183758A1 · Jun 11, 2020