A Framework For Effective Resource Allocation in a ...

5 downloads 20571 Views 932KB Size Report
can be able to run, call or fetch from remote computers .... interconnected by a LAN and Airtel Broadband .... Third International Conference on Cloud Computing.
International Journal of Applied Engineering Research, ISSN 0973-4562 Vol. 10 No.87 (2015) © Research India Publications; http/www.ripublication.com/ijaer.htm

A Framework For Effective Resource Allocation in a Distributed Cloud Environment M. Kandan1 Research Scholar, Department of Information and Communication Engineering, Anna University, Chennai, Tamilnadu, India.

R. Manimegalai2 Professor , Department of Computer Science and Engineering, Park College of Engineering and Technology, Coimbatore, Tamilnadu, India.

Abstract - Infrastructure of the cloud computing is a complex system due to a huge number of various types of resources should be shared. Mananging and allocating resources in cloud is a major issue in cloud computing. Since the demands of resource allocation increases the number of issues is also getting increased. To pretaining the issues to manage and allocate the resources is a big deal in present cloud computing environment. Various earlier research works discussed about the issues and challenges for resource provisioning, job scheduling , load balancing, scalability, pricing and energy efficiency. It is necessary to provide a solution for resource management, resource allocation with better performance. In this paper, a user friendly framework is proposed where it enhances the scalability, resource management and resource allocation. To do this a request aware resource allocation and ranking based resource arrangement with scheduling is provided in the framework.

computing methodologies. The resource requests and allocation needs more power and it should be controlled. Cloud computing is a service model can provide services in terms of software, platform and infrastructure. In recent computing world, due to cost effectiveness the service models are more necessary for many small to medium size organizations. Especially it avoids financial investments on temporary usage of a big software and infrastructure. Most general cloud computing providers are Amazon EC2 [4], Google Apps Engine [5], Microsoft Azure [6], SalesForce.com [7] provides best business deals worldwide. All services in the cloud are pay and use for a fixed period of time. Cloud computing can provide minimal management efficiency or service provision interaction [8]. Sharing resources may or may not be reconfigurable by the end users. Cloud computing is referred as a combination of the following:

Keywords: Cloud Computing, Resource Allocation, Parallel Computing, Networks, Internet Resources.

I. Introduction

1. 2. 3.

Numerous computing concepts, methods, procedures and techniques are integrated with large number of clients, servers and resources are connected through a real time wired as well as by wireless networks like internet. Parallel and distributed computing is combined for creating cloud computing. Any software, platform or infrastructure can be able to run, call or fetch from remote computers located in various places worldwide. Only recent computing technologies have the hardware and software sharing in large scale manner. This concept is derived from utility sharing in web 2.0 [1] used to create cloud computing [2, 3].

Application services Hardware services Data-center services

For the cloud computing system to function unceasingly without any disruptions in resources the system needs a resource allocation strategy which allocates resources available to the applications in demand of the resources. If the resources are not managed correctly, the services become famished of resources. In order for precise management of resources available the resource allocation strategy is vital. The resource allocation strategy collects the type and quantity of resources required and allocates resources dynamically within its limit of resources available. Along with the resource information the order and time are also needed by the strategy for efficient allocation of resource to the process.

A large scale distributed computing environment where an economic based large scale of abstracted, virtualized, dynamic, scalable and managed all in an improper manner. Cloud computing become more popular in recent distributed

There are various types of cloud models are: (i). Private cloud, (ii). Public cloud, (iii). Hybrid cloud

493

International Journal of Applied Engineering Research, ISSN 0973-4562 Vol. 10 No.87 (2015) © Research India Publications; http/www.ripublication.com/ijaer.htm

[23],[24] and Das et al. [25] adopted this approach for non-virtualized data centers. The above earlier research works focused on analyzing the performance of various analytical models using queuing theory, de-compositional reinforcement learning approach and a hybridization with queuing theory respectively. From the above discussion, it is essential to provide a better solution for resource allocation and management with improved performance. This paper is motivated and focused on designing a framework for cloud computing to manage and allocate the resources effectively. In this framework two levels of managers are used to achieve the goal of this paper.

and (v). Community cloud. In the private cloud all the resources are available in the client’s place, in public cloud the resources are placed in a common public place and in the hybrid cloud all the resources are private as well as public. Three types of the cloud services are Software as a Service (SaaS), Platform as a Service (PaaS) and Infrastructure as a Service (IaaS). PaaS is a service which provides platform for developers with development tools; IaaS is a service provides storage and SaaS is a service which provides rich software for all kind of end users. In this paper the main object is to provide a framework for cloud resource management and resource allocation effectively. In this paper, a framework is presented for resource allocation using definite decision process to achieve the objective of this paper. Our framework compares the resource request and available resource list in the cloud. During this comparison and allocation the overall computational cost is calculated. The contribution of this paper is given below:  Definite Decision process is applied for choosing the best resource for the request.  A mapping function is applied to compare and verify the service request with the available cloud resources.  Scheduling is applied to allocate and utilize the resource in an efficient manner.

