Ijctt v9p113

Page 1

International Journal of Computer Trends and Technology (IJCTT) – volume 9 number 2– Mar 2014

Optimizing Resource Allocation in IAAS Clouds Y.Rajesh Kumar1, K.Sirisha Student, CSE, QIS College of Engineering & Technology, Ongole, India 1 Assistant Professor, CSE, QIS College of Engineering & Technology, Ongole, India 2

Abstract--Cloud computing is a phenomenon which bestows new model of computing. It has various service modes. The service model which provides on-demand access to computing resources is known as infrastructure-asa-service (IaaS). The IaaS allows cloud users to access resources in pay per use fashion. The problem with this service model in the existing solutions is that the cloud provider may either overprovision the resources or not in a position to serve large number of requests. At any given time, all users might not need on-demand access. Keeping this in mind a strategy is required in order to optimize resource allocation. Many applications exists that take care of high-throughput computing (HTC) where more resources are expected to be allocated. For instance Condor is such application that assigns available resource to jobs and then the resources are released once job is completed. Recently Marshall et al. proposed cloud infrastructure that has provision for on-demand allocation of resources using backfill virtual machines. For this purpose Nimbus is used. In this paper we have implemented the concept of optimal resource allocation using the notion of HTC users and on-demand users. We built a prototype application that demonstrates the proof of concept. The empirical results are encouraging. Index Terms – Cloud computing, high throughput computing, infrastructure – as – a – service I.

INTRODUCTION

Cloud computing has become famous in recent years. For infrastructure services the infrastructure – as – a – service (IaaS) [1] has become an attractive and viable alternative. This service of cloud provides on demand allocation of resources. It also allows to increase or decrease resource availability of cloud users. This makes it useful as it supports flexible allocation of resources. Commercial clouds started using this using virtual machine images and related interfaces. Open source implementations of IaaS kind like Eucalyptus [2] and Nimbus [3] configured such private clouds. The problem with such implementation is the proper utilization. Utilization reflects either over provisioning or inability to support resources. At any point of time there are resources not utilized or there are number of cloud users who could not get in time services. This needs to be improved. On-demand computing is essential for the success of IaaS. In case of scientific computing, it results in higher utilization [4]. Low utilization is also a potential problem here that needs to be addressed. Users of IaaS are basically of two types. They are the users who need on-demand services while other users need high throughput computing. Many applications came into existence in order to ensure good resource utilization. Condor [5] is one such example where HTC is supported. Scientific applications utilize the HTC service provided by IaaS.

ISSN: 2231-2803

In this paper we implement a cloud infrastructure that combines opportunistic provisioning of idle cloud nodes with on-demand resource allocation. Our implementation serves well both HTC users and ondemand users. In case of HTC users backfill VMs are used. The VMs are terminated when they need to serve on-demand users. Backfill VMs are used by HTC users but when on-demand users need them they are automatically terminated in order to serve on-demand users. Moreover it is possible to provide cycles of VMs to users with lesser cost when compared to that of on-demand users. This is made possible because the VMs can be closed based on the requirement. Backfill VMs thus provide good service to HTC users and also help the on-demand users if required. This enables the design to achieve two goals such as offering high utilization of cloud infrastructure and also supports resource lease which is much cheaper. In fact the cloud computing is realized through virtualization only. Virtual Machine Monitors (VMM) [6] and Nimbus toolkit [3] can be used to deploy IaaS clouds as they are flexible and suitable to many cloud projects. In this paper we build a prototype application that demonstrates the resource allocation and optimal utilization of cloud resources using the notion of two users such as ondemand user and HTC user.

http://www.ijcttjournal.org

Page58


International Journal of Computer Trends and Technology (IJCTT) – volume 9 number 2– Mar 2014

The remainder of the paper is structured as follows. Section II provides review of literature available on utilization of infrastructure clouds and relevant topics. Section III provides details of the proposed system. Section IV presents experimental results while section V concludes the paper. II.

RELATED WORK

There is clear difference between the resource utilization concept followed in large super computers [7] and our work. In our work backfill virtual machines are used to achieve utilization of resources provisioning with respect to IaaS infrastructure. On super computers, scheduling does not use any kind of backfill jobs to be preempted when on-demand requests arise. Instead of this algorithms try to use backfill unused resources only in certain cases unlike the procedures followed in this paper. There are preemption based backfill solutions as explored in [8]. These authors focused on supers computers that make use of queue-based approach while our solution uses virtual machines. BOINIC [9] which is a volunteer computing system can make use of idle cycles of distributed systems across Internet. Other examples of such systems include Folding@Home [10] and SET1@Home [11]. These applications are best used to withstand interruptions in computers that involve in distributed computing. Distributed computing is the computing that takes place over multiple servers. When a request is made by a client that request is processed by multiple servers together. These servers have program to program or machine to machine interaction in order to serve the client’s request. There is much research on the failure prediction, efficiency and usefulness of the volunteer computing [12], [13], [114], and [15]. In this paper, our work focuses on making the IaaS to optimize cycles that are idle with respect to HTC. Volunteer computing is best used and achieved through backfill virtual machines. Recovery techniques were focused in [26] that will help in suspending and reusing virtual machines for high utilization of infrastructure clouds. Condor application is considered as an example for making such experiments. Other areas that are related to our work include spot pricing which has been explored by Amazon [17]. Users are allowed to bid for virtual machine instances and the based on the commercial benefits, the VMs are allocated to users. In this paper we use the VMs based on the current demand of the on-demand user and the resource availability with respect to backfill VMs.

