Agile dynamic provisioning of multi-tier Internet applications

Dynamic capacity provisioning is a useful technique for handling the multi-time-scale variations seen in Internet workloads. In this article, we propose a novel dynamic provisioning technique for multi-tier Internet applications that employs (1) a flexible queuing model to determine how much of the resources to allocate to each tier of the application, and (2) a combination of predictive and reactive methods that determine when to provision these resources, both at large and small time scales. We propose a novel data center architecture based on virtual machine monitors to reduce provisioning overheads. Our experiments on a forty-machine Xen/Linux-based hosting platform demonstrate the responsiveness of our technique in handling dynamic workloads. In one scenario where a flash crowd caused the workload of a three-tier application to double, our technique was able to double the application capacity within five minutes, thus maintaining response-time targets. Our technique also reduced the overhead of switching servers across applications from several minutes to less than a second, while meeting the performance targets of residual sessions.

[1]  Prashant J. Shenoy,et al.  Sharc: managing CPU and network bandwidth in shared clusters , 2004, IEEE Transactions on Parallel and Distributed Systems.

[2]  Prashant Shenoy,et al.  Cataclysm: Handling Extreme Overloads in Internet Services , 2004, PODC 2004.

[3]  Samuel Kounev,et al.  Performance Modeling and Evaluation of Large-Scale J2EE Applications , 2003, Int. CMG Conference.

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

[5]  Asser N. Tantawi,et al.  Performance management for cluster based Web services , 2003 .

[6]  Louis P. Slothouber,et al.  A Model of Web Server Performance , 1996 .

[7]  L. Cherkasova,et al.  Session-based admission control: a mechanism for improving performance of commercial Web sites , 1999, 1999 Seventh International Workshop on Quality of Service. IWQoS'99. (Cat. No.98EX354).

[8]  Eric A. Brewer,et al.  Cluster-based scalable network services , 1997, SOSP.

