Nevertheless, the provisioning f elastic infrasonic- tires and/or platforms is not sufficient to provide users with elasticity at the level of Kbps. Therefore, there is a need to provide Kbps with mechanisms to scale their resource requirements up and down whenever possible. This can be achieved using mechanisms for duplicating and consolidating business services that compose the Kbps. In this paper, we propose a formal model and a generic framework for elasticity of Kbps. Introduction Cloud computing is a new delivery model for IT services based on Internet protocols.
It typically involves provisioning of dynamically scalable and often brutalized sources at the infrastructure, platform and software levels. Cloud environments are being increasingly used for deploying and executing business processes and particularly service-based business processes (Kbps) that are made up of components that provide business services. One of the expected facilities of cloud environments is elasticity at different levels. At the platform as a service (Pass) level, the deployed processes should be pro- vided with platform mechanisms that can scale up and down whenever needed.
In this context, we have conducted studies of existing application servers and SSP engines. These classical platforms are not elastic [6]. For that reason, we have developed a new model for service deployment called micro-container [8]. Our approach was based on a simple idea that consists in dedicating a micro- container with minimal and personalized functionalities to manage the life cycle of each deployed services. With this idea we have shown the elasticity of services deployed at the Pass level can be ensured [8].
In addition, we have shown that elastic micro-containers can be used to host service-based application. Nonetheless, provisioning of elastic platforms, e. G. Based on micro- entertainers, is not sufficient to provide users with elasticity of the deployed business process (at the Software as a Service (AAAS) level). Therefore, Kbps should be provided with elasticity so that they would be able to adapt to the workload changes while Barras, A. Gal, and E. Kindler (Des. ): BPML 2012, LENS 7481, up. 194-199, 2012. ICQ Springer-Average Berlin Heidelberg 2012 ensuring the desired functional and non-functional properties.
In this paper we address elasticity at the level of Kbps that mainly raises the following questions. What mechanisms should be developed to perform elasticity of Kbps? How to evaluate elasticity strategies of Kbps? Performing elasticity consists in providing cloud environments with mechanisms that allow deployed Kbps to scale up or down. To scale up a SSP, elasticity mechanisms have to create, as many copies as necessary, of some business services (part of the considered SSP). To scale down a SSP, elasticity mechanisms have to remove unnecessary copies of some services.
Many strategies that decide on when SSP elasticity is performed can be pro- posed. It would be useful for a Cloud provider to have an evaluation framework in order to make a better decision on the elasticity titrate to adopt. In this paper, we propose a formal model for SSP elasticity and a framework to evaluate elasticity strategies. Model for Kbps Elasticity We are interested in this paper in modeling elasticity of Kbps. A SSP is a buss- news process that consists in assembling a set of elementary IT-enabled services. These services realize the business activities of the considered SSP.
Assembling services into a SSP can be ensured using any appropriate service composition specifications (e. G. PEEL). Elasticity of a SSP is the ability to duplicate or con- solidest as many instances of the process or some of its services as needed to handle the dynamic of received requests. Indeed, we believe that handling alas- itchy does not only operate at the process level but it should operate at the level of services too. It is not necessary to duplicate all the services of a considered SSP while the bottleneck comes from some services of the SSP. SSP Modeling We model the SSP using Petri nets.
Many approaches model Kbps using Petri nets, but instead of focusing on the execution model of processes and their services, we focus on the dynamic (evolution) of loads on each basic service participating in the Kbps composition. In the proposed model, each service is represented by a place. The transitions represent calls transfers between services. Definition 1. A SSP load model is a Petri net N =< P,T ,P re,P cost >: P : a set of places (represents the set of services involving in a SSP). T : a set of transitions (represents the call transfers between services according to the SSP behavioral specification). Post: For a place p and a transition t we give the following notations: IP 1}. ;p Post(t, e P Post(t, 1}. ;t- {p e P IP re(p, t) = 1} Definition 2. Let N be a Petri net, we define a net system S = (N, M ) with M : N a marking that associates to each place an amount of tokens. The marking of a Petri net represents a distribution of calls over the set of seer- vices that compose the SSP. A Petri net system models a particular distribution of calls over the services of a deployed SSP. Definition 3. Given a net system S = (N, M ) we say that a transition t is variable in the marking M , noted by M [t) if Yap e; t : M (p) 1.
Definition 4. The firing of a transition t in marking M changes the marking of the net system to M I s. T. Yap : M I(p) = M (p) + (P cost(t, p) – P re(p, t)), we note the transition by The transition firing represents the evolution of the load distribution after calls transfer. The way that calls are transferred between services depends on the behavior specification (workflow operators) of the SSP. Elasticity Operations Place Duplication As noted before places represent services deployed on containers. The marking of a place denote the number of the current instances (or requests) of the service.
Each service has a maximal capacity over what the So of the service decrease and can leads to the stuck of the container and by the same way the crash of the service. Giving to the container more memory and/or more CPU time will not change the issue of the problem [8]. A solution to this problem is to duplicate the service without changing underlying SSP. Definition 5. Let S = (N, M ) be a net system and let p e P, the duplication of p in S by a new place PC (E P), noted as D(S, p, PC), is a new net system SSL = (N I,M l) s. T P I = P U {PC} TIT=TIT with pep U M I : P I -??+ N with M I(Pl) = M (Pl) if Pl PC and O otherwise.
The P reel (respectively P sots) functions are defined as follow: 0 P re(Pl, TTL) Pl e P A TTL e T P re(Pl, t)et A TTL Pl e (P P reel(Pl, P re(p,t) t e T A TTL Pl = PC 0 Otherwise. Post(TTL, Pl) Pl e PA TTL e T post(t, Pl)et A TTL Pl e (P e-AYA P sots(TTL, Pl) =P cost(t, p) TTL(TTL T)Pl = PC Fig. 1. Example of the elasticity off SSP Place Consolidation When a service has few calls, the containers that host its instances use more resources than required for the same So. As a dual operator to duplication we define the consolidation or merging operator that removes a copy of a service.
Definition 6. Lets = (N, M ) be a net system and let p, PC be two places in N with p PC, the consolidation of PC in p, noted as C(S, p, PC), is a new net system SSL = (N I,M l) . T N l: is the net N after removing the place PC and the transitions (PC); IS; PC M I : P I -??+ N with M I(p) = M (p)+ M (PC) and M I(Pl) = M (Pl) if Pl p. Example 1 . Figure 1-(a) shows an example of nets system that represents an SSP. Figure 1-(b) is the resulted system from the duplication offs 1 in (a). Figure I(c) is the consolidation of the place so 1 in its copy so 2.
A Generic Framework for Kbps Elasticity Usually in the Cloud, a set of policies is implemented to guarantee some SLAY properties to the deployed applications. These policies are implemented in what is usually called controller. In our case, we are interested in elasticity policies of services that compose a SSP. In order to achieve this, we want to develop a controller to provide an optimal ratio So and allocated resources of a SSP. The proposed controller (Figure 2)-(a) is able to perform three actions: Routing: Routing decision is about the way a load of services is routed over the set of their copies.
It determines under which condition a given transition (call transfer) is fired. One can think of routing as a way to define a strategy to control the flow of load according to some rules e. . A call is transferred if the resulted marking does not violate the capacity of the services. Duplication: Duplication decision is about the creation of a new copy of a service in order to meet its increased workload. Fig. 2. General architecture of the controller Consolidation: Consolidation decision is about the removing of an nuances- Sara copy of a service in order to meet its workload decrease.
If we consider the three actions that can be performed by an elasticity controller, any combination of conditions associated with a decision of routing, duplicate- Zion and installation is an elasticity strategy. The strategy is responsible of making decisions on the execution of elasticity mechanisms I. E. Deciding when and how to use these mechanisms. Several strategies can be used to manage the SSP elasticity [4]. The abundance of possible strategies requires evaluating these strategies before implementing them.
Our goal here is not to propose an add- action elasticity strategy, but a framework, called generic controller that allows the implementation and evaluation of Kbps elasticity strategies. We model the controller as a high level Petri net (HELP). The structure of the controller is shown in Figure 2-(b). The controller HELP contains one place (BP) of type net systems (Kbps). The marking of this place is modified by three transitions that represent the three elasticity mechanisms (Routing, Duplication and Consolidation). Each of these transitions is guarded by a generic condition.
Implementing a strategy consists then in instantiating the three generic condo- actions. The respectability graph resulted from the instantiated controller represents the different evolutions of the SSP according to the strategy. Using HELP anal- his tools, the evaluation of the strategy can be processed by model-checking its respectability graph. Related Work The elasticity in the Cloud has been studied in the past. Proposed approaches use generally sets of rules to make decisions about the elasticity of the infra- Truckee. In this kind of approaches, several techniques have been used.
In [3] the authors propose to add or remove VIM according to demands. In [5,1] the AU- thorns propose to calculate the optimal number of VIM to be deployed according to variations of demands. The use of duplication/consolidation mechanisms to provide elasticity have en considered in the area of dynamic service deployment [2,7]. The proposed mechanisms allow the duplication/consolidation of the entire SSP (and so, of all its services) while the bottleneck may come from some services of the SSP. At the best of our knowledge the approaches for elasticity are interested in the infrastructure level of cloud environments (alas).
As stated before, ensuring elasticity at the alas level is not sufficient to provide users with elasticity of deployed Kbps. Similarly, ensuring elasticity at the Pass level is not enough to ensure elasticity of deployed Kbps. We live that elasticity should be handled and tuned at different levels of cloud environments. The work we present in this paper is novel in the sense that it (1) tackles the problem of elasticity at the AAAS level and (2) proposes a generic framework for evaluating Kbps elasticity. Conclusion This paper addresses the problem of elasticity of service-based business pro- ceases (Kbps) deployed in cloud environments.