Elsevier

Future Generation Computer Systems

Volume 50, September 2015, Pages 49-61
Future Generation Computer Systems

An autonomic approach to manage elasticity of business processes in the Cloud

https://doi.org/10.1016/j.future.2014.10.017Get rights and content

Highlights

  • We propose an autonomic management model for Cloud resources.

  • We extend Open Cloud Computing Interface to describe our autonomic model.

  • We illustrate our autonomic model with an approach for Business Processes elasticity.

  • We propose a formal approach for Business Processes elasticity.

  • We show the efficiency of our approach on a realistic Cloud environment.

Abstract

Cloud Computing is gaining more and more importance in the Information Technologies (IT) scope. One of the major assets of this paradigm is its economic model based on pay-as-you-go model. Cloud Computing gets more attention from IT users when it fits their required QoS and reduces their expenses. This task cannot be done without increasing the autonomy of the provisioned Cloud resources. In this paper, we propose a holistic approach that allows to dynamically adding autonomic management facilities to Cloud resources even if they were designed without these facilities. Based on the Open Cloud Computing Interface (OCCI) standard, we propose a generic model that allows describing the needed resources to render autonomic a given Cloud resource independently of the service level (Infrastructure, Platform or Software). Herein, we define new OCCI Resources, Links and Mixins that allow provisioning autonomic Cloud Resources. In order to illustrate our approach, we propose a use case that specializes our autonomic infrastructure to ensure the elasticity of Service-based Business Processes (SBPs). The elasticity approach that we are using is based on a formal model that features duplication/consolidation mechanisms and a generic Controller that defines and evaluates elasticity strategies. To validate our proposal, we present an end to end scenario of provisioning an elastic SBP on a public PaaS. Evaluation of our approach on a realistic situation shows its efficiency.

Introduction

Cloud Computing is a challenging area involving different aspects of IT (Information Technologies) services. Its adoption is increasing due its economic model based on pay-as-you-go model. A survey conducted by the Cloud Industry Forum  [1] in 2012 involving 300 companies shows that 53% of the companies are currently adopting the Cloud. The same survey showed that 73% of them are planning to increase their adoption of Cloud services in the next 12 months. The adoption of Cloud could increase rapidly if providers prove their ability to continuously ensure the required Quality of Service (QoS). Indeed, this is a challenging task because Cloud resources are exposed to dynamic evolution during their life-cycle. This evolution is due to the environment dynamic. In order to preserve the QoS in such environment, an autonomic infrastructure should be offered by the Cloud provider. This infrastructure has to enable dynamic monitoring of resources and their adaptation with minimal cost and performance degradation.

Autonomic management  [2] is the ability to manage computing resources automatically and dynamically to respond to the requirements of the business based on Service Level Agreement (SLA). Autonomic computing is usually represented by an autonomic MAPE (Monitor, Analyze, Plan and Execute) loop. This loop consists on harvesting monitoring data, analyzing them and generating reconfiguration actions to correct violations (self-healing and self-protecting) or to target a new state of the system (self-configuring and self-optimizing). We advocate that coupling Autonomic management with Cloud computing allows to maintain the QoS of Cloud resources and reduces their costs. However, this coupling remains critical and challenging since Cloud environments are composed of heterogeneous resources  [3].

Cloud resources provisioning relies on SLA that includes non-functional requirements of services specified as QoS  [4]. QoS is an important concept that informs users about their consumed services  [5], [6]. Obviously, using autonomic management in the Cloud will enhance the QoS of resources. In this paper, we will focus on the use case of the elasticity. We advocate that elasticity is a critical facility that preserves a high level of QoS. The principle of elasticity is to ensure the provisioning of necessary and sufficient resources such that a Cloud service continues running while ensuring the needed QoS even as the number or quantity of its use scales up or down, thereby avoiding under-utilization and over-utilization of resources  [7].

In this paper, we propose a generic model that allows adding autonomic management facilities to any Cloud resource. This model covers all the functions defined within the autonomic MAPE loop. To support our generic model, we propose an extension for Open Cloud Computing Interface (OCCI) standard to add the needed mechanisms. Our extension entails the definition of new OCCI Entities and Mixins that could be dynamically used to establish an autonomic loop around any Cloud resource. To illustrate the usage of our approach, we propose to specialize the autonomic infrastructure to manage the elasticity of Service-based Business Process (SBPs). This kind of business processes are being increasingly deployed and executed in Cloud environments. Since the elasticity of platforms, process engines and service containers is not sufficient to ensure the elasticity of the deployed business processes [8], we advocate that these latter should be provided with their own elasticity mechanisms to allow them to dynamically adapt to the workload changes. The main challenges in this direction are to define the needed mechanisms to perform elasticity of SBPs, and a way to couple these mechanisms with a Controller in order to ensure SBPs elasticity.