ISSN: 2231-2803

Our work uses the current demand for on-demand user VMs to determine the availability for backfill VMs, whereas Amazon bases availability of spot instances on a spot price. The prototype implementations of infrastructure clouds used in this work are Nimbus toolkit [3] and GitHub [18]. There are some green computing techniques that optimize the allocation of resources as explored in [19]. The better cases it uses include prices, auction and have built a model to utilize infrastructure clouds optimally that bestows mutual benefits. III.

PROPOSED

RESOURCE

UTILIZATION FRAMEWORK The proposed resource utilization framework for infrastructure clouds is based on the work done by Marshall et al. [20]. In our approach we built a prototype application to simulate the environment presented in [20]. Our approach has two users. They are on-demand user and HTC user. We consider two types of leases for resource provisioning. They are on-demand flexible leases and opportunistic pre-set leases. In the former approach the resource allocation is made on-demand. The users can have provision to use any compatible virtual machine. Therefore it is suitable for on-demand users. The latter is suitable for HTC users who need more resources but non ondemand nature. Backfill virtual machines are used to process requests of HTC users but the on-demand users’ requests are given priority thus utilizing resources optimally. Backfill Termination Policies Backfill virtual machines are used to improve utilization of infrastructure clouds. They are deployed in idle VMM nodes in order to utilize them optimally. The backfill VMs are usually deployed to serve HTC users who have multiples jobs to be carried out. When this is happening, on-demand users might make request. In this case, the running backfill virtual machines (one or more based on the requirement) are terminated in order to allow the resources to on-demand users. This is because ondemand users should not be denied service and they have to continue utilizing infrastructure clouds in pay per use fashion. Backfill Configuration Options In the prototype we built we simulated the concept of cloud and Condor application. For this reason we built an administrative option where users can configure the backfill features. The options to configure backfill include Backfill.disabled to enable

http://www.ijcttjournal.org

Page59


International Journal of Computer Trends and Technology (IJCTT) – volume 9 number 2– Mar 2014

or disable backfill, Max.instances to specify maximum number of instances, Disk.image to specify path to VM, Memory.MB to specify the amount of memory, VCPUs to specify number of VCPUs, Duration.seconds to specify the duration of backfill VM, Termination.policy to specify termination approach, Retry.period to specify waiting time while retry, and Network to specify private or public network usage. More technical details about the system can be found in [20]. IV.

1400 1200 Seconds

1000 No User VMs

800 600

Backfill Enabled

400 200 0

EXPERIMENTAL RESULTS

100 200 300 400 500 600

We built a prototype application to make experiments on the resource utilization of infrastructure clouds in Java platform. The environemtn used to built the application is a PC with 4 GB RAM, core 2 dual processor running Linux operating system. The expreiments are made in terms of usage or non usage of backfill virtual machines, with Condor simulation to demonstrate the resource utlization with respect to the users such as on-demand user and HTC user. 14

Condor Job ID Figure 3 - Condor job queued time when the job first begins executing, using the most recent backfill termination policy (Condor simulation). As shown in the figure 3 horizontal axis represents Condor Job ID while vertical axis represents time in seconds. When backfill is enabled less time is taken to process Condor jobs while more time is consumed when no user VMs are used for the same purpose.

12 V.

Seconds

10 Backfill Enabled

8 6

No Backfill

4 2 0

0 10 20 30 40 50 60 70 VM ID Figure 2 - Service response time for on-demand user VM requests As shown in the above Figure 2, the horizontal axis represents Virtual Machine ID while vertical axis represents the time in seconds. Less time is taken when backfill is not enabled while more time is utilized when backfill is enabled.

ISSN: 2231-2803

CONCLUSIONS

In this paper we studied the utilization of infrastructure clouds. With respect to cloud computing technology, it is essential to have infrastructure cloud that provides benefits to users of cloud computing. The users will be able to utilize infrastructure in pay per use fashion. As resources are costly, the cloud computing has to optimize the resource allocation. It has to make optimum use of resources without having idle cycles. This is the intention behind this work. In this paper we consider Condor application and improved resource utilization. We considered the notion of having two users that make use of infrastructure clouds. They are on-demand user who needs to be given priority and the other user is known as HTC (High Throughput Computing) users who need huge resources to compute their jobs. We have built an approach that satisfied on – demand users and HTC users. The HTC users are served by utilizing backfill VMs that make use of available cycles effectively. When ondemand users need more resources the HTC users’ backfill VMs are terminated and the on-demand users are served thus making the maximum utilization of infrastructure clouds. We built a prototype application that demonstrates the proof of concept. The empirical results revealed that the proposed approach is useful and able to optimize resource utilization.

