University of Illinois Chicago
Browse

Model Based Control for Multi-Cloud Applications

Download (2.99 MB)
thesis
posted on 2014-02-24, 00:00 authored by Marco Miglierina
Cloud Computing is assuming a relevant role in the world of web applications and web services. The main advantage Cloud technologies are bringing is the concept of utility computing. SME do not need to cope with large up-front investments in hardware resources, since they can just acquire resources on a pay-per-use basis from any of the several Cloud providers coming into market in the recent years. Moreover, these technologies allow the possibility of completely delegating to the Cloud Provider intensive tasks, such as the management and the maintenance of the Cloud infrastructure. However, the usage of Cloud systems can lead to relevant issues, which mainly derive from the lack of technology standards and from the intrinsic characteristics of such geographically distributed systems. For example, we can mention the lock-in effect related to the portability of Cloud applications, the problem of data location and data security, the lack of interoperability between different Cloud systems, the problem of performance and cost estimation. What is currently discouraging companies from moving to a Cloud environment is the lack of exclusive access to the IT infrastructure. The quality of service is not under companies direct control. It is Cloud providers responsibility to guarantee a certain level of performances and availability. Since hosting hardware resources are shared among Cloud users, the variability of this quality is very high and this cannot be accepted by several companies, especially those dealing with critical applications. In order to cope with this instability of quality of service, the only solution seems to be deployment of the same application on multiple Clouds and traffic redirection where the performances are best at a given time. In this thesis we propose a controller able to guarantee the desired availability by simultaneously managing several instances of the application on multiple Cloud providers. Controller decisions are based on a model which is able to describe the Multi-Cloud application. The model is kept alive at runtime, by means of continuous parameter estimation. The controller iteratively infers from the updated model if requirements are satisfied and takes decisions on both workload distribution among the various Cloud providers and virtual machines scaling, minimizing costs. The approach was tested in simulated environments against common usage scenarios. Evaluation shows that our controller is capable of minimizing the cost of running the application while respecting availability requirements.

History

Advisor

Buy, Ugo A.

Department

Computer Science

Degree Grantor

University of Illinois at Chicago

Degree Level

  • Masters

Committee Member

Gjomemo, Rigel Santambrogio, Marco

Submitted date

2013-12

Language

  • en

Issue date

2014-02-24

Usage metrics

    Categories

    No categories selected

    Exports

    RefWorks
    BibTeX
    Ref. manager
    Endnote
    DataCite
    NLM
    DC