The remaining part of this paper is organized as follows. In Section  2, we propose our generic infrastructure to support autonomic management of Cloud resources. Then, in Section  3, we present our extension of OCCI standard to describe autonomic management resources. The extension entails all OCCI Entities and Mixins that allow the establishment of an autonomic loop around a given Cloud resource. To give more understanding of our approach, in Section  4, we propose to specialize our infrastructure in order to support elasticity of SBPs as a specific kind of Cloud resources. We chain up with the validation of our approach in Section  5, which contains the different aspects of our implementations and some experiment results. Further, we present some related works in Section  6 before listing our conclusions and perspectives.

Section snippets

Autonomic management for Cloud resources

IBM  [2] defines Autonomic Computing as the ability to manage computing resources that automatically and dynamically respond to the requirements of the business based on SLA. In our work, we are interested in Cloud environments. Such environments are composed of an increasing number of heterogeneous resources. The management of these resources is becoming more and more complex. We advocate that management tasks like monitoring, configuration, protection, optimization are not the main functional

Autonomic management for OCCI resources

In this section, we introduce OCCI standards. Then, we present our extension to support autonomic management for Cloud resources. We define the different OCCI Entities (i.e., Resources and Links) and Mixins that we need to establish each function of the MAPE loop.

Autonomic management for SBPs elasticity

In this section, we will apply our approach on SBPs to ensure their elasticity and consequently maintain their QoS. We will use our mechanisms to dynamically add elasticity facilities to SBPs. To this aim we start by introducing a formal model to represent SBPs. Then, we will propose an approach to dynamically add elasticity to SBPs. Moreover, we will define an elasticity Controller that will cover the Analyze and Plan functions of the MAPE loop in order to ensure SBPs elasticity.

Validation

In order to validate our work, we implemented an OCCI server that supports the previously described resources. We also implemented the OCCI compliant API that allows to seamlessly interact with different PaaS Providers. Then, we realized preliminary experiments to test the efficiency of our proposal. In the following, we describe the different aspects of our implementation as well as the experiment results.

Related work

In the state of the art there are different proposals for Autonomic Computing systems as well as elasticity. Meanwhile, these proposals treat the two areas separately. In the following are different works treating these two aspects.

Conclusions

In this paper, we proposed an end to end approach that allows provisioning autonomic Cloud resources. Based on the Open Cloud Computing Interface (OCCI) standard we proposed a model that allows describing the needed elements to render autonomic a given Cloud resource independently of the service level. To illustrate our approach, we proposed to specialize our autonomic infrastructure to manage Service-based Business Processes (SBPs) elasticity. To this aim, we proposed an elasticity Controller.

Acknowledgments

The work presented in this paper was partially funded by the French FSN OpenPaaS   013904-405115   [40] and the European ITEA Easi-Clouds   112930163   [41] projects.

Mohamed Mohamed is a Ph.D. Candidate at Institut Mines-Telecom, Telecom SudParis, France. He is working in the Computer Science Department under the supervision of Djamel Belaïd and Samir Tata. His research interests are around Cloud Computing provisioning and management. He is also interested in Autonomic Computing field. For more information see http://www-inf.int-evry.fr/~mohame_m/.

