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
Policy expressivity in the Anzere personal cloud
Proceedings of the 2nd ACM Symposium on Cloud Computing
Scalable load balancing in cluster storage systems
Middleware'11 Proceedings of the 12th ACM/IFIP/USENIX international conference on Middleware
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.