IP Library › Granted Patent US 12,393,462
Granted Patent B2
US 12,393,462 · App. 17/358,129 · Granted Aug 19, 2025

Dynamic clustering of edge cluster resources

Inventors: Guang Ya Liu (Xian, CN); Guang Han Sui (Beijing, CN); Xun Pan (Xian, CN); Xiao Liang Hu (Xi'an, CN)
Assignee: International Business Machines Corporation
G06F9/5038G06F9/5072G06F9/5077G06F2209/5014G06F2209/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,393,462
App. No.
17/358,129
Granted
Aug 19, 2025
Kind
B2
Abstract

Methods, computer program products, and/or systems are provided that perform the following operations: identifying, in an environment that includes a plurality of edge clusters of edge nodes, a first edge cluster having a resource gap; broadcasting a resource requirement of the first edge cluster to other edge clusters in the plurality; obtaining resource commitments from one or more of the other edge clusters; selecting edge cluster resources from the one or more of the other edge clusters based, at least in part, on the resource commitments; and creating a new cluster including the first edge cluster and the selected edge cluster resources.

Claims (55)

1. A computer-implemented method comprising:

identifying, in an environment that includes a plurality of edge clusters of edge nodes, a first edge cluster having a resource gap, wherein the resource gap comprises a shortage of resources needed to complete a pending workload of the first edge cluster;

broadcasting a resource requirement of the first edge cluster to other edge clusters in the plurality of edge clusters, wherein the resource requirement is a measure of resources needed to resolve the resource gap;

obtaining, based on the resource requirement, resource commitments from one or more of the other edge clusters, wherein a resource commitment from an edge cluster, of the other edge clusters, comprises an indication of idle resources of the edge cluster which can be shared with the first edge cluster;

selecting one or more edge clusters from the one or more of the other edge clusters based, at least in part, on respective resource commitments of each of the one or more of the other edge clusters and respective distances of each of the one or more of the other edge clusters from the first edge cluster;

creating a new cluster including the first edge cluster and the selected one or more edge clusters;

distributing the pending workload of the first edge cluster across the selected one or more edge clusters, wherein the distributing comprises packing an application and data in an image and sending the image to a registry for remote download by the selected one or more edge clusters;

calculating a respective contribution score for each edge cluster of the selected one or more edge clusters in the new cluster, wherein the respective contribution score for a respective edge cluster of the selected one or more edge clusters is proportional to a provided computing power from the respective edge cluster;

processing the pending workload at the selected one or more edge clusters and receiving, at the first edge cluster, results of the processing; and

prioritizing one edge cluster of the selected one or more edge clusters for edge cluster resource competing based on the respective contribution score for the one edge cluster of the selected one or more edge clusters, and wherein the one edge cluster of the selected one or more edge clusters can now have priority for edge cluster resource competing based on previously lending out more resources and having a higher contribution score.

2. The computer-implemented method of claim 1 , wherein the resource commitment of the resource commitments includes a duration for sharing resources of the edge cluster from the other edge clusters.

3. The computer-implemented method of claim 2 , further comprising removing the edge cluster from the new cluster in response to completion of the duration for the edge cluster when the edge cluster is one of the selected one or more edge clusters.

4. The computer-implemented method of claim 1 , wherein the new cluster dynamically adjusts membership of the new cluster based, at least in part, on changing resource requirements of the first edge cluster and changing resource commitments associated with the selected one or more edge clusters.

5. The computer-implemented method of claim 1 , wherein the selecting of the one or more edge clusters is further based, at least in part, on historical cluster information.

6. The computer-implemented method of claim 1 , further comprising:

storing the respective contribution score for the respective edge cluster at the first edge cluster and at the respective edge cluster; and

utilizing the respective contribution score for the respective edge cluster in determining a future selection of edge clusters.

7. A computer program product comprising a computer readable storage medium having stored thereon:

program instructions programmed to identify, in an environment that includes a plurality of edge clusters of edge nodes, a first edge cluster having a resource gap, wherein the resource gap comprises a shortage of resources needed to complete a pending workload of the first edge cluster;

program instructions programmed to broadcast a resource requirement of the first edge cluster to other edge clusters in the plurality of edge clusters, wherein the resource requirement is a measure of resources needed to resolve the resource gap;

program instructions programmed to obtain, based on the resource requirement, resource commitments from one or more of the other edge clusters, wherein a resource commitment from an edge cluster, of the other edge clusters, comprises an indication of idle resources of the edge cluster which can be shared with the first edge cluster;

program instructions programmed to select one or more edge clusters from the one or more of the other edge clusters based, at least in part, on respective resource commitments of each of the one or more of the other edge clusters and respective distances of each of the one or more of the other edge clusters from the first edge cluster;

program instructions programmed to create a new cluster including the first edge cluster and the selected one or more edge clusters;

program instructions programmed to distribute the pending workload of the first edge cluster across the selected one or more edge clusters, wherein the distributing comprises packing an application and data in an image and sending the image to a registry for remote download by the selected one or more edge clusters;

program instructions programmed to calculate a respective contribution score for each edge cluster of the selected one or more edge clusters in the new cluster, wherein the respective contribution score for a respective edge cluster of the selected one or more edge clusters is proportional to a provided computing power from the respective edge cluster;

program instructions programmed to process the pending workload at the selected one or more edge clusters and receiving, at the first edge cluster, results of the processing; and

program instructions programmed to prioritize one edge cluster of the selected one or more edge clusters for edge cluster resource competing based on the respective contribution score for the one edge cluster of the selected one or more edge clusters, and wherein the one edge cluster of the selected one or more edge clusters can now have priority for edge cluster resource competing based on previously lending out more resources and having a higher contribution score.

8. The computer program product of claim 7 , wherein the resource commitment of the resource commitments includes a duration for sharing resources of the edge cluster from the other edge clusters.

9. The computer program product of claim 8 , the computer readable storage medium having further stored thereon:

program instructions programmed to remove the edge cluster from the new cluster in response to completion of the duration for the edge cluster when the edge cluster is one of the selected one or more edge clusters.

10. The computer program product of claim 7 , wherein the new cluster dynamically adjusts membership of the new cluster based, at least in part, on changing resource requirements of the first edge cluster and changing resource commitments associated with the selected one or more edge clusters.

11. The computer program product of claim 7 , wherein the selecting of the one or more edge clusters is further based, at least in part, on historical cluster information.

12. The computer program product of claim 7 , the computer readable storage medium having further stored thereon:

program instructions programmed to store the respective contribution score for the respective edge cluster at the first edge cluster and at the respective edge cluster; and

program instructions programmed to utilize the respective contribution score for the respective edge cluster in determining a future selection of edge clusters.

13. A computer system

comprising: a processor set; and

a computer readable storage medium;

wherein:

the processor set is structured, located, connected and programmed to run program instructions stored on the computer readable storage medium; and

the stored program instructions include:

program instructions programmed to identify, in an environment that includes a plurality of edge clusters of edge nodes, a first edge cluster having a resource gap, wherein the resource gap comprises a shortage of resources needed to complete a pending workload of the first edge cluster;

program instructions programmed to broadcast a resource requirement of the first edge cluster to other edge clusters in the plurality of edge clusters, wherein the resource requirement is a measure of resources needed to resolve the resource gap;

program instructions programmed to obtain, based on the resource requirement, resource commitments from one or more of the other edge clusters, wherein a resource commitment from an edge cluster, of the other edge clusters, comprises an indication of idle resources of the edge cluster which can be shared with the first edge cluster;

program instructions programmed to select one or more edge clusters from the one or more of the other edge clusters based, at least in part, on respective resource commitments of each of the one or more of the other edge clusters and respective distances of each of the one or more of the other edge clusters from the first edge cluster;

program instructions programmed to create a new cluster including the first edge cluster and the selected one or more edge clusters;

program instructions programmed to distribute the pending workload of the first edge cluster across the selected one or more edge clusters, wherein the distributing comprises packing an application and data in an image and sending the image to a registry for remote download by the selected one or more edge clusters;

program instructions programmed to calculate a respective contribution score for each edge cluster of the selected one or more edge clusters in the new cluster, wherein the respective contribution score for a respective edge cluster of the selected one or more edge clusters is proportional to a provided computing power from the respective edge cluster;

program instructions programmed to process the pending workload at the selected one or more edge clusters and receiving, at the first edge cluster, results of the processing; and

program instructions programmed to prioritize one edge cluster of the selected one or more edge clusters for edge cluster resource competing based on the respective contribution score for the one edge cluster of the selected one or more edge clusters, and wherein the one edge cluster of the selected one or more edge clusters can now have priority for edge cluster resource competing based on previously lending out more resources and having a higher contribution score.

14. The computer system of claim 13 , wherein the resource commitment of the resource commitments includes a duration for sharing resources of the edge cluster from the other edge clusters.

15. The computer system of claim 14 , wherein the stored program instructions further comprise:

program instructions programmed to remove the edge cluster from the new cluster in response to completion of the duration for the edge cluster when the edge cluster is one of the selected one or more edge clusters.

16. The computer system of claim 13 , wherein the new cluster dynamically adjusts membership of the new cluster based, at least in part, on changing resource requirements of the first edge cluster and changing resource commitments associated with the selected one or more edge clusters.

17. The computer system of claim 13 , wherein the selecting of the one or more edge clusters is further based, at least in part, on historical cluster information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2021
From: LIU, GUANG YA; SUI, GUANG HAN; PAN, XUN; HU, XIAO LIANG
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 056665/0111 →
Continuity (1)
Related Publication 20220413925A1 · Dec 29, 2022
References Cited (27)
US 8307070B2 · Jeong · 2012 [cited by applicant]
US 10225206B2 · Amulothu · 2019 [cited by applicant]
US 10791168B1 · Dilley · 2020 [cited by examiner]
US 11327806B1 · Nagaraja · 2022 [cited by examiner]
US 20060143495A1 · Bozak · 2006 [cited by applicant]
US 20180167483A1 · Cannon · 2018 [cited by applicant]
US 20190116128A1 · Guo · 2019 [cited by applicant]
US 20190147093A1 · Ikkaku · 2019 [cited by examiner]
US 20190182333A1 · Bartfai-Walcott · 2019 [cited by examiner]
US 20190327506A1 · Zou · 2019 [cited by applicant]
US 20210011765A1 · Doshi · 2021 [cited by examiner]
US 20210037091A1 · Prabhu · 2021 [cited by examiner]
US 20210203554A1 · Peng · 2021 [cited by examiner]
US 20210377336A1 · Lincourt · 2021 [cited by examiner]
US 20220318065A1 · Chen · 2022 [cited by examiner]
CN 112068964A · 2020 [cited by applicant]
WO WO2016076900A1 · 2016 [cited by examiner]
WO 2019076315A1 · 2019 [cited by applicant]
“Use empty edge nodes on Apache Hadoop clusters in HDInsight”, Azure, Microsoft Docs, Jun. 13, 2019, 6 pages, <https://docs.microsoft.com/en-us/azure/hdinsight/hdinsight-apps-use-edge-node>. [cited by applicant]
Authors et al.: Disclosed Anonymously, “System and Method for Proactive Resource Share of Edge Computing Clusters”, IP.com No. IPCOM000263009D, IP.com Electronic Publication Date: Jul. 22, 2020, 3 pages. [cited by applicant]
Essameldin et al., “The Hive: An Edge-based Middleware Solution for Resource Sharing in the Internet of Things”, SmartObjects'17, Oct. 16, 2017, Snowbird, UT, USA, Session 1, pp. 13-18, <https://doi.org/http://dx.doi.or… [cited by applicant]
Li et al., “A new load balancing strategy by task allocation in edge computing based on intermediary nodes”, Journal on Wireless Communications and Networking (2020) 2020:3, 10 pages, <https://doi.org/10.1186/s13638-019… [cited by applicant]
Li et al., “Resource Scheduling Based on Improved Spectral Clustering Algorithm in Edge Computing”, Hindawi Scientific Programming, vol. 2018, Article ID 6860359, 13 pages, https://doi.org/10.1155/2018/6860359. [cited by applicant]
Mell et al., “The NIST Definition of Cloud Computing”, Recommendations of the National Institute of Standards and Technology, Special Publication 800-145, Sep. 2011, 7 pages. [cited by applicant]
O'Keefe, Megan, “Edge Computing and the Cloud-Native Ecosystem”, The New Stack, Apr. 18, 2018, 13 pages, <https://thenewstack.io/edge-computing-and-the-cloud-native-ecosystem/>. [cited by applicant]
Wang et al., “ENORM: A Framework for Edge NOde Resource Management”, Article in IEEE Transactions on Services Computing—Sep. 2017, Manuscript received Jan. 6, 2017, DOI: 10.1109/TSC.2017.2753775, 15 pages. [cited by applicant]
Zafari et al., “Resource Sharing in the Edge: A Distributed Bargaining-Theoretic Approach”, arXiv:2001.04229v3 [cs.GT] Jul. 4, 2020, 12 pages. [cited by applicant]