III. Proposed Model The internal structure of the cloud is consider as a client-server mode having better performance in terms of processing time and resource allocation efficiency during multiple user requests for a task. Two-layer architecture is proposed [1] to utilize the utility functions dynamically in autonomous resource management. In this architecture, local managers and global managers are used to verify and compare the request and decisions respectively. Local managers verify the requests and pass it to global manager. Global managers match the available resources and assign the resources to the relevant requests from clients. When an end user sends a request it directly passed to the local manger in the cloud. The local manger verifies the original and Meta information about the user, user system and the request pathway. The response generation depends on the resource availability and the above information. The temporary memory is cleaned and refreshed in a stipulated time interval to keen watch the fresh requests. It is assumed that the resources R = {R1, R2, R3 ,…., Rn} are distributed and the entire details about the resources are stored in a server registry. The number of users U ={U1, U2, …., Um} sends requests REQ={Req1, Req2,…, Reqk} at the time t ∀𝑡 = 0, 1, 2, … , 𝑇. A resource Rj is requested by a set of users 𝑈𝑠 ∈ 𝑈 from the available resources R. It is well known that when a normal internet user becomes a cloud user, they should register with their detailed information. It includes ID, Name, IPaddress and the server and it is stored in a server DB.

II. Related Works More number of solutions is provided in the earlier researches to solve the issues in cloud one by one. A Service Level Agreement (SLA) is available in the cloud where it has the ability to allocate the resources in a mixed environment [9]. Some of the specific technology applications and modern eScience requires more performance infrastructure [10] which can support complex applications needs. In terms of contentions high computational hybrid scientific applications [11] are provided in the cloud. So et al. [12] stated that scheduling algorithm is most effective for resource allocation in IaaS. The scheduling process concentrates on the time allocation according to the job size [13-16]. The resource management is focused mainly in wireless networks extensively and especially in mobile cloud computing [17-19]. Resource allocation and resource management studies are outlined in Bennani et al. [20], Chess et al. [21], Tesauro [22] Tesauro et al.

494

International Journal of Applied Engineering Research, ISSN 0973-4562 Vol. 10 No.87 (2015) © Research India Publications; http/www.ripublication.com/ijaer.htm

At this time the local manager fetches the user information UI={Uid, Uname, UIP, Utime, Userver} and compare with the server DB. The resource can be allocated if and only if the results of the local and global managers are true and the matching score is high. When a user Ui sends a request Reqi it will be forwarded to the local manager. The local manager verifies the received user information with the availability of the user information in the server DB then passes the resource information to the Global manager. Similarly the Global manager retrieves the resource information from the location manager and from the server registry compares.

the form of pseudo code and it can be implemented and verify the performance. User Information with Resource Information

User Request

Server DB Local Manager

No If matches?

Yes Request Processing

Local Manager

Request not valid

Resource Information

User Request Response Providing

Global Manager

Global Manager

Server Registry Yes

No

Figure-1: Proposed Model

If matches?

If, both information matches then it directly connect the corresponding resource to the user, else it replies that “there is no resource like that”. If the same resource is requested by more than two users at the same time the resources are allocated virtually to both the users. The resources are divided into various categories like No-Priority, Priority-Less, HighPriority. If the resource is having High-Priority then the time scheduling scheme provides only less time. User can utilize the resources within a stipulated time like online payment. Resources can utilize the resources virtually having Priority-Less resources. User can utilize as they like as No-Priority resources. After successful completion of the resource allocation the memory data maintained by the Local manager and the global managers are cleared dynamically to save the information about the new resources. The server registry contains all the information about the deployed private and public resources in the cloud. While deploying the resources the priority information is also registered and the utilization time is assigned according to the priority of the resources. The resource allocation is written in

Request not valid

Resource allocated

