Assurance of Self-adaptive Controllers for the Cloud

In this paper we discuss the assurance of self-adaptive controllers for the Cloud, and we propose a taxonomy of controllers based on the supported assurance level. Self-adaptive systems for the Cloud are commonly built by means of controllers that aim to guarantee the required quality of service while containing costs, through a careful allocation of resources. Controllers determine the allocation of resources at runtime, based on the inputs and the status of the system, and referring to some knowledge, usually represented as adaptation rules or models. Assuring the reliability of self-adaptive controllers account to assuring that the adaptation rules or models represent well the system evolution. In this paper, we identify different categories of control models based on the assurance approaches. We introduce two main dimensions that characterize control models. The dimensions refer to the flexibility and scope of the system adaptability, and to the accuracy of the assurance results. We group control models in three main classes that depend on the kind of supported assurance that may be checked either at design or runtime. Controllers that support assurance of the control models at design time privilege reliability over adaptability. They usually represent the system at a high granularity level and come with high costs. Controllers that support assurance of the control models at runtime privilege adaptability over reliability. They represent the system at a finer granularity level and come with reduced costs. Controllers that combine different models may balance verification at design and runtime and find a good trade off between reliability, adaptability, granularity and costs.

[1]  Anees Shaikh,et al.  A Cost-Aware Elasticity Provisioning System for the Cloud , 2011, 2011 31st International Conference on Distributed Computing Systems.

[2]  Alessio Gambi,et al.  Kriging-based self-adaptive controllers for the cloud , 2012 .

[3]  Henry Hoffmann,et al.  Comparison of Decision-Making Strategies for Self-Optimization in Autonomic Computing Systems , 2012, TAAS.

[4]  Henry Hoffmann,et al.  Decision making in autonomic computing systems: comparison of approaches and techniques , 2011, ICAC '11.

[5]  Calton Pu,et al.  A Cost-Sensitive Adaptation Engine for Server Consolidation of Multitier Applications , 2009, Middleware.

[6]  Samuel Kounev,et al.  Model-based self-adaptive resource allocation in virtualized environments , 2011, SEAMS '11.

[7]  Isis Truck,et al.  From Data Center Resource Allocation to Control Theory and Back , 2010, 2010 IEEE 3rd International Conference on Cloud Computing.

[8]  Fermín Galán Márquez,et al.  From infrastructure delivery to service management in clouds , 2010, Future Gener. Comput. Syst..

[9]  Calton Pu,et al.  Generating Adaptation Policies for Multi-tier Applications in Consolidated Server Environments , 2008, 2008 International Conference on Autonomic Computing.

[10]  Srikumar Venugopal,et al.  Using reinforcement learning for controlling an elastic web application hosting platform , 2011, ICAC '11.

[11]  Randy H. Katz,et al.  A view of cloud computing , 2010, CACM.

[12]  Zhiliang Zhu,et al.  Dynamic Provisioning Modeling for Virtualized Multi-tier Applications in Cloud Data Center , 2010, 2010 IEEE 3rd International Conference on Cloud Computing.

[13]  Jing Xu,et al.  On the Use of Fuzzy Modeling in Virtualized Data Center Management , 2007, Fourth International Conference on Autonomic Computing (ICAC'07).

[14]  Guillaume Pierre,et al.  Autonomous resource provisioning for multi-service web applications , 2010, WWW '10.

[15]  Jeffrey S. Chase,et al.  Automated control in cloud computing: challenges and opportunities , 2009, ACDC '09.

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

[17]  Naveen Sharma,et al.  Towards autonomic workload provisioning for enterprise Grids and clouds , 2009, 2009 10th IEEE/ACM International Conference on Grid Computing.

[18]  David A. Patterson,et al.  SCADS: Scale-Independent Storage for Social Computing Applications , 2009, CIDR.

[19]  Prashant J. Shenoy,et al.  Agile dynamic provisioning of multi-tier Internet applications , 2008, TAAS.

[20]  Rajarshi Das,et al.  On the use of hybrid reinforcement learning for autonomic resource allocation , 2007, Cluster Computing.

[21]  Michael I. Jordan,et al.  Statistical Machine Learning Makes Automatic Control Practical for Internet Datacenters , 2009, HotCloud.

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

[23]  San Murugesan Web engineering , 1999, LINK.

[24]  Cesare Pautasso,et al.  Engineering Autonomic Controllers for Virtualized Web Applications , 2010, ICWE.

[25]  Jun Han,et al.  A multi-model framework to implement self-managing control systems for QoS management , 2011, SEAMS '11.

[26]  Marin Litoiu,et al.  Service System Resource Management Based on a Tracked Layered Performance Model , 2006, 2006 IEEE International Conference on Autonomic Computing.

[27]  Michael I. Jordan,et al.  The SCADS Director: Scaling a Distributed Storage System Under Stringent Performance Requirements , 2011, FAST.

[28]  Ricardo Bianchini,et al.  DejaVu: accelerating resource allocation in virtualized environments , 2012, ASPLOS XVII.

[29]  Jeffrey S. Chase,et al.  Automated control for elastic storage , 2010, ICAC '10.

[30]  Calton Pu,et al.  Automated control for elastic n-tier workloads based on empirical modeling , 2011, ICAC '11.

[31]  Prashant J. Shenoy,et al.  Autonomic mix-aware provisioning for non-stationary data center workloads , 2010, ICAC '10.

[32]  Rogério de Lemos,et al.  Software Engineering for Self-Adaptive Systems [outcome of a Dagstuhl Seminar] , 2009, Software Engineering for Self-Adaptive Systems.

[33]  Virgílio A. F. Almeida,et al.  Capacity Planning for Web Services: Metrics, Models, and Methods , 2001 .