The “worm” programs—early experience with a distributed computation
Communications of the ACM
Distributed Intelligent Agents
IEEE Expert: Intelligent Systems and Their Applications
Matchmaking: Distributed Resource Management for High Throughput Computing
HPDC '98 Proceedings of the 7th IEEE International Symposium on High Performance Distributed Computing
CoMon: a mostly-scalable monitoring system for PlanetLab
ACM SIGOPS Operating Systems Review
S3: a scalable sensing service for monitoring large networked systems
Proceedings of the 2006 SIGCOMM workshop on Internet network management
Constraint Logic Programming using Eclipse
Constraint Logic Programming using Eclipse
ATEC '04 Proceedings of the annual conference on USENIX Annual Technical Conference
MON: on-demand overlays for distributed system management
WORLDS'05 Proceedings of the 2nd conference on Real, Large Distributed Systems - Volume 2
Service placement in a shared wide-area platform
ATEC '06 Proceedings of the annual conference on USENIX '06 Annual Technical Conference
Remote control: distributed application configuration, management, and visualization with plush
LISA'07 Proceedings of the 21st conference on Large Installation System Administration Conference
Managing Real-World System Configurations with Constraints
ICN '08 Proceedings of the Seventh International Conference on Networking
Dependable self-hosting distributed systems using constraints
HotDep'08 Proceedings of the Fourth conference on Hot topics in system dependability
The flexlab approach to realistic evaluation of networked systems
NSDI'07 Proceedings of the 4th USENIX conference on Networked systems design & implementation
Conductor: orchestrating the clouds
Proceedings of the 4th International Workshop on Large Scale Distributed Systems and Middleware
Declarative configuration management for complex and dynamic networks
Proceedings of the 6th International COnference
Declarative automated cloud resource orchestration
Proceedings of the 2nd ACM Symposium on Cloud Computing
A better way to negotiate for testbed resources
Proceedings of the Second Asia-Pacific Workshop on Systems
Cologne: a declarative distributed constraint optimization platform
Proceedings of the VLDB Endowment
Orchestrating the deployment of computations in the cloud with conductor
NSDI'12 Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation
Generalized resource allocation for the cloud
Proceedings of the Third ACM Symposium on Cloud Computing
Scalable load balancing in cluster storage systems
Proceedings of the 12th International Middleware Conference
Hi-index | 0.00 |
The trend towards cloud and utility computing infrastructures raises challenges not only for application development, but also for management: diverse resources, changing resource availability, and differing application requirements create a complex optimization problem. Most existing cloud applications are managed externally, and this separation can lead to increased response time to failures, and slower or less appropriate adaptation to resource availability and pricing changes. In this paper, we explore a different approach more akin to P2P systems: we closely couple a decentralized management runtime ("Rhizoma") with the application itself. The application expresses its resource requirements to the runtime as a constrained optimization problem. Rhizoma then fuses multiple real-time sources of resource availability data, from which it decides to acquire or release resources (such as virtual machines), redeploying the system to continually maximize its utility. Using PlanetLab as a challenging "proving ground" for cloud-based services, we present results showing Rhizoma's performance, overhead, and efficiency versus existing approaches, as well the system's ability to react to unexpected large-scale changes in resource availability.