Figure-2: Resource Allocation Resource Allocation () { If (user request for Ri) then if (Ri∈ 𝑅 with status(Ri) = True ) then Ui gets Ri else Request is rejected end if status(Ri) = allocated; settime = less; // for High_Priority resource settime = normal; // for Less_Priority Else Display (‘User Request is invalid’); End if } The resource is allocated if the resource is free and status is true. The status of the resource becomes

495

International Journal of Applied Engineering Research, ISSN 0973-4562 Vol. 10 No.87 (2015) © Research India Publications; http/www.ripublication.com/ijaer.htm

true then only it can be allocated to the requested user. The status of the resource will be true is the resource is unassigned to any other user and the resource should be in the nearest server.

Resource Management In this paper, the resource management is obtained by arranging the resources in such a manner that according to the index and the number of times the resources are requested frequently. Like webranking application a variable is maintained for counting the number of times the resources are requested and allocated. The resources are arranged in cloud where the location of the resource behaves line cache memory in a computer system. It helps to retrieve the resources very fast and effectively.

Figure-3: Priority Assigned Resources The number of incoming requests is validated by the local manager and the Global manager separately. The local manager verifies the user information and validates the requests. The Global manager verifies the requested resource information and validates the requests and the resources are allocated to the appropriate requests. The validation of the requests by the local manager and the global manager is shown in Figure-4.

IV. Simulation and Results The resource allocation process given in this paper is simulated in a college laboratory installed with more than 100 systems and they are interconnected by a LAN and Airtel Broadband connection. Out of this there are 10 systems are configured as servers, 20 systems where installed by private and public resources. The remaining systems are considered as clients and from the clients the requests are passed to the nearest server. The Local Manager and the Global managers are software modules deployed in the network systems and they are DCOM modules. Using this environment the proposed approach is experimented and the results are verified. The number of incoming requests is verified as valid or invalid requests according to status parameters verified by the Local Manager. The experiment is done for various numbers of rounds for various numbers of requests. For 10, 20, 30, 40 and 50 requests the number of invalid requests is 0, 2, 2, 4 and 3 respectively and the remaining requests are valid resulted by the Local Manager. Out the resources it is user defined that some of the resources are assigned by high priority, no-priority and less priority. According to the priority of the resources only the user can utilize the resources and the same resource can be re-allocated to the new users sends request for the same resource. According to the priority the resources are arranged in the registry and the number of resources with different priority is shown in Figure-3.

Figure-4: Valid vs. Invalid Requests Once local and global managers validate the requests, it is essential to check the status of the resources. If the requests are valid and the statuses of the resources are valid then only the resources can be allocated. The resources allocated to the corresponding requests are computed experimentally and the results are shown in Figure-5. Form this figure; it is clear that after validation of the requests more than 75% of the requests are allocated by the relevant resources. This paper presents an efficient methodology where the resource allocation is validated in three different stages and it reduces waste of time and it cost effective since the priority of the resources is also computed. Also to evaluate the step by step procedure of the proposed approach the number of requests validated in each stage like by

496

International Journal of Applied Engineering Research, ISSN 0973-4562 Vol. 10 No.87 (2015) © Research India Publications; http/www.ripublication.com/ijaer.htm

[2]. R. Buyya, C. Yeo, and S. Venugopal, “Marketoriented cloud computing: Vision, hype, and reality for delivering it services as computing utilities,” in Proceedings of the 10th IEEE International Conference on High Performance Computing and Communications (HPCC-08, IEEE CSPress, Los Alamitos, CA, USA), 2008.

local manager, global manager and status of the resources are validated separately and the resources are allocated. This validation based requests and the allocated resources are shown in Figure-6 effectively.

[3]. I. Foster, Y. Zhao, I. Raicu, and S. Lu, “Cloud Computing and Grid Computing 360-Degree Compared,” in Grid Computing Environments Workshop, 2008. GCE’08, pp. 1–10, 2008. [4]. Amazon Elastic Compute Cloud (EC2). [Online]. Available: http://www.amazon.com/ec2/. [5]. Google App Engine. [Online]. Available:http://www.appengine.google.com.

Figure-5: Number of Requests Allocated by Resources

[6]. Windows Azure. [Online]. http://www.microsoft.com/azure.

Available:

[7]. Sales force CRM. [Online]. http://www.salesforce.com/platform.

Available:

[8]. R. B. Bohn, J. Messina, F. Liu, J. Tong, and J. Mao, “NIST cloud computing reference architecture,” in Proc. 2011 IEEE World Congress on Services, pp. 594-596, 2011. [9]. Y. Hu, J. Wong, G. Iszlai, and M. Litoiu, “Resource provisioning for cloud computing,” in Proc. the 2009 Conference of the Center for Advanced Studies on Collaborative Research, pp. 101–111, 2009.

Figure-6: Number of Requests Valid by Local Manager vs. Global Manager

V. Conclusion In this paper it is discussed about the resource allocation by assigning local manager and a global manager in the cloud environment. Since environment is vast and the number of resources, clients and the servers are more numbers it is necessary to validate the requests in each stage for allocating the resources. After successful validation the resource is allocated for the valid requests. The experimental results are shown in the figures and it is concluded that request validation base resource allocation reduces the time and it is more cost effective. In future the resource management is also experimented and the results are compared with the existing research studies.

[10]. Y. Demchenko, J. V. der Ham, V. Yakovenko, C. D. Laat, M.Ghijsen, and M. Cristea, “On-demand provisioning of cloud and grid based infrastructure services for collaborative projects and groups,” in Proc. 2011 International Conference on Collaboration Technologies and Systems, 23-27 May, pp. 134-142, 2011. [11]. A. Calatrava, G. Molto, and V. Hernandez, “Combining grid and cloud resources for hybrid scientific computing executions," in Proc. 2011 IEEE Third International Conference on Cloud Computing Technology and Science, pp. 494-501, 2011. [12]. T. V. Do and C. Rotter, “Comparison of scheduling schemes for on demand SaaS requests,” Journal of Systems and Software, vol. 85, no. 6, pp. 1400–1408, 2012.

References [1]. B. Alexander, “Web 2.0: A new wave of Innovation for Teaching and Learning?” Learning, vol. 41, no. 2, pp. 32–44, 2006.

497

International Journal of Applied Engineering Research, ISSN 0973-4562 Vol. 10 No.87 (2015) © Research India Publications; http/www.ripublication.com/ijaer.htm

[13]. Y. C. Lee and A. Y. Zomaya, “Energy conscious scheduling for distributed computing systems under different operating conditions,” IEEE Transactions on Parallel and Distributed Systems, vol. 22, no. 8, pp. 1374-1381, 2011.

Conference on Artificial Intelligence. AAAI Press, pp. 886–891, 2005. [23]. G. Tesauro, R. Das, W. Walsh, and J. Kephart, “Utility-Function-Driven Resource Allocation in Autonomic Systems,” in Autonomic Computing,2005. ICAC 2005. Proceedings. Second International Conference on, pp. 342–343, 2005.

[14]. R. Urgaonkar, U. C. Kozat, K. Igarashi, and M. J. Neely, Dynamic Resource Allocation and Power Management in Virtualized Data Centers, pp. 479– 486, 2010.

[24]. G. Tesauro, N. Jong, R. Das, and M. Bennani, “A Hybrid Reinforcement Learning Approach to Autonomic Resource Allocation,” in ICAC ’06: Proceedings of the 2006 IEEE International Conference on Autonomic Computing. IEEE Computer Society, pp. 65–73, 2006.

[15]. M. Stillwell, D. Schanzenbach, F. Vivien, and H. Casanova, “Resource allocation using virtual clusters,” in Proc. 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid, (Section III), pp. 260–267, 2009.

[25]. R. Das, J. Kephart, I. Whalley, and P. Vytas, “Towards Commercialization of Utility-based Resource Allocation,” in ICAC ’06: IEEE International Conference on Autonomic Computing, pp. 287–290, 2006.

[16]. I. A. Moschakis, and H. D. Karatza, “Evaluation of gang scheduling performance and cost in a cloud computing system,” The Journal of Supercomputing, vol. 59, no. 2, pp. 975–992, 2010. [17]. L. X. Cai, L. Cai, X. Shen, and J. W. Mark, “Resource management and QoS provisioning for IPTV over mmWave-based WPANs with directional antenna,” ACM Mobile Networks and Applications, vol. 14, no. 2, pp. 210–219, 2009. [18]. H. T. Cheng and W. Zhuang, “Novel packetlevel resource allocation with effective QoS provisioning for wireless mesh networks,” IEEE Transactions on Wireless Communications, vol.8, no. 2, pp. 694–700, 2009. .[19]. L. X. Cai, X. Shen, and J.W. Mark, “Efficient MAC protocol forultra-wideband networks,” IEEE Communications Magazine, vol. 47, no. 6, pp. 179– 185, 2009. [20]. M. N. Bennani and D. A. Menasce, “Resource Allocation for Autonomic Data Centers using Analytic Performance Models,” in ICAC’05: Proceedings of the Second International Conference on Automatic Computing, pp. 229–240, 2005. [21]. D. Chess, A. Segal, I. Whalley, and S. White, “Unity: Experienceswith a Prototype Autonomic Computing System,” in 2004. Proceedings. International Conference on Autonomic Computing, pp. 140–147, 2004. [22]. G. Tesauro, “Online Resource Allocation Using Decompositional Reinforcement Learning,” in AAAI’05: Proceedings of the 20th National

498