Adaptive control of virtualized resources in utility computing environments

Data centers are often under-utilized due to over-provisioning as well as time-varying resource demands of typical enterprise applications. One approach to increase resource utilization is to consolidate applications in a shared infrastructure using virtualization. Meeting application-level quality of service (QoS) goals becomes a challenge in a consolidated environment as application resource needs differ. Furthermore, for multi-tier applications, the amount of resources needed to achieve their QoS goals might be different at each tier and may also depend on availability of resources in other tiers. In this paper, we develop an adaptive resource control system that dynamically adjusts the resource shares to individual tiers in order to meet application-level QoS goals while achieving high resource utilization in the data center. Our control system is developed using classical control theory, and we used a black-box system modeling approach to overcome the absence of first principle models for complex enterprise applications and systems. To evaluate our controllers, we built a testbed simulating a virtual data center using Xen virtual machines. We experimented with two multi-tier applications in this virtual data center: a two-tier implementation of RUBiS, an online auction site, and a two-tier Java implementation of TPC-W. Our results indicate that the proposed control system is able to maintain high resource utilization and meets QoS goals in spite of varying resource demands from the applications.

[1]  William E. Weihl,et al.  Lottery scheduling: flexible proportional-share resource management , 1994, OSDI '94.

[2]  Jason Nieh,et al.  The design, implementation and evaluation of SMART: a scheduler for multimedia applications , 1997, SOSP.

[3]  Michael B. Jones,et al.  CPU reservations and time constraints: efficient, predictable scheduling of independent activities , 1997, SOSP.

[4]  Calton Pu,et al.  A feedback-driven proportion allocator for real-rate scheduling , 1999, OSDI '99.

[5]  Willy Zwaenepoel,et al.  Cluster reserves: a mechanism for resource management in cluster-based network servers , 2000, SIGMETRICS '00.

[6]  Mikko H. Lipasti,et al.  An architectural evaluation of Java TPC-W , 2001, Proceedings HPCA Seventh International Symposium on High-Performance Computer Architecture.

[7]  Sang Hyuk Son,et al.  A feedback control approach for guaranteeing relative delays in Web servers , 2001, Proceedings Seventh IEEE Real-Time Technology and Applications Symposium.

[8]  Amin Vahdat,et al.  Managing energy and server resources in hosting centers , 2001, SOSP.

[9]  Artur Andrzejak,et al.  Bounding the Resource Savings of Utility Computing Models , 2002 .

[10]  Timothy Roscoe,et al.  Resource overbooking and application profiling in shared hosting platforms , 2002, OSDI '02.

[11]  K. Shin,et al.  Performance Guarantees for Web Server End-Systems: A Control-Theoretical Approach , 2002, IEEE Trans. Parallel Distributed Syst..

[12]  C. Amza,et al.  Specification and implementation of dynamic Web site benchmarks , 2002, 2002 IEEE International Workshop on Workload Characterization.

[13]  Tao Yang,et al.  Proceedings of the 5th Symposium on Operating Systems Design and Implementation Integrated Resource Management for Cluster-based Internet Services , 2022 .

[14]  S. Parekh,et al.  MIMO control of an Apache web server: modeling and controller design , 2002, Proceedings of the 2002 American Control Conference (IEEE Cat. No.CH37301).

[15]  Prashant J. Shenoy,et al.  Dynamic resource allocation for shared data centers using online measurements , 2003, IWQoS'03.

[16]  HarrisTim,et al.  Xen and the art of virtualization , 2003 .

[17]  Prashant J. Shenoy,et al.  Dynamic resource allocation for shared data centers using online measurements , 2003, IWQoS'03.

[18]  Sven Graupner,et al.  Making the Utility Data Center A Power Station for the Enterprise Grid , 2003 .

[19]  Yixin Diao,et al.  Feedback Control of Computing Systems , 2004 .

[20]  Challenges in control engineering of computing systems , 2004, Proceedings of the 2004 American Control Conference.

[21]  Xiaoyun Zhu,et al.  Triage: performance isolation and differentiation for storage systems , 2004, Twelfth IEEE International Workshop on Quality of Service, 2004. IWQOS 2004..

[22]  Erich M. Nahum,et al.  Yaksha: a self-tuning controller for managing the performance of 3-tiered Web sites , 2004, Twelfth IEEE International Workshop on Quality of Service, 2004. IWQOS 2004..

[23]  Erich M. Nahum,et al.  A method for transparent admission control and request scheduling in e-commerce web sites , 2004, WWW '04.

[24]  Xiaoyun Zhu,et al.  Statistical service assurances for applications in utility grid environments , 2004, Perform. Evaluation.

[25]  Tarek F. Abdelzaher,et al.  Design, implementation, and evaluation of differentiated caching services , 2004, IEEE Transactions on Parallel and Distributed Systems.

[26]  Xiaoyun Zhu,et al.  Designing Controllable Computer Systems , 2005, HotOS.

[27]  Xiaoyun Zhu,et al.  Utilization and SLO-Based Control for Dynamic Sizing of Resource Partitions , 2005, DSOM.

[28]  Xiaoyun Zhu,et al.  Adaptive entitlement control of resource containers on shared servers , 2005, 2005 9th IFIP/IEEE International Symposium on Integrated Network Management, 2005. IM 2005..

[29]  Gail E. Kaiser,et al.  A control theory foundation for self-managing computing systems , 2005, IEEE Journal on Selected Areas in Communications.

[30]  Prashant J. Shenoy,et al.  Dynamic Provisioning of Multi-tier Internet Applications , 2005, Second International Conference on Autonomic Computing (ICAC'05).

[31]  Yuting Zhang,et al.  Friendly virtual machines: leveraging a feedback-control model for application adaptation , 2005, VEE '05.

[32]  Asser N. Tantawi,et al.  Dynamic placement for clustered web applications , 2006, WWW '06.

[33]  Xiaoyun Zhu,et al.  Utility-driven workload management using nested control design , 2006, 2006 American Control Conference.