IP Library › Granted Patent US 11,842,214
Granted Patent B2
US 11,842,214 · App. 17/218,596 · Granted Dec 12, 2023

Full-dimensional scheduling and scaling for microservice applications

Inventors: Sunyanan Choochotkaew (Koto, JP); Tatsuhiro Chiba (Bunkyo-ku, JP)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F9/5005G06F9/542G06N5/02
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 11,842,214
App. No.
17/218,596
Filed
Mar 31, 2021
Granted
Dec 12, 2023
Kind
B2
Art Unit
2194
USPC
718/104
Abstract

A computer-implemented method for scheduling and scaling a cloud system for microservice applications is provided including identifying a plurality of nodes within one or more clusters associated with a plurality of containers, generating a model for predicting resource usage among the plurality of nodes, automatically deciding on a number of replicated containers, node bindings, and weight for each replicated container according to application requests and current usage status of a cluster of the one or more clusters that reduce resource usages and microservice cohesion, and determining at least node redistribution of the plurality of nodes within the plurality of containers and workload partitioning to reconfigure scaling, scheduling, and balance deployment requirements of the microservice applications.

Claims (34)

1. A computer-implemented method for scheduling and scaling a cloud system for microservice applications, the method comprising:

identifying a plurality of nodes within one or more clusters associated with a plurality of containers;

generating a model for predicting resource usage among the plurality of nodes;

automatically deciding on a number of replicated containers, node bindings, and weight for each replicated container according to application requests and current usage status of a cluster of the one or more clusters that reduce resource usages and microservice cohesion; and

determining at least node redistribution of the plurality of nodes within the plurality of containers and workload partitioning to reconfigure scaling, scheduling, and balance deployment requirements of the microservice applications.

2. The computer-implemented method of claim 1 , wherein the generated model is a clustering model to cluster arbitrary containers of the plurality of containers into predefined groups based on container behaviors related to workload metrics and the resource usage among the plurality of nodes.

3. The computer-implemented method of claim 2 , wherein, for each cluster of the one or more clusters, build a regression model to predict the resource usage from node-independent loads and occupied status of deployed nodes of the plurality of nodes.

4. The computer-implemented method of claim 1 , further comprising creating a group map and a load map to map each microservice of the microservice applications to a clustered group and expected load from measured features.

5. The computer-implemented method of claim 1 , further comprising validating a previous deployment decision by sorting and migrating the microservice of the microservice applications from a workload minimum order to a deployed node with maximum workload until a threshold is reached for a node capacity constraint.

6. The computer-implemented method of claim 1 , further comprising validating a previous deployment decision by re-predicting resource usage for every new binding set.

7. The computer-implemented method of claim 1 , further comprising validating a previous deployment decision by pre-setting a valid and merged solution to update a most demanding microservice of the microservice applications.

8. The computer-implemented method of claim 1 , further comprising minimizing a weighted and normalized value based on a number of replicated containers.

9. The computer-implemented method of claim 1 , further comprising minimizing a weighted and normalized value based on the microservice cohesion.

10. The computer-implemented method of claim 9 , wherein the microservice cohesion is defined as a service dependency weight between each microservice pair on a same node in a binding set multiplied by a partitioned workload.

11. A computer program product for scheduling and scaling a cloud system for microservice applications, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a computer to cause the computer to:

identify a plurality of nodes within one or more clusters associated with a plurality of containers;

generate a model for predicting resource usage among the plurality of nodes;

automatically decide on a number of replicated containers, node bindings, and weight for each replicated container according to application requests and current usage status of a cluster of the one or more clusters that reduce resource usages and microservice cohesion; and

determine at least node redistribution of the plurality of nodes within the plurality of containers and workload partitioning to reconfigure scaling, scheduling, and balance deployment requirements of the microservice applications.

12. The computer program product of claim 11 , wherein the generated model is a clustering model to cluster arbitrary containers of the plurality of containers into predefined groups based on container behaviors related to workload metrics and the resource usage among the plurality of nodes.

13. The computer program product of claim 12 , wherein, for each cluster of the one or more clusters, build a regression model to predict the resource usage from node-independent loads and occupied status of deployed nodes of the plurality of nodes.

14. The computer program product of claim 11 , wherein a group map and a load map are created to map each microservice of the microservice applications to a clustered group and expected load from measured features.

15. The computer program product of claim 11 , wherein a previous deployment decision is validated by sorting and migrating the microservice of the microservice applications from a workload minimum order to a deployed node with maximum workload until a threshold is reached for a node capacity constraint.

16. The computer program product of claim 11 , wherein a previous deployment decision is validated by re-predicting resource usage for every new binding set.

17. The computer program product of claim 11 , wherein a previous deployment decision is validated by pre-setting a valid and merged solution to update a most demanding microservice of the microservice applications.

18. The computer program product of claim 11 , wherein a weighted and normalized value is minimized based on a number of replicated containers.

19. The computer program product of claim 11 , wherein a weighted and normalized value is minimized based on the microservice cohesion.

20. A system for scheduling and scaling a cloud system for microservice applications, comprising:

a memory; and

one or more processors in communication with the memory configured to:

identify a plurality of nodes within one or more clusters associated with a plurality of containers;

generate a model for predicting resource usage among the plurality of nodes;

automatically decide on a number of replicated containers, node bindings, and weight for each replicated container according to application requests and current usage status of a cluster of the one or more clusters that reduce resource usages and microservice cohesion; and

determine at least node redistribution of the plurality of nodes within the plurality of containers and workload partitioning to reconfigure scaling, scheduling, and balance deployment requirements of the microservice applications.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2021
From: CHOOCHOTKAEW, SUNYANAN; CHIBA, TATSUHIRO
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 055782/0442 →
Continuity (1)
Related Publication 20220318060A1 · Oct 6, 2022
Cited By (1)
US 12,730,620