References (41)

  • T. Metsch et al.

    Open Cloud Computing Interface — RESTful HTTP Rendering, Tech. Rep.

    (2011)
  • T. Metsch et al.

    Open Cloud Computing Interface — Infrastructure, Tech. Rep.

    (2011)
  • S. Yangui et al.

    Open Cloud Computing Interface — Platform, Tech. Rep.

    (2013)
  • M. Sellami et al.

    Open Cloud Computing Interface — Application, Tech. Rep.

    (2013)
  • M. Amziani, T. Melliti, S. Tata, Formal modeling and evaluation of stateful service-based business process elasticity...
  • M. Amziani, K. Klai, T. Melliti, S. Tata, Time-based evaluation of service-based business process elasticity in the...
  • M. Amziani, T. Melliti, S. Tata, Formal modeling and evaluation of service-based business process elasticity in the...
  • H. Ghanbari, B. Simmons, M. Litoiu, G. Iszlai, Exploring alternative approaches to implement an elasticity policy, in:...
  • G. Galante, L. de Bona, A survey on Cloud computing elasticity, in: IEEE International Conference on Utility and Cloud...
  • L.M. Vaquero et al.

    Dynamically scaling applications in the Cloud

    SIGCOMM Comput. Commun. Rev.

    (2011)
  • Cited by (48)

    • Dynamic resource provisioning for service-based cloud applications: A Bayesian learning approach

      2022, Journal of Parallel and Distributed Computing
      Citation Excerpt :

      This is achieved using QoS-based Resource Aware Elasticity framework (QRE) that mainly stresses on analyzing effective indicators with the use of decision tree classifier to handle the resource capacity. Mohamed et al. [27] follows MAPE-K based scaling with reactive approach to handle various challenges faced during the initial stages of VM deployment. Ziad et al. [2] proposes autonomic scaling framework based on control loop which facilitates the scaling up of machines and scaling down of hardware (hosts) and VMs.

    • A formal quantitative analysis of elastic cloud systems based on PSMaude

      2020, Journal of King Saud University - Computer and Information Sciences
      Citation Excerpt :

      The approach was extended in (Amziani et al., 2013) to consider stateful service-based business processes. Based on that model and using the Open Cloud Computing Interface (OCCI) standard, a model for autonomic resource provisioning was defined in (Amziani et al., 2015). Dustdar et al. (2015) presented a methodology to develop ECSs and proposed a formal approach allowing cloud providers to specify desirable/undesirable behaviours of their systems.

    • Model-driven cloud resource management with OCCIware

      2019, Future Generation Computer Systems
      Citation Excerpt :

      To resolve this issue, we introduced two new concepts (the blue-colored classes), i.e., Extension and Configuration. Extension represents an OCCI extension, e.g., inter-cloud networking extension [27], infrastructure extension [20], platform extension [22,28,29], application extension [29], SLA negotiation and enforcement [30], cloud monitoring extension [31], and autonomic computing extension [32–35]. Extension has a name, a scheme, a description, a specification, owns zero or more kinds, zero or more mixins, zero or more data types, and can import zero or more extensions.

    • Towards a Fuzzy Bigraphical Multi Agent System for Cloud of Clouds Elasticity Management

      2018, International Journal of Approximate Reasoning
      Citation Excerpt :

      Especially, the horizontal scale elasticity method, which is described by two Petri nets operations for the Cloud service duplication and consolidation. In [31], an extension of the previous work is proposed to ensure the autonomic provisioning of resources at service level based on the Open Cloud Computing Interface (OCCI) standard. In [32], authors adopt bigraphical reactive system (BRS) as a semantic framework for specifying Cloud-based elastic systems.

    • CoMe4ACloud: An end-to-end framework for autonomic Cloud systems

      2018, Future Generation Computer Systems
      Citation Excerpt :

      However both approaches are targeting only Cloud systems structured as a SaaS deployed in a IaaS, whereas our approach allows modeling Cloud systems at any layer. In [48], the authors extend OCCI in order to support autonomic management for Cloud resources, describing the needed elements to make a given Cloud resource autonomic regardless of the service level. This extension allows autonomic provisioning of Cloud resources, driven by elasticity strategies based on imperative Event–Condition–Action rules.

    • Formal reconfiguration model for cloud resources

      2023, Software and Systems Modeling
    View all citing articles on Scopus

    Mohamed Mohamed is a Ph.D. Candidate at Institut Mines-Telecom, Telecom SudParis, France. He is working in the Computer Science Department under the supervision of Djamel Belaïd and Samir Tata. His research interests are around Cloud Computing provisioning and management. He is also interested in Autonomic Computing field. For more information see http://www-inf.int-evry.fr/~mohame_m/.

    Mourad Amziani is a Ph.D. Candidate at Institut Mines-Telecom, Telecom SudParis and University of Evry, France. He is working under the supervision of Tarek Melliti and Samir Tata. He is interested in Cloud Computing Elasticity, Service-based Business Processes and Formal methods for software engineering. For more information see http://www-inf.int-evry.fr/~amziani/.

    Djamel Belaïd is the Head of the Computer Science Department of Telecom SudParis. He received his Ph.D from the University of Grenoble. His research interests are basically in the Management of Service based Applications in Cloud Environments, Service Oriented Architecture and Service Component Architecture.

    Samir Tata is currently a Professor in the Department of Computer Science at Télécom SudParis, France. His current research areas include business process management, service oriented computing and their applications in virtual enterprises and cloud environments. He was Chair of several international conference and workshops. He was/is member of the steering or the program committee of several international conferences. For more information, see http://www-inf.it-sudparis.eu/~tata.

    Tarek Melliti is an Associate Professor in the Computer Science Department at the University of Evry, France. He is a Permanent Researcher at IBISC laboratory. He received his Ph.D. in 2004 from the University of Paris-Dauphine, France. His research activities are about studying discrete systems properties such as diagnosis and ”diagnosability”, Formal methods for software engineering and boolean automata networks.

    View full text