Systems Infrastructure for Supporting Utility Computing in Clouds
Open Access
- Author:
- Tak, Byung Chul
- Graduate Program:
- Computer Science and Engineering
- Degree:
- Doctor of Philosophy
- Document Type:
- Dissertation
- Date of Defense:
- March 13, 2012
- Committee Members:
- Bhuvan Urgaonkar, Committee Chair/Co-Chair
Anand Sivasubramaniam, Committee Member
Trent Ray Jaeger, Committee Member
Qian Wang, Committee Member
Rong N Chang, Special Member - Keywords:
- Utility Computing
Cloud Computing
Virtualization
Operating System
Distributed System
Resource Accounting - Abstract:
- Recent emergence of cloud computing is being considered an important enabler of the long-cherished paradigm of utility computing. Utility computing represents the desire to have computing resources delivered, used, paid for and managed with assured quality similar to other commoditized utilities such as electricity. The principal appeal of utility computing lies in the systemized framework it creates for the interaction between providers and consumers of computing resources. While current clouds are undoubtedly succeeding towards this goal, they lack some of the crucial features necessary to realize a mature utility. First, one foundational feature of a utility is the ability to accurately measure and manage the usage of the resources by its various consumers. Modern VM-based cloud platform, providers of the cloud services face significant difficulties in obtaining the accurate picture of resource consumption by their consumers. Second, consumers of a utility expect to have systematic ways to infer their resource needs so that they can make cost-effective resource procurement decisions. However, current consumers of the clouds are ill-equipped in making their resource procurement decisions because of lack of information regarding resource quantity and their implication on application performance. In the first part of the dissertation, we consider provider-side issues of resource accounting. It is nontrivial to correctly apportion the usage of a shared resource in the cloud to its various users. Towards achieving accurate understanding of the overall resource usage within the cloud, we develop a technique for dynamically discovering the various resources that are directly or indirectly being used by a consumer’s application. This, in turn, enables us to build techniques for accurately accounting the resource usage. The benefits of our approach are explained by comparing with and illustrating the problems of using state-of-the-art methods in resource accounting. In the next part of the dissertation, we focus on the problem of understating the cost of application deployments to the cloud from the consumers perspective. Employing empirical approaches to estimate the resource requirements of the target application, we present how to systematically incorporate important systems characteristics such as workload intensity, growth, and variances as well as comprehensive set of hosting options into determining the economic feasibility of application deployment in the cloud.