IP Library Granted Patent US 12,079,663
Granted Patent B2
US 12,079,663 · App. 17/463,210 · Granted Sep 3, 2024

Provisioning of physical servers through hardware composition

Inventors: Pardha Pyla (Mountain View, CA); Srinidhi Varadarajan (Great Falls, VA)
Assignee: Microsoft Technology Licensing, LLC
G06F9/505G06F9/5016H04L43/08G06F2209/505
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 12,079,663
App. No.
17/463,210
Granted
Sep 3, 2024
Kind
B2
Abstract

This disclosure describes techniques that include provisioning compute nodes within a data center out of available pools of hardware. In one example, this disclosure describes a method that includes monitoring, by a computing system, a first workload executing on a first compute node, wherein the first compute node includes processing circuitry and first node secondary storage; monitoring, by the computing system, a second workload executing on a second cluster of compute nodes; expanding, by the computing system, the second cluster of compute nodes to include a second compute node that includes second node secondary storage; redeploying the processing circuitry included within the first compute node to the second compute node; and enabling, by the computing system, the second workload to continue executing on the second cluster of compute nodes including the second compute node.

Claims (60)

1. A method comprising:

monitoring, by a computing system, a first workload executing on a first cluster of compute nodes that includes a first compute node, wherein the first compute node includes processing circuitry and first node secondary storage;

monitoring, by the computing system, a second workload executing on a second cluster of compute nodes;

expanding, by the computing system, the second cluster of compute nodes to include a second compute node that includes second node secondary storage;

redeploying the processing circuitry included within the first compute node to the second compute node; and

enabling, by the computing system, the second workload to continue executing on the second cluster of compute nodes including the second compute node, and wherein the second compute node processes at least a portion of the second workload using the processing circuitry and the second node secondary storage.

2. The method of claim 1 , wherein the processing circuitry is a bare metal server having a processor and memory.

3. The method of claim 2 , wherein the processing circuitry does not include any secondary storage devices or network interface devices or GPUs or FPGAs or other PCIe devices.

4. The method of claim 1 , wherein expanding the second cluster includes initializing the second node secondary storage and network interface devices with information about the second workload.

5. The method of claim 1 , wherein redeploying the processing circuitry includes:

winding down execution of the first workload on the first compute node;

enabling the first workload to continue executing on the first cluster of compute nodes without the first compute node;

detaching the processing circuitry from the first compute node; and

attaching the processing circuitry to the second compute node.

6. The method of claim 5 , wherein detaching the processing circuitry includes:

detaching a processor and memory from the first compute node, while retaining within the first node state information associated with processing of the first workload.

7. The method of claim 1 , wherein expanding the second cluster of compute nodes includes:

determining, based on monitoring the second workload, that the second cluster of compute nodes is experiencing a relatively high CPU utilization; and

determining, based on administrator input or other heuristics, that the second cluster of compute nodes needs additional CPU and memory resources.

8. The method of claim 1 , wherein redeploying the processing circuitry includes:

determining, based on monitoring the first workload, that the first cluster of compute nodes is experiencing a relatively low CPU utilization; and

determining, based on administrator input or other heuristics, that the second cluster of compute nodes can function with reduced CPU and memory resources.

9. The method of claim 1 , further comprising:

monitoring, by the computing system, a third workload executing on a third cluster of compute nodes that includes a third compute node;

winding down execution of the third workload on the third compute node;

enabling the third workload to continue executing on the third cluster of compute nodes without the third compute node;

detaching third node processing circuitry from the third compute node;

recomposing the first compute node by attaching the third node processing circuitry to the first compute node; and

enabling the first compute node to execute at least a portion of the first workload using the third node processing circuitry and the first node secondary storage.

10. A computing system connected to a network and configured to:

monitor, over the network, a first workload executing on a first cluster of compute nodes that includes a first compute node, wherein the first compute node includes processing circuitry and first node secondary storage;

monitor, over the network, a second workload executing on a second cluster of compute nodes;

expand the second cluster of compute nodes to include a second compute node that includes second node secondary storage;

redeploy the processing circuitry included within the first compute node to the second compute node; and

enable the second workload to continue executing on the second cluster of compute nodes including the second compute node, and wherein the second compute node processes at least a portion of the second workload using the processing circuitry and the second node secondary storage.

11. The system of claim 10 , wherein the processing circuitry is a bare metal server having a DPU with processor and memory.

12. The system of claim 11 , wherein the processing circuitry does not include any secondary storage devices or network interface devices or GPUs or FPGAs or other PCIe devices.

13. The system of claim 10 , wherein expanding the second cluster includes initializing the second node secondary storage and network interface devices with information about the second workload.

14. The system of claim 10 , wherein redeploying the processing circuitry includes:

winding down execution of the first workload on the first compute node;

enabling the first workload to continue executing on the first cluster of compute nodes without the first compute node;

detaching the processing circuitry from the first compute node; and

attaching the processing circuitry to the second compute node.

15. The system of claim 14 , wherein detaching the processing circuitry includes:

detaching a processor and memory from the first compute node, while retaining within the first node state information associated with processing of the first workload.

16. The system of claim 10 , wherein expanding the second cluster of compute nodes includes:

determining, based on monitoring the second workload, that the second cluster of compute nodes is experiencing a relatively high CPU utilization.

17. The system of claim 10 , wherein expanding the second cluster of compute nodes includes:

determining, based on administrator input or other heuristics, that the second cluster of compute nodes needs additional CPU and memory resources.

18. The system of claim 10 , wherein redeploying the processing circuitry includes:

determining, based on monitoring the first workload, that the first cluster of compute nodes is experiencing a relatively low CPU utilization.

19. The system of claim 10 , wherein redeploying the processing circuitry includes:

determining, based on administrator input or other heuristics, that the first cluster of compute nodes can function with reduced CPU and memory resources.

20. The system of claim 10 , wherein the computing system is further configured to:

monitor a third workload executing on a third cluster of compute nodes that includes a third compute node;

wind down execution of the third workload on the third compute node;

enable the third workload to continue executing on the third cluster of compute nodes without the third compute node;

detach third node processing circuitry from the third compute node;

recompose the first compute node by attaching the third node processing circuitry to the first compute node; and

enable the first compute node to execute at least a portion of the first workload using the third node processing circuitry and the first node secondary storage.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2023
From: FUNGIBLE, INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 064434/0430 →
RELEASE OF SECURITY INTEREST Recorded Jan 9, 2023
From: HERCULES CAPITAL, INC., AS AGENT
To: FUNGIBLE, INC.
Reel/Frame 062335/0803 →
SECURITY INTEREST Recorded Dec 16, 2021
From: FUNGIBLE, INC.
To: HERCULES CAPITAL, INC., AS AGENT
Reel/Frame 058533/0429 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2021
From: PYLA, PARDHA; VARADARAJAN, SRINIDHI
To: FUNGIBLE, INC.
Reel/Frame 057346/0623 →
Continuity (1)
Related Publication 20230065444A1 · Mar 2, 2023