http://www.ijcttjournal.org

Page60


International Journal of Computer Trends and Technology (IJCTT) – volume 9 number 2– Mar 2014

REFERENCES

[14] Ren X, Lee S, Eigenmann R, and Bagchi S. “Resource Failure

[1] Michael A, et al., “Above the Clouds: A Berkeley View of

Prediction in Fine-Grained Cycle Sharing System,” HPDC ’06,

Cloud Computing,” EECS Department, University of California,

2006.

Berkeley, Tech. Rep. UCB/EECS-2009-28, Feb 2009.

[15] Ryu K and Hollingsworth J. "Unobtrusiveness and Efficiency

[2] Nurmi D, Wolski R, Grzegorczyk C, Obertelli G, Soman S,

in Idle Cycle Stealing for PC Grids," in Proceedings of IPDPS’04,

Youseff L, and Zagorodnov D. Eucalyptus opensource cloud-

2004, p. 62a.

computing system. In CCA08: Cloud Computing and Its

[16] Sotomayor B, Keahey K, Foster I. Combining Batch

Applications, 2008.

Execution and Leasing Using Virtual Machines. the 17th

[3] Nimbus. [Online]. Retreived December 6, 2010, from:

International ACM Symposium on High-Performance Parallel and

http://www.nimbusproject.org/

Distributed Computing (HPDC) Boston, MA. June 2008.

[4] Woitaszek, M. and Tufo, H., “Developing a cloud computing

[17] Amazon Web Services. Amazon.com, Inc. [Online]. Retreived

charging model for high-performance computing resources,” in

December 6, 2010, from: http://www.amazon.com/aws/

Computer and Information Technology (CIT), 2010 IEEE 10th

[18] Nimbus 2.6 Backfill (prototype). GitHub. [Online]. Retreived

International Conference on, July 2010, pp. 210–217.

December

[5] Tannenbaum T, Wright D, Miller K, Livny M. Condor - A

https://github.com/pdmars/nimbus/tree/backfill-2.6

Distributed Job Scheduler, in Thomas Sterling, editor, Beowulf

[19] Lefe`vre, L. and Orgerie, AC. “Designing and evaluating an

Cluster Computing with Linux, The MIT Press, 2002.

energy efficient cloud,” The Journal of Supercomputing, vol. 51,

[6] Smith, JE. and Nair, R. Virtual machines: versatile platforms

pp. 352–373,2010,

for systems and processes. Morgan Kaufmann Publishers, San

[20] Paul Marshall, Kate Keahey and Tim Freeman, “Improving

Francisco, CA, USA, 2005.

Utilization of Infrastructure Clouds”, pp. 1-10.

[7] Feitelson DG, Rudolph L. Parallel job scheduling: Issues and

Authors

6,

2010,

from:

approaches. Lecture Notes in Computer Science: Job Scheduling Strategies for Parallel Processing, 949, 1995. [8] Snell Q, Clement M, and Jackson D. Preemption based backfill. In Feitelson,

Rudolph,

and Schwiegelshohn,

editors, Job

Scheduling Strategies for Parallel Processing, pages 24–37. Springer Verlag, 2002.Lect. Notes Comput. Sci. vol. 2537. [9] Anderson, D. “BOINC: A System for Public-Resource Computing and Storage,” 5th IEEE/ACM Workshop on Grid Computing, Nov. 2004. [10] Larson SM, Snow CD, Shirts M, Pande VS. Folding@Home

Rajesh Kumar.Y, he is pursuing M.Tech (CSE) in QIS College of Engineering & Technology, Ongole, AP, INDIA. He has received B.Tech Degree in Computer Science and Engineering. His main research interest includes Cloud Computing and Datamining.

and Genome@Home: Using distributed computing to tackle previously

intractable

problems

in

computational

biology.

Computational Genomics, Horizon Press, 2002. [11] Anderson DP, Cobb J, Korpela E, Lebofsky M, Werthimer D. SETI@home:

An

Experiment

in

Public-Resource

Computing.Communications of the ACM, 45(11), November 2002, 56-61. [12] Acharya A, Edjlali G, and Saltz J. “The Utility of Exploiting Idle Workstations for Parallel Computation,” SIGMETRICS ’97, pp. 225-34. [13] Anderson D and Fedak G. “The Computational and Storage

K.Sirisha She is currently with the Department of Computer Science and Engineering, QIS College of Engineering & Technology, Andhra Pradesh, India. Her main research interest includes Cloud Computing and Data Mining.

Potential of Volunteer Computing,” CCGRID’06, 2006, p. 73-80.

ISSN: 2231-2803

http://www.ijcttjournal.org

Page61


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.