(3 min read)
Cloud-edge environments are becoming increasingly distributed, heterogeneous, and dynamic. Applications may need to run across cloud data centres, edge nodes, and infrastructure owned by multiple providers. While orchestration systems can automate deployment decisions, one challenge remains fundamental:
How do we select the right resources when there is no central entity with a complete view of the infrastructure?
In our recent research work, we explored this question by designing and evaluating a fully distributed resource selection mechanism for cloud-edge systems as part of the Swarmchestrate project.
A Distributed Alternative: Our approach replaces centralised decision-making with a network of Resource Agents (RAs). Each agent represents a resource provider and has visibility only of its own available resources. Instead of sending all information to a central scheduler, agents collaborate directly to determine where application components should be deployed. To achieve this, we adapted the Consensus-Based Bundle Algorithm (CBBA), a distributed task allocation algorithm originally developed for multi-robot systems. In our model:
- Each application consists of multiple microservices.
- Each microservice is treated as a task.
- Resource Agents bid for hosting those microservices based on local utility.
- Agents exchange only lightweight coordination messages.
- Through iterative bidding and consensus, the system converges on a conflict-free allocation without requiring a central controller.
The result is a resource selection mechanism that operates entirely through distributed collaboration.
Does It Work? To evaluate the approach, we compared it against two centralised baselines:
- An exhaustive search method that evaluates all possible valid allocations.
- A First-Fit heuristic designed for fast allocation decisions.
The results were encouraging. The distributed CBBA-based approach consistently produced allocations with costs and QoS characteristics comparable to the optimal centralised method. More importantly, the distributed approach achieved this while dramatically reducing computation time. In terms of scalability, as the number of available resources increased, exhaustive search quickly became impractical. In some scenarios, allocation times grew from seconds to more than an hour. In contrast, the proposed CBBA-based approach maintained low allocation times and continued to scale efficiently. Centralised methods were observed to be up to 30 times slower.
Why This Matters? Resource selection is one of the core building blocks of cloud-edge orchestration. If orchestration is to become truly decentralised, resource allocation decisions can no longer depend on a central scheduler with global knowledge. Our work demonstrates that distributed coordination mechanisms can provide a practical alternative. By leveraging local knowledge, lightweight communication, and consensus-based decision-making, it is possible to achieve allocation quality similar to centralised optimisation while gaining the scalability and resilience required for large-scale cloud-edge environments. This resource selection mechanism forms a key component of the broader Swarmchestrate vision, where orchestration emerges from collaboration among autonomous agents rather than being imposed by a central controller.
Final Thoughts: The main takeaway from this work is simple–Distributed resource selection does not have to mean sacrificing allocation quality. Our adaptation of CBBA shows that fully decentralised agents can collectively make effective resource allocation decisions, achieve near-optimal results while remain scalable enough for large and dynamic cloud-edge infrastructures. As cloud-edge systems continue to grow in scale and complexity, distributed resource selection will become an increasingly important capability for next-gen orchestration platforms.
Editor: Amjad Ullah, Edinburgh Napier University