Computing and Information Systems - Theses

Permanent URI for this collection

Search Results

Now showing 1 - 9 of 9
  • Item
    Thumbnail Image
    Auto-scaling and deployment of web applications in distributed computing clouds
    Qu, Chenhao ( 2016)
    Cloud Computing, which allows users to acquire/release resources based on real-time demand from large data centers in a pay-as-you-go model, has attracted considerable attention from the ICT industry. Many web application providers have moved or plan to move their applications to Cloud, as it enables them to focus on their core business by freeing them from the task and the cost of managing their data center infrastructures, which are often over-provisioned or under-provisioned under a dynamic workload. Applications these days commonly serve customers from geographically dispersed regions. Therefore, to meet the stringent Quality of Service (QoS) requirements, they have to be deployed in multiple data centers close to the end customer locations. However, efficiently utilizing Cloud resources to reach high cost-efficiency, low network latency, and high availability is a challenging task for web application providers, especially when the service provider intends to deploy the application in multiple geographical distributed Cloud data centers. The problems, including how to identify satisfactory Cloud offerings, how to choose geographical locations of data centers so that the network latency is minimized, how to provision the application with minimum cost incurred, and how to guarantee high availability under failures and flash crowds, should be addressed to enable QoS-aware and cost-efficient utilization of Cloud resources. In this thesis, we investigated techniques and solutions for these questions to help application providers to efficiently manage deployment and provision of their applications in distributed computing Clouds. It extended the state-of-the-art by making the following contributions: 1. A hierarchical fuzzy inference approach for identifying satisfactory Cloud services according to individual requirements. 2. Algorithms for selection of multi-Cloud data centers and deployment of applications on them to minimize Service Level Objective (SLO) violations for web applications requiring strong consistency. 3. An auto-scaler for web applications that achieves both high availability and significant cost saving by using heterogeneous spot instances. 4. An approach that mitigates the impact of short-term application overload caused by either resource failures or flash crowds in any individual data center through geographical load balancing.
  • Item
    Thumbnail Image
    Energy-efficient management of resources in container-based clouds
    Fotuhi Piraghaj, Sareh ( 2016)
    CLOUD enables access to a shared pool of virtual resources through Internet and its adoption rate is increasing because of its high availability, scalability and cost effectiveness. However, cloud data centers are one of the fastest-growing energy consumers and half of their energy consumption is wasted mostly because of inefficient allocation of the servers resources. Therefore, this thesis focuses on software level energy management techniques that are applicable to containerized cloud environments. Containerized clouds are studied as containers are increasingly gaining popularity. And containers are going to be major deployment model in cloud environments. The main objective of this thesis is to propose an architecture and algorithms to minimize the data center energy consumption while maintaining the required Quality of Service (QoS). The objective is addressed through improvements in the resource utilization both on server and virtual machine level. We investigated the two possibilities of minimizing energy consumption in a containerized cloud environment, namely the VM sizing and container consolidation. The key contributions of this thesis are as follows: 1. A taxonomy and survey of energy-efficient resource management techniques in PaaS and CaaS environments. 2. A novel architecture for virtual machine customization and task mapping in a containerized cloud environment. 3. An efficient VM sizing technique for hosting containers and investigation of the impact of workload characterization on the efficiency of the determined VM sizes. 4. A design and implementation of a simulation toolkit that enables modeling for containerized cloud environments. 5. A framework for dynamic consolidation of containers and a novel correlation-aware container consolidation algorithm. 6. A detailed comparison of energy efficiency of container consolidation algorithms with traditional virtual machine consolidation for containerized cloud environments.
  • Item
    Thumbnail Image
    Resource provisioning and scheduling algorithms for scientific workflows in cloud computing environments
    Rodriguez Sossa, Maria Alejandra ( 2016)
    Scientific workflows describe a series of computations that enable the analysis of data in a structured and distributed manner. Their importance is exacerbated in todays big data era as they become a compelling mean to process and extract knowledge from the ever-growing data produced by increasingly powerful tools such as telescopes, particle accelerators, and gravitational wave detectors. Due to their large-scale nature, scheduling algorithms are key to efficiently automate their execution in distributed environments, and as a result, to facilitate and accelerate the pace of scientific progress. The emergence of the latest distributed system paradigm, cloud computing, brings with it tremendous opportunities to run workflows at low costs without the need of owning any infrastructure. In particular, Infrastructure as a Service (IaaS) clouds, offer an easily accessible, flexible, and scalable infrastructure for the deployment of these scientific applications by providing access to a virtually infinite pool of resources that can be acquired, configured, and used as needed and are charged on a pay-per-use basis. This thesis investigates novel resource provisioning and scheduling approaches for scientific workflows in IaaS clouds. They address fundamental challenges that arise from the multi-tenant, resource-abundant, and elastic resource model and are capable of fulfilling a set of quality of service requirements expressed in terms of execution time and cost. It advances the field by making the following key contributions: 1. A taxonomy and survey of the state-of-the-art scientific workflow scheduling algorithms designed exclusively for IaaS clouds. 
 2. A novel static scheduling algorithm that leverages Particle Swarm Optimization to generate a workflow execution and resource provisioning plan that minimizes the infrastructure cost while meeting a deadline constraint. 
 3. A hybrid algorithm based on a variation of the Unbounded Knapsack Problem that finds a trade-off between making static decisions to find better-quality schedules and dynamic decisions to adapt to unexpected delays. 
 4. A scalable algorithm that combines heuristics and two different Integer Programming models to generate schedules that minimize the execution time of the work- flow while meeting a budget constraint. 
 5. The implementation of a cloud resource management module and its integration to an existing Workflow Management System. 

  • Item
    Thumbnail Image
    Service value in business-to-business cloud computing
    PADILLA, ROLAND ( 2014)
    This thesis is concerned with determining and measuring the components of service value in the business-to-business cloud computing context. Although service value measurement and its perceptions have been identified as key issues for researchers and practitioners, theoretical and empirical studies have experienced great challenges in measuring perceptions of service value in numerous business contexts. The thesis first determines the components of service value and then measures the service value perceptions of users in a business-to-business context of cloud computing. In this thesis, I: • undertook qualitative in-depth interviews (N=21) of managers who are responsible for deciding on the adoption and maintenance of cloud computing services. Two key findings of the interviews are that the four components of an established service value model in a business-to-consumer setting are appropriate in a business-to-business context of cloud computing and found evidence that an additional component, which we call cloud service governance, applies and does not fit the existing four components; • conducted a survey (N=328) of cloud computing practitioners to demonstrate that the findings from the qualitative in-depth interviews are generalisable to a number of industry sectors and across geographical locations; • assessed the measurement models, comprising both reflective and formative, and structural model by using partial least squares structural equation modeling, and provided evidence of specifying Service Value as a formative second-order hierarchical latent variable by using a sequential latent variable score method; • demonstrated that Service Equity is not a statistically significant component of service value in the first-order model, Service Quality is consistently significant for both first-order model and second-order, formative model, and the additional construct called Cloud Service Governance is significant; and, • for the first time, fully tested a reliable service value instrument for use by the customers of cloud computing, and aiming to engage cloud service providers in order to enhance customer satisfaction and increase repurchase intentions.
  • Item
    Thumbnail Image
    Resource provisioning in spot market-based cloud computing environments
    VOORSLUYS, WILLIAM ( 2014)
    Recently, cloud computing providers have started offering unused computational resources in the form of dynamically priced virtual machines (VMs), also known as "spot instances". In spite of the apparent economical advantage, an intermittent nature is inherent to these biddable resources, which may cause VM unavailability. When an out-of-bid situation occurs, i.e. the current spot price goes above the user's maximum bid, spot instances are terminated by the provider without prior notice. This thesis presents a study on employing cloud computing spot instances as a means of executing computational jobs on cloud computing resources. We start by proposing a resource management and job scheduling policy, named SpotRMS, which addresses the problem of running deadline-constrained compute-intensive jobs on a pool of low-cost spot instances, while also exploiting variations in price and performance to run applications in a fast and economical way. This policy relies on job runtime estimations to decide what are the best types of spot instances to run each job and when jobs should run. It is able to minimise monetary spending and make sure jobs finish within their deadlines. We also propose an improvement for SpotRMS, that addresses the problem of running compute-intensive jobs on a pool of intermittent virtual machines, while also aiming to run applications in a fast and economical way. To mitigate potential unavailability periods, a multifaceted fault-aware resource provisioning policy is proposed. Our solution employs price and runtime estimation mechanisms, as well as three fault tolerance techniques, namely checkpointing, task duplication and migration. As a further improvement, we equip SpotRMS with prediction-assisted resource provisioning and bidding strategies. Our results demonstrate that both costs savings and strict adherence to deadlines can be achieved when properly combining and tuning the policy mechanisms. Especially, the fault tolerance mechanism that employs migration of VM state provides superior results in virtually all metrics. Finally, we employ a statistical model of spot price dynamics to artificially generate price patterns of varying volatility. We then analyse how SpotRMS performs in environments with highly variable price levels and more frequent changes. Fault tolerance is shown to be even more crucial in such scenarios.
  • Item
    Thumbnail Image
    QoS-aware and semantic-based service coordination for multi-Cloud environments
    VAHID DASTJERDI, AMIR ( 2013)
    The advantages of Cloud computing, such as cost effectiveness and ease of management, encourage companies to adapt its services. However, In a Multi-Cloud environment, the wide range of Cloud services and user specific requirements make it difficult to select the best composition of services. An automated approach is required to deal with all phases of service coordination including discovery, negotiation, selection, composition, and monitoring. To simplify the process of Cloud migration, this thesis proposes an effective architecture to provide automated QoS-aware deployment of virtual appliances on Cloud service providers. The architecture takes advantage of ontology-based discovery to semantically match user requirements to Cloud services. Then, it applies a set of negotiation, selection, and optimization strategies to pick up the best available services from the list of discovered services. Finally, this thesis shows how monitoring services have to be described, deployed (discovered and ranked), and executed to enforce accurate penalties. The key contributions of this thesis are: 1. An ontology-based Cloud service discovery is proposed that works based on modelling virtual units into Semantic Web services. This helps users to deploy their appliances on the fittest providers when providers and users are not using the same notation to describe their services and requirements. 2. A scalable methodology to create an aggregated repository of services in Web Service Modeling Ontology (WSMO) from service advertisements available in XML. 3. A negotiation strategy that acquires user preferences and provider’s resource utilization status and utilizes time-dependent tactic along with statistical methods to maximize the profit of Cloud providers while adhering to deadline constraints of users and verifying reliability of providers’ offers. The proposed negotiation strategy is tested to show how our approach helps Cloud providers to increase their profits. 4. A QoS criteria model for selection of virtual appliances and units in Cloud computing. In addition, two different selection approaches, genetic-based and Forward-checking-based backtracking (FCBB), are proposed to help users deploying net-work of appliances on Clouds based on their preferences. 5. A ranking system for Cloud service composition that let users express their preferences conveniently using high-level linguistic terms. The system utilizes evolutionary multi-objective optimization, and a fuzzy inference system to precisely capture the preferences for the ranking purpose. 6. An approach to help non-expert users with limited or no knowledge on legal and virtual appliance image format compatibility to deploy their services flawlessly. For this purpose, Cloud services are enriched with experts knowledge (from lawyers, software engineers, system administrators, etc). The knowledgebase then is used in a scalable algorithm for reasoning that identifies whether a set of Cloud service consisting of virtual appliance and units are compatible or not. 7. A semantic SLA template that can be used as a goal for discovery of necessary monitoring services. In addition, SLA dependencies are modeled using WSMO to build a knowledgebase that is exploited to eliminate the effects of SLA failure cascading on violation detection.
  • Item
    Thumbnail Image
    Energy-efficient management of virtual machines in data centers for cloud computing
    BELOGLAZOV, ANTON ( 2013)
    Cloud computing has revolutionized the information technology industry by enabling elastic on-demand provisioning of computing resources. The proliferation of Cloud computing has resulted in the establishment of large-scale data centers around the world containing thousands of compute nodes. However, Cloud data centers consume enormous amounts of electrical energy resulting in high operating costs and carbon dioxide emissions. In 2010, energy consumption by data centers worldwide was estimated to be between 1.1% and 1.5% of the global electricity use and is expected to grow further. This thesis presents novel techniques, models, algorithms, and software for distributed dynamic consolidation of Virtual Machines (VMs) in Cloud data centers. The goal is to improve the utilization of computing resources and reduce energy consumption under workload independent quality of service constraints. Dynamic VM consolidation leverages fine-grained fluctuations in the application workloads and continuously reallocates VMs using live migration to minimize the number of active physical nodes. Energy consumption is reduced by dynamically deactivating and reactivating physical nodes to meet the current resource demand. The proposed approach is distributed, scalable, and efficient in managing the energy-performance trade-off. The key contributions are: - Competitive analysis of dynamic VM consolidation algorithms and proofs of the competitive ratios of optimal online deterministic algorithms for the formulated single VM migration and dynamic VM consolidation problems. - A distributed approach to energy-efficient dynamic VM consolidation and several novel heuristics following the proposed approach, which lead to a significant reduction in energy consumption with a limited performance impact, as evaluated by a simulation study using real workload traces. - An optimal offline algorithm for the host overload detection problem, as well as a novel Markov chain model that allows a derivation of an optimal randomized control policy under an explicitly specified QoS goal for any known stationary workload and a given state configuration in the online setting. - A heuristically adapted host overload detection algorithm for handling unknown non-stationary workloads. The algorithm leads to approximately 88% of the mean inter-migration time produced by the optimal offline algorithm. - An open source implementation of a software framework for distributed dynamic VM consolidation called OpenStack Neat. The framework can be applied in both further research on dynamic VM consolidation, and real OpenStack Cloud deployments to improve the utilization of resources and reduce energy consumption.
  • Item
    Thumbnail Image
    Scheduling and management of data intensive application workflows in grid and cloud computing environments
    PANDEY, SURAJ ( 2010)
    Large-scale scientific experiments are being conducted in collaboration with teams that are dispersed globally. Each team shares its data and utilizes distributed resources for conducting experiments. As a result, scientific data are replicated and cached at distributed locations around the world. These data are part of application workflows, which are designed for reducing the complexity of executing and managing on distributed computing environments. In order to execute these workflows in time and cost efficient manner, a workflow management system must take into account the presence of multiple data sources in addition to distributed compute resources provided by platforms such as Grids and Clouds. Therefore, this thesis builds upon an existing workflow architecture and proposes enhanced scheduling algorithms, specifically designed for managing data intensive applications. It begins with a comprehensive survey of scheduling techniques that formed the core of Grid systems in the past. It proposes an architecture that incorporates data management components and examines its practical feasibility by executing several real world applications such as Functional Magnetic Resonance Imaging (fMRI), Evolutionary Multi-objective Optimization algorithms, and so forth, using distributed Grid and Cloud resources. It then proposes several heuristics based algorithms that take into account time and cost incurred for transferring data from multiple sources while scheduling tasks. All the heuristic proposed are based on multi-source-parallel-data-retrieval technique in contrast to retrieving data from a single best resource, as done in the past. In addition to non-linear modeling approach, the thesis explores iterative techniques, such as particle-swarm optimization, to obtain schedules quicker. In summary, this thesis makes several contributions towards the scheduling and management of data intensive application workflows. The major contributions are: (i) enhanced the abstract workflow architecture by including components that handle multisource parallel data transfers; (ii) deployed several real-world application workflows using the proposed architecture and tested the feasibility of the design on real test beds; (iii) proposed a non-linear model for scheduling workflows with an objective to minimize both execution time and execution cost; (iv) proposed static and dynamic workflow scheduling heuristic that leverages the presence of multiple data sources to minimize total execution time; (v) designed and implemented a particle-swarm-optimization based heuristic that provides feasible solutions to the workflow scheduling problem with good convergence; (vi) implemented a prototype workflow management system that consists of a portal as user-interface, a workflow engine that implements all the proposed scheduling heuristic and the real-world application workflows, and plug ins to communicate with Grid and Cloud resources.
  • Item
    Thumbnail Image
    Meta scheduling for market-oriented grid and utility computing
    Garg, Saurabh Kumar ( 2010)
    Grid computing enables the sharing and aggregation of autonomous IT resources to deliver them as computing utilities to end users. The management of the Grid environment is a complex task as resources are geographically distributed, heterogeneous and autonomous in nature, and their users are self-interested. In utility-oriented Grids, users define their application requirements and compete to access the most efficient and cheapest resources. Traditional resource management systems and algorithms are based on system-centric approaches which do not take into account individual requirements and interests. To this end, market-oriented scheduling is an adequate way to solve the problem. But current market-oriented systems generally, either try to maximise one user’s utility or one provider’s utility. Such approaches fail to solve the problem of contention for cheap and efficient resources which may lead to unnecessary delays in job execution and underutilisation of resources. To address these problems, this thesis proposes a market-oriented meta-scheduler called “Meta-Broker”, which not only coordinates the resource demand but also allocates the best resources to users in terms of monetary and performance costs. The thesis results demonstrate that considerable cost reduction and throughput can be gained by adopting our proposed approach. The meta-broker has a semi-decentralised architecture, where only scheduling decisions are made by the meta-broker while job submission, execution and monitoring are delegated to user and provider middleware. This thesis also investigates market-oriented meta-scheduling algorithms which aim to maximise the utility of participants. The market-oriented algorithms consider Quality of Service (QoS) requirements of multiple users to map jobs against autonomous and heterogeneous resources. This thesis also presents a novel Grid Market Exchange architecture which provides the flexibility to users in choosing their own negotiation protocol for resource trading. The key research findings and contributions of this thesis are: - The consideration of QoS requirements of all users is necessary for maximising users’ utility and utilisation of resources. The uncoordinated scheduling of applications by personalised user-brokers leads to overloading of cheap and efficient resources. - It is important to exploit the heterogeneity between different resource sites/data centers while scheduling jobs to maximise the provider’s utility. This consideration not only reduce energy cost of computing infrastructure by 33% on average, but also enhance the efficiency of resources in terms of carbon emissions. - By considering both system metrics and market parameters, we can enable more effective scheduling which maximises the utility of both users and resource providers.