[9]  Daniel A. Menascé,et al.  Resource Allocation for Autonomic Data Centers using Analytic Performance Models , 2005, Second International Conference on Autonomic Computing (ICAC'05).

[10]  Douglas M. Freimuth,et al.  Kernel Mechanisms for Service Differentiation in Overloaded Web Servers , 2001, USENIX Annual Technical Conference, General Track.

[11]  Asser N. Tantawi,et al.  An analytical model for multi-tier internet services and its applications , 2005, SIGMETRICS '05.

[12]  Xiaoyun Zhu,et al.  Statistical service assurances for applications in utility grid environments , 2002, Proceedings. 10th IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunications Systems.

[13]  Martin Arlitt,et al.  Workload Characterization of the 1998 World Cup Web Site , 1999 .

[14]  Asser N. Tantawi,et al.  Performance management for cluster-based web services , 2005, IEEE Journal on Selected Areas in Communications.

[15]  Tao Yang,et al.  Integrated resource management for cluster-based Internet services , 2002, OSDI.

[16]  H. Jamjoom,et al.  QGuard: Protecting Internet Servers from Overload , 2000 .

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

[18]  C. Murray Woodside,et al.  General Bypass Architecture for High-Performance Distributed Applications , 1995, Data Communications and their Performance.

[19]  Jeffrey S. Chase,et al.  Energy management for server clusters , 2001, Proceedings Eighth Workshop on Hot Topics in Operating Systems.

[20]  Daniel A. Menascé Web Server Software Architectures , 2003, IEEE Internet Comput..

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

[22]  Prashant J. Shenoy,et al.  Brief announcement: Cataclysm: handling extreme overloads in internet services , 2004, PODC '04.

[23]  Sugih Jamin,et al.  A measurement-based admission-controlled Web server , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[24]  Krishna Kant,et al.  Overload Control Mechanisms for Web Servers , 2001 .

[25]  Martin Arlitt,et al.  A workload characterization study of the 1998 World Cup Web site , 2000, IEEE Netw..

[26]  Joseph L. Hellerstein,et al.  An approach to predictive detection for service management , 1999, Integrated Network Management VI. Distributed Management for the Networked Millennium. Proceedings of the Sixth IFIP/IEEE International Symposium on Integrated Network Management. (Cat. No.99EX302).

[27]  Zongwei Luo,et al.  Layered queueing models for enterprise JavaBean applications , 2001, Proceedings Fifth IEEE International Enterprise Distributed Object Computing Conference.

[28]  Jerome A. Rolia,et al.  The Method of Layers , 1995, IEEE Trans. Software Eng..

[29]  Jeffrey S. Chase,et al.  Balance of Power: Energy Management for Server Clusters , 2001 .

[30]  Prashant J. Shenoy,et al.  Resource overbooking and application profiling in shared hosting platforms , 2002, OSDI '02.

[31]  Akshat Verma,et al.  On admission control for profit maximization of networked service providers , 2003, WWW '03.

[32]  Tarek F. Abdelzaher,et al.  Web Content Adaptation to Improve Server Overload Behavior , 1999, Comput. Networks.

[33]  Ness B. Shroff,et al.  Admission control for statistical QoS: theory and practice , 1999, IEEE Netw..

[34]  Erich M. Nahum,et al.  Locality-aware request distribution in cluster-based network servers , 1998, ASPLOS VIII.

[35]  Benny Rochwerger,et al.  Oceano-SLA based management of a computing utility , 2001, 2001 IEEE/IFIP International Symposium on Integrated Network Management Proceedings. Integrated Network Management VII. Integrated Management Strategies for the New Millennium (Cat. No.01EX470).

[36]  Jeffrey S. Chase,et al.  Correlating Instrumentation Data to System States: A Building Block for Automated Diagnosis and Control , 2004, OSDI.

[37]  Jing Xu,et al.  Performance modeling and prediction of enterprise JavaBeans with layered queuing network templates , 2006, ACM SIGSOFT Softw. Eng. Notes.

[38]  G ShinKang,et al.  Performance Guarantees for Web Server End-Systems , 2002 .

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

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

[41]  J. Rolia,et al.  Performance Analysis of Distributed Server , 1996 .

[42]  Edward W. Knightly,et al.  Multi-class latency-bounded Web services , 2000, 2000 Eighth International Workshop on Quality of Service. IWQoS 2000 (Cat. No.00EX400).

[43]  S. Ranjan,et al.  QoS-driven server migration for Internet data centers , 2002, IEEE 2002 Tenth IEEE International Workshop on Quality of Service (Cat. No.02EX564).

[44]  C. Murray Woodside,et al.  Performance analysis of distributed server systems , 2000 .

[45]  G. J. A. Stern,et al.  Queueing Systems, Volume 2: Computer Applications , 1976 .

[46]  Wei Jin,et al.  USENIX Association Proceedings of USITS ’ 03 : 4 th USENIX Symposium on Internet Technologies and Systems , 2003 .

[47]  Mor Harchol-Balter,et al.  Web servers under overload: How scheduling can help , 2006, TOIT.

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

[49]  Andrew Warfield,et al.  Xen and the art of virtualization , 2003, SOSP '03.

[50]  Mor Harchol-Balter,et al.  Web servers under overload: How scheduling can help , 2006, TOIT.

[51]  David E. Culler,et al.  USENIX Association Proceedings of USITS ’ 03 : 4 th USENIX Symposium on Internet Technologies and Systems , 2003 .

[52]  David E. Irwin,et al.  Dynamic virtual clusters in a grid site manager , 2003, High Performance Distributed Computing, 2003. Proceedings. 12th IEEE International Symposium on.

[53]  Robert P. Goldberg,et al.  Survey of virtual machine research , 1974, Computer.

[54]  David E. Culler,et al.  SEDA: an architecture for well-conditioned, scalable internet services , 2001, SOSP.

[55]  S. Wittevrongel,et al.  Queueing Systems , 2019, Introduction to Stochastic Processes and Simulation.

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

[57]  Dan Rubenstein,et al.  Provisioning servers in the application tier for e-commerce systems , 2004, Twelfth IEEE International Workshop on Quality of Service, 2004. IWQOS 2004..

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