CloudGenius: Decision Support for Web Server Cloud Migration

of 10
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
CloudGenius: Decision Support for Web Server Cloud Migration ABSTRACT Michael Menzel Research Center for Information Technology Karlsruhe Institute of Technology Karlsruhe, Germany Cloud
CloudGenius: Decision Support for Web Server Cloud Migration ABSTRACT Michael Menzel Research Center for Information Technology Karlsruhe Institute of Technology Karlsruhe, Germany Cloud computing is the latest computing paradigm that delivers hardware and software resources as virtualized services in which users are free from the burden of worrying about the low-level system administration details. Migrating Web applications to Cloud services and integrating Cloud services into existing computing infrastructures is non-trivial. It leads to new challenges that often require innovation of paradigms and practices at all levels: technical, cultural, legal, regulatory, and social. The key problem in mapping Web applications to virtualized Cloud services is selecting the best and compatible mix of software images (e.g., Web server image) and infrastructure services to ensure that Quality of Service (QoS) targets of an application are achieved. The fact that, when selecting Cloud services, engineers must consider heterogeneous sets of criteria and complex dependencies between infrastructure services and software images, which are impossible to resolve manually, is a critical issue. To overcome these challenges, we present a framework (called CloudGenius) which automates the decision-making process based on a model and factors specifically for Web server migration to the Cloud. Cloud- Genius leverages a well known multi-criteria decision making technique, called Analytic Hierarchy Process, to automate the selection process based on a model, factors, and QoS parameters related to an application. An example application demonstrates the applicability of the theoretical CloudGenius approach. Moreover, we present an implementation of CloudGenius that has been validated through experiments. Categories and Subject Descriptors D.2.2 [Software Engineering]: Design Tools and Techniques Computer-aided software engineering (CASE), Decision tables, Evolutionary prototyping; H.4.2 [Information Systems Applications]: Types of Systems Decision support (e.g., MIS) Keywords Cloud Computing, Migration Process, Decision Support, Selection Algorithm, Factors, Criteria, Service Selection, Automation Copyright is held by the International World Wide Web Conference Committee (IW3C2). Distribution of these papers is limited to classroom use, and personal use by others. WWW 212,. ACM /12/4. Rajiv Ranjan School of CSE, University of New South Wales Sydney, Australia Information Engineering Lab, CSIRO ICT Center Canberra, Australia 1. INTRODUCTION The emergence of Cloud computing over the past five years is potentially one of the breakthrough advances in the history of computing. Cloud providers including Amazon Web Services (AWS),, or Google App Engine give users the option to deploy their application over a network of infinite resource pool with practically no capital investment and with modest operating cost proportional to the actual use. By leveraging Cloud services to host Web applications organizations can benefit from advantages such as elasticity, pay-per-use, and abundance of resources. However, organisations tend to avoid or delay migrations of Web applications to the Cloud due to multiple hurdles. With Cloud computing being a disruptive technology an adoption brings along risks and obstacles [2]. Risks can turn into effective problems or disadvantages for organizations that may decide to move Web applications to the Cloud. Considering this increases the complexity of the decision associated with migrating a Web application to the Cloud. Such a decision depends on many factors, from risks and costs to security issues and service level expectations [17]. Another critical hurdle is the complexity of migrating a Web application to the Cloud on a technical level while incorporating economical aspects. A migration from an organization-owned data center to a Cloud infrastructure service implies more than few trivial steps. The following steps outline a migration of an organization s Web application to an equivalent on a Cloud infrastructure service. Steps of a migration to a Platform-as-a-Service (PaaS) offering would differ in several regards. First, an appropriate Cloud infrastructure service, or Infrastructure-as-a-Service (IaaS) offering, is selected. This demands a well-thought decision to be made that considers all relevant factors, like e.g., price, Service Level Agreement (SLA) level, or support quality. The basis of a selection are data and measurements regarding each factor that describe the quality and make service options comparable. Secondly, the existing Web application and its platform, i.e., a Web server, are transferred from the local data center to the selected Cloud infrastructure service. Therefore, the Web application and server must be converted into a format expected by a Cloud infrastructure service. Typically, in this step the whole Web application is bundled as a virtual machine (VM) image that consists of a software stack from operating system and software platforms to the software containing the business logic. Since it is often unachievable to convert an existing Web application and its 979 server directly to a Cloud infrastructure service compatible VM image format, an adequate existing VM image offered by the Cloud provider is chosen and customized. Existing images vary in many ways, such as underlying operating system, software inside the software stack or software versions. Hence, selecting a functionally correct VM image becomes a complex task. Besides, choosing a comprehensive VM image helps to minimize the effort of installing a software stack on a basic image. In the end, the resulting VM image should reflect the original Web server and at least replace it in a sufficing manner. Next, a migration strategy needs to be defined and applied to make the transition from the local data center to the Cloud infrastructure service. A migration strategy defines the migration procedure in means of order and data transfer. In case data is affected with the Web application migration all data on the original machine must be transferred to the new system in the Cloud. Finally, all configurations and settings must be applied on the new Web server in the Cloud to finish creating an appropriate equivalent. In sum, the process of migrating an IT system to a Cloud infrastructure service comprises five steps listed in presorted, modifiable order as following: Cloud infrastructure service selection Cloud VM image selection Cloud VM image customization Migration strategy definition Migration strategy application The order reflects the fact that an image can be chosen for a certain Cloud infrastructure service only. Alternatively, selecting a Cloud VM image first restrains the number of eligible Cloud infrastructure services, typically to one. In more complex settings multiple components and databases must be migrated in parallel, what requires to apply the steps described above component-wise. Additionally, interconnections and relations between the components must be considered. In this paper we introduce the CloudGenius framework that lowers hurdles introduced by the complexity of the Cloud migration process. CloudGenius offers a detailed process and comprehensive decision support that reduces a Web engineer s effort of finding a proper infrastructure service and VM image when migrating a Web application to the Cloud. The paper is structured as follows. First, we reflect related work in Section 2 and then present the CloudGenius framework in Section 3. Further, we give an example application of CloudGenius in Section 4 and present CumulusGenius, a prototypical implementation, in Section 5. In Section 6 we present the results of experiments on CumulusGenius time complexity before we discuss limitations and future work in Section 7 and conclude in Section RELATED WORK There is preliminary work in the field of decision support for Cloud VM images and Cloud services. Dastjerdi et al. [6] propose an approach that selects Cloud VM images and Cloud infrastructure services based on an ontology but lacks a service evaluation. Services that fulfill all requirements can not be differentiated regarding quality and suitability in this approach due to the missing evaluation. An ontologybased description to formulate requirements and attributes of a service is used since Dastjerdi et al. introduce a central system that manages service discovery and mediation. Khajeh-Hosseini et al. [11] [12] developed the Cloud Adoption Toolkit that offers a decision support for migrating a whole IT infrastructure of an enterprise. The focus of the decision support is on risk management and cost calculation based on workloads. However, the toolkit lacks considering factors that are not cost-related and supports a decision process which stays on an abstract decision level. Regarding multi-component migration planning, Hajjat et al. [8] made some interesting effort with a model that supports decisions in hybrid Cloud setups. The model addresses the trade-off between direct cost savings, network delays, and internet communication costs and takes a set of specific constraints and requirements into account. Ye et al. [2] solve the mapping of service compositions to Cloud services with a genetic algorithm. The approach considers data and control flow of a composition and evaluates Cloud services by four Quality of Service (QoS) attributes. The approach overlooks the existence of Cloud VM images and focuses on service composition. There is an amount of work on Cloud service selections that, however, lacks factoring in the actual Web server and VM image selection, and misses a decision support and a migration process. Chan and Chieu [3] propose a single value decomposition technique-based approach that evaluates and ranks Cloud computing services by QoS attributes. Li et al. [15] present an approach to measure a provider s performance capabilities. The work introduces a set of interesting metrics to measure, but a method to choose a provider is missing. 3. CLOUDGENIUS FRAMEWORK The complexity of a Web server Cloud migration can be mitigated by a decision support system that is capable of enhancing the quality of Cloud infrastructure service selections and Cloud VM image selections. Both selection tasks can be translated into decision-making problems between multiple alternatives. Each alternative, a Cloud infrastructure service or Cloud VM image, possesses different attributes which can be compared and evaluated with criteria. Finally, both selections must be joined since an image and a service build a single, combined solution. Usually, every Cloud VM image is only compatible with Cloud infrastructure services of few or a single provider restricting the number of viable combinations. Figure 1 depicts the decisions to be made, as well as influential parameters and potential objects of choice. The problem depiction assumes that a user wants to choose a VM image before an infrastructure service. Solid lined arrows imply parameter inheritance and dashed lined arrows point at options to choose from. With CloudGenius we propose an approach that translates both selection steps into multi-criteria decision-making problems to determine the most valuable combination of a Cloud VM image and a Cloud infrastructure service. The CloudGenius framework defines a Cloud migration process. Within the process CloudGenius offers a model and methods to determine the best combined choice of a Cloud VM image and a Cloud infrastructure service. The framework leverages an evaluation and decision-making framework, called (MC 2 ) 2, [16] to support requirements and adopt a profound 98 Figure 1: Overview of the Selection Problem multi-criteria evaluation approach. The (MC 2 ) 2 framework provides a process depicted in Figure 2 that allows to create an evaluation method that contains a requirements check and evaluates multiple alternatives with relative values on a (-1) scale. Within (MC 2 ) 2 process CloudGenius proposes the Analytic Hierarchy Process (AHP) reducing decision modelling effort in comparison to the Analytic Network Process (ANP) suggested by (MC 2 ) 2. AHP allows to build complex weighted sum functions in a structured manner. Weighted sum functions allow compensation between criteria what can be influenced by weights derived from trade-offs stated by a user. Figure 2: Overview of the (MC 2 ) 2 Process CloudGenius allows users to define an abstract Web server and set requirements for a Web server implementation that condition what attributes are acceptable for a Cloud equivalent. Besides, a user has to choose relevant factors from a criteria list and define their priorities by setting weights for criteria in pair-wise comparisons. From the information given by the user the CloudGenius approach employs a model and the user preferences to apply the (MC 2 ) 2 framework and suggest a best Cloud image and Cloud service combination. The following subsections give details on CloudGenius migration process, its formal model, and the selection and combination steps that lead to an adequate VM image and Cloud service from the abundance of offerings. Moreover, the final subsections address an alternative evaluation variant and the computational complexity of CloudGenius. 3.1 A Cloud Migration Process Figure 3 shows the migration process to be followed in the CloudGenius framework modelled in Business Process Model and Notation (BPMN) 2.. The process illustration intends to define steps and highlight activities. The process is triggered by an event Cloud is selected Infrastructure Option occuring after an organization has identified the Cloud infrastructure for a possible or the best infrastructure option for a Web server. The subsequent steps show the information and preferences that need to be provided by the organization and Web engineer (see User Input lane) and what is processed and computed by CloudGenius resp. an implementation of the framework (see CloudGenius implementation lane). Two parallel steps that lie in the responsibility of CloudGenius are linking to the sub-process described by the (MC 2 ) 2 generic decision-making framework. Therefore, the implementation translates user input and the CloudGenius model stored in its database into a model that can be evaluated with (MC 2 ) 2. In the process Web engineers provide input and receive suggestions computed by CloudGenius. From there the migration is executed with a selected VM image and an infrastructure service target. In the final steps of the process a user has the chance to enter a loop, try worse alternatives or reconsider with altered requirements and a new focus. Thereby the process allows users to incrementally improve a migration until a satisfying solution has been found. The migration process ends when the Web application has been successfully migrated to the Cloud. 3.2 Formal Model of CloudGenius In order to formalize the problem addressed by the Cloud- Genius framework, a formal mathematical model is introduced. The model defines the sets of objects involved in the problem and the relations between objects and their evaluation. Table 1 summarizes the parameters of the model included in CloudGenius. The model behind CloudGenius consists of m images a i, n services s j and o providers p k. A is the corresponding set of Web server images, S the set of Cloud infrastructure services and P the set of Cloud providers. a i and s j own numerical, measurable and non-numerical attributes defined in Âa, i  sj, ˆB ai and ˆB sj. χ represents a value connected with a numerical attribute α or non-numerical attribute β. Furthermore, the model introduces r A VM image related requirements and r S service related requirement, and a goal/criteria hierarchy including g goals and c leaf criteria. Based on the model CloudGenius determines the best combination (a i, s j) where a i and s j are the image and infrastructure service of provider p k that have the highest value of all combinations according to the user s preferences and with a i deployable on s j. An evaluation method built with (MC 2 ) 2 can be employed to determine the best image a i A. Therefore, (MC 2 ) 2 s function is interpreted as f(a i, Âa, ˆB i ai ) v ai which returns a value v ai for image a i and allows to find max{v a1,..., v am }. In parallel, the best service s j S has 981 Table 1: CloudGenius Model Parameter Description w Web application to be migrated to the Cloud A = {a 1,..., a m} set of m Cloud VM images S = {s 1,..., s n} set of n Cloud infrastructure services P = {p 1,..., p o} set of o Cloud providers R A = {r A,1,..., r A,rA } set of r A Cloud image requirements R S = {r S,1,..., r S,rS } set of r S Cloud service requirements D = {d 1,..., d q} set of q image-service dependencies (a i, s j) τ h Cloud image a i or service s j as h-th τ A S  τh = {α τh,1,..., α τh,t} set of t numerical attributes of h-th image or service ˆB τh = {β τh,1,..., β τh,u} set of u non-numerical attributes of h-th image or service χ(α) Value of numerical attribute α in CloudGenius database χ(β) Value of non-numerical attribute β in CloudGenius database v τh value of h-th τ calculated with (MC 2 ) 2 the value max{v s1,..., v sn } with f(s j, Âs, ˆB j sj ) v sj. In a final step, given the evaluation results of Cloud VM images and infrastructure services, a best combination is determined. Combinations of an image and a service must be feasible, meaning an image has to be deployable on the service. The feasibility of a combination is indicated by the set D which holds all dependencies between images and services. Not all providers do support standard formats and, thus, set D is required to define the compatibilities between images and services explicitly. The applicability of the approach correlates with the quality of the data hold in the model. Therefore, the number of images and services must possibly reflect the Cloud market that is of interest for a Web server migration. Moreover, the currentness and quality of χ values of all numerical and non-numerical attributes have a high, direct influence on the quality of CloudGenius results. Thus, measurements must be accurate and up-to-date implicitly demanding frequent maintenance of the database. 3.3 Web Server Requirements & Preferences In the first step of applying CloudGenius, a Web engineer has to define and describe the Web server by formulating requirements and their preferences. Requirements formulation comprises choosing a Web server attribute and specifying a minimum or maximum value for numerical values, and a set of allowed items for non-numerical values. Numerical requirements can be of Max or Min type, non-numerical requirements of Equals or OneOf type. Table 2 gives an overview of the possible requirement definitions aligned with the (MC 2 ) 2 framework which uses conjunctive and disjunctive satisficing methods for numerical values. The table assumes χ to be the attribute value under consideration, v r to be the given numerical requirement value, s a given nonnumerical value and S a given set of non-numerical values. Boolean expressions mathematically formulate applied requirements checks regarding an attribute value χ and the requirement constraint. A list of available Web server attributes to set requirements upon can be drawn from merging all available attributes of Cloud VM images and Cloud infrastructure services listed in Table 3, 4, 5 and 6. The tables includes numerical and non-numerical attributes that can be referred to in a requirement condition of a requirement with an according numerical or non-numerical type. Stating preferences is carried out by selecting and weight- Table 2: CloudGenius Requirement Types Value Type Req. Type Boolean Expression Numerical Max χ(α) v r Numerical Min χ(α) v r Non-numerical Equals χ(β) = s Non-numerical OneOf χ(β) S ing
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks