Resource overbooking and application profiling in a shared Internet hosting platform
- 23 February 2009
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Internet Technology
- Vol. 9 (1) , 1-45
- https://doi.org/10.1145/1462159.1462160
Abstract
In this article, we present techniques for provisioning CPU and network resources in shared Internet hosting platforms running potentially antagonistic third-party applications. The primary contribution of our work is to demonstrate the feasibility and benefits of overbooking resources in shared Internet platforms. Since an accurate estimate of an application's resource needs is necessary when overbooking resources, we present techniques to profile applications on dedicated nodes, possibly while in service, and use these profiles to guide the placement of application components onto shared nodes. We then propose techniques to overbook cluster resources in a controlled fashion. We outline an empirical appraoch to determine the degree of overbooking that allows a platform to achieve improvements in revenue while providing performance guarantees to Internet applications. We show how our techniques can be combined with commonly used QoS resource allocation mechanisms to provide application isolation and performance guarantees at run-time. We implement our techniques in a Linux cluster and evaluate them using common server applications. We find that the efficiency (and consequently revenue) benefits from controlled overbooking of resources can be dramatic. Specifically, we find that overbooking resources by as little as 1% we can increase the utilization of the cluster by a factor of two, and a 5% overbooking yields a 300--500% improvement, while still providing useful resource guarantees to applications.Keywords
This publication has 44 references indexed in Scilit:
- Sharc: managing cpu and network bandwidth in shared clustersIEEE Transactions on Parallel and Distributed Systems, 2004
- Web server software architecturesIEEE Internet Computing, 2003
- Implicit coschedulingACM Transactions on Computer Systems, 2001
- File assignment in parallel I/O systems with minimal variance of service timeIEEE Transactions on Computers, 2000
- The economics of network managementCommunications of the ACM, 1999
- Admission control for statistical QoS: theory and practiceIEEE Network, 1999
- Continuous profilingACM SIGOPS Operating Systems Review, 1997
- The design and implementation of an operating system to support distributed multimedia applicationsIEEE Journal on Selected Areas in Communications, 1996
- The Method of LayersIEEE Transactions on Software Engineering, 1995
- Maximum matching and a polyhedron with 0,1-verticesJournal of Research of the National Bureau of Standards Section B Mathematics and Mathematical Physics, 1965