International Journal of Emerging Technology and Advanced Engineering
Website: www.ijetae.com (ISSN 2250-2459,ISO 9001:2008 Certified Journal, Volume 3, Issue 3, March 2013)
353
Green Solution for Cloud Computing with Load Balancing and
Power Consumption Management
Poulami Dalapati
1, G. Sahoo
21Department of Computer Scinence, Birla Institute of Technology, Mesra, Ranchi, India 2
Department of Information Technology, Birla Institute of Technology, Mesra, Ranchi, India
Abstract -- Cloud computing a relatively recent term builds on decades of research in virtualization, distributed computing, utility computing, and networking, web and s/w services. The consequence of network based cloud computing model which is rapidly increasing in delivering computing as a utility to users worldwide is that cloud data centers have high deployment and operational costs, as well as significant carbon footprints for the environment. So attention should be paid to the need of managing energy consumption across the entire Information and Communication Technology (ICT)
sector because of its large amount of CO2 emission. Despite
ecological issues, the interest of the low power research has critical economical needs. We need to develop Green Cloud Computing (GCC) solutions that reduces these deployment and operational costs and thus save energy, hence, reduces adverse environmental impacts. In this paper, we aim to implement practically a Green Scheduling Algorithm integrating a neural network predictor for optimizing server power consumption in Cloud computing environments by sending unused servers in sleeping mode. For this we have planned to use Bee Colony Optimization, Ant Colony Optimization where needed.
Keywords- green cloud, virtual machine, bee colony optimization, ant colony optimization etc.
I. INTRODUCTION
Cloud is the metaphor for the internet, based on how it is depicted in computer network and is an abstraction for complex infrastructures in conceals. Cloud computing [16][17][18] is an evolving paradigm which is enabling outsourcing of all IT needs such as storage, computation and software, through large internet. The shift towards such service oriented computing is driven primarily by ease of management and administration process involving software upgrades and bug fixes. It also allows fast application developments and testing for small IT companies that cannot afford large investment on architecture. Most important aspect of cloud computing is economy of scale, i.e. cost per user and server utilization. So the basic principle of cloud computing is to make the computing be assigned in a great number of distributed computers rather than local computer or remote server. Its foreground is to provide secure, quick, convenient data storage and net computing service centered by internet.
Computing is a pool of resources. It provides mandatory application environment. It can deploy, allocate or reallocate computing resources dynamically and monitor the usage of resources at all times. The user needs not to care about how to buy servers, softwares, solutions and so on. They can buy the computing resources through internet according to their own needs. Virtualization is one of the main techniques of cloud computing. Virtualization makes abstractions of the resources, both hardware and software, of a computer system to simulate multiple execution environments. Virtualization can also reduce the number of IT hardware equipment.
II. CLOUD COMPUTING
The variation in use of cloud computing leads this to popularity and many definitions has been given proposed defining its characteristics. R. Buyya et al.[1] gave definition of this according to its utility to end users. They told that the cloud computing is mainly a market oriented distributed computing system which consists of collection of interconnected and virtualized machines that can be dynamically presented as one or more unified computing
resources depending upon the Service Level
Agreement(SLA) which is established between service provider and consumer through some negotiation. According to National Institute of Standards and Technology (NIST)[1] cloud computing is the new kind of computing model which can enable convenient, on-demand access to the shared resources like network, server, storage, application, services from the resource pool which can be rapidly released and deserves minimal management effort or service provider interaction. Following are the main five reasons to use cloud computing now a day:
International Journal of Emerging Technology and Advanced Engineering
Website: www.ijetae.com (ISSN 2250-2459,ISO 9001:2008 Certified Journal, Volume 3, Issue 3, March 2013)
354
(ii) Ease of use: Instead of having to download and install software itself, it is all done in cloud for users. As the business data is stored in the cloud, employees of an organization can access the software and data anywhere from any devices provided it has internet connection.(iii) Increase storage capacity and automation: It also offers virtually unlimited storage capacity relative to hard drive and storage limits. The cloud is also adaptable, if you need more storage; it is instantly available for more per month. Cloud keeps software up-to-date with the latest versions. So, user will never have to worry about doing software updates yourself. Files sync with all the users’ devices as well as field backups is also fully automated. Data will continually be kept consistent and current among all the devices in use.
(iv) Agility, Flexibility and Scalability: Cloud computing also offers more flexibility and agility compared to past computing methods. Employees will no longer be compelled to sit at their desk and will be able to access required files and data from wherever they are. Staff members can also work in collaboration on documents and files even when they are not in the same physical room. Documents can be viewed as well as edited from multiple user locations.
(v) Freeing up IT staffs: There is no needs to use valuable IT staff resources for ever maintenance, fixing bugs, taking care of software updates. Therefore IT departments will spend less time on maintenance and be free to spend more time focusing on strategic initiatives to increase the company’s bottom line.
Now the consequences of network based cloud computing which is rapidly increasing in delivering computing as utility to users worldwide is that cloud data centers have high deployment and operational costs, as well as significant carbon footprint in the environment.
According to the recent analysis the electricity
consumption for powering the data centers in the USA [3] alone is projected to reach 100 billion kWh at the cost of $7.4 billion by 2011. This power consumption contributes up to 42% of a data center’s monthly budget. Again it is also estimated [10] that data centers consumes 0.5% of world’s total electricity usage which if continues, will be quadruple by 2020. It has also been observed that in 2005[10], the total energy consumption for servers and their cooling purpose was projected at 1.2% of USA’s total energy consumption and becoming double every year.
Therefore, energy consumption, as well as its impact on system performance, operating cost and the environment, has become critical issues in Cloud environments and attention should be paid across the entire ICT. Many efforts have been made to improve energy efficiency in Cloud environments. Here the Green Cloud Computing [5] came into picture. The word “green” means eco-friendly. The key role of this kind of computing is to make the use of computer as energy efficient as possible with minimal or no impact on environment. As for the business it also means IT waste recycling and solution to reduce deployment and operational costs [9]. Some simple techniques provide
basic energy management for servers in Cloud
International Journal of Emerging Technology and Advanced Engineering
Website: www.ijetae.com (ISSN 2250-2459,ISO 9001:2008 Certified Journal, Volume 3, Issue 3, March 2013)
355
A computer cluster provides various virtual machines. When a job arrives at the cluster, the cluster scheduler allocates the job with a preconfigured virtual machine then starts it on proper computing node. The job is executed in the virtual machine. After the job is executed, the virtual machine is being put into the sleep mode.In this paper, we focus on extending the implementation of a power-aware scheduling algorithm for high performance cluster computing where virtual machines are dynamically provided for executing cluster jobs, then after proper scheduling it checks for the idle machines and put them into sleep mode to reduce power consumption which can be a green solution.
III. RELATED WORKS
The potentiality of computing utility was first given by Leonard Kleinrock [21], a pioneer researcher in this domain, who previously gave the idea of internet. And now-a-days his vision came into reality as cloud computing. Buyya R. et al.[1], proposed the market oriented resource management in order to regulate the supply and demand of cloud resources for market to be in equilibrium. Mukherjee and Sahoo [12] have done researches on different aspects of cloud computing including green cloud also for better load balancing and job scheduling. Xinhui et al. [22] proposed total cost of ownership of cloud computing. H.Aydin et al. [23] proposed minimization of energy consumption and subsequently the cost for the system. Levy [24] et al. presented an architecture and prototype implementation of performance management system for cluster based web service. Fufang Li, Deyu Qi, Limin Zhang, Xianguang Zhang, and Zhili Zhang [19] have used a carefully designed agent to obtain dynamic real time available computational ability of various nodes in the grid environment, so that new job could be assigned to the node that has the largest available computational power, and thus to improve system load ability and performance with good load balance. We construct all grid computational resources into two-layered Heap Sort Tree (HST); this makes the system be more scalable, robust, fault-tolerant and high performance. Resat Umit Payli, Kayhan Erciyes, Orhan Dagdeviren [20] proposed cluster-based load balancing algorithms for grids. Here the Fig 1. depicts a simple model for green cloud computing framework. Clouds are deployed on physical infrastructure, where cloud middleware is for delivering services to its customers. These differ in their services given, domain and access those are given to the users. So, the cloud deployments are classified into three types: Public, Private, Hybrid [14][1][15][16].
[image:3.612.373.510.166.332.2]IV. PROPOSED MODEL FOR GREEN CLOUD COMPUTING
Fig 1. Proposed Deployment Model of Green Cloud Framework
Public Cloud: This is the most common deployment model where the infrastructure resides totally outside of the enterprise firewall. Here the services are available to anyone on Internet. It supports thousands of public domain users and provides services to public as pay-as-you-go model.
Private Cloud: This one provides advantageous solutions for IT cost like administration and infrastructure. This is deployed within an enterprise firewall and consumed per transaction basis which provides services only to its internal users. It offers greater control providing security. In this kind of model it can buy more machines to increase scalability of its users, but this is slower than that of public cloud.
Hybrid Cloud: This covers both the advantages of public and private clouds. Here, infrastructure and business process resides partly within the enterprise and partly consumed from the third party. This model outsources the non-critical information and processes to public cloud, keeping critical ones in its own control.
International Journal of Emerging Technology and Advanced Engineering
Website: www.ijetae.com (ISSN 2250-2459,ISO 9001:2008 Certified Journal, Volume 3, Issue 3, March 2013)
356
And accordingly send the idle machines into sleep mode to reduce power consumption. [image:4.612.51.261.197.550.2]Here is the main working architecture, on the basis of which we are going to implement our proposed model.
Fig 2. Cloud Working Architecture
V. PROPOSED ALGORITHM
The basic scenario is that, at first, consumer submits services to Graphical User Interface (GUI). From here the service is submitted to Service Accepter (SA) which decides whether to accept the service or not after getting information of Virtual Machine status.
The tracker of the VMs keeps track about the status of VMs whether it is available or not. It also checks for information of power consumption policy. If service is accepted then it is assigned to QoS checker, which fixes up the service level agreement and the price of the requested service. After that, services are submitted to service
execution manager, which interacts with power
consumption policy maker. This policy maker in turn interacts with virtual machines turn on-off decider and turns the required number of VMs ON to carry out services. Then it assigns services to VMs using service assigner. A recorder keeps resource using record. Active VMs execute the services on CPUs of IaaS. It turns the powers of the corresponding CPUs of IaaS ON and the rest are made OFF or idle. Then it sends the services from active VMs to active CPUs of IaaS using mapping of service from virtual machine to IaaS. Thus all CPUs of IaaS are not turned on, only those required are turned ON and the rest are turned OFF. In this way power consumption of energy is minimized along with minimization of operational cost and the emission of carbon dioxide gas to the environment. Thus cloud computing can be a very promising technology
due to its eco-friendliness and minimized operational
cost.
Here is our proposed algorithm for Job submission
and scheduling:
Client submits the job to the job scheduler.
Job scheduler checks for the availability of resources through VM monitor.
VM monitor checks for scheduling table containing threshold value & net congestion on the slaves.
If the threshold value < the maximum & no congestion then accept the job & send it to the job queue, else reject.
If the job is accepted, for every job, go to VM assigner.
If there are under loaded CPU of VM, assign the job
to that VM and update the database of the scheduler.
Else CPU of VM is overloaded and returns the job to
International Journal of Emerging Technology and Advanced Engineering
Website: www.ijetae.com (ISSN 2250-2459,ISO 9001:2008 Certified Journal, Volume 3, Issue 3, March 2013)
[image:5.612.67.271.164.456.2]357
Fig.3. here represents the pictorial view of our algorithm:Fig 3. Pictorial view of the proposed algorithm
Here we can categorize the Load to LOW, MEDIUM and HIGH classes. The node is LOW when it can accept load from other nodes. A node is HIGH loaded when it is detected to be higher than the upper threshold as defined in the previous protocol. The main difference is in the MEDIUM load definition. A node is MEDIUM if it has a load above the maximum limit of LOW load and can accept load from other nodes to reach the upper threshold, which is called MEDIUM MAX. Thus, MEDIUM loaded nodes do not need to give loads to LOW loaded nodes since they are not overloaded. Beside the categorization of nodes, clusters can be classified as LOW, MEDIUM and HIGH as regards to the sum of all local node loads in order to get a global point of view. Two main target of this scheduling for load balancing protocol is to distribute loads of HIGH load nodes and group of nodes which are called clusters to LOW & MEDIUM nodes and clusters to reach global stable load distribution.
VI. PROPOSED METHODOLGY
International Journal of Emerging Technology and Advanced Engineering
Website: www.ijetae.com (ISSN 2250-2459,ISO 9001:2008 Certified Journal, Volume 3, Issue 3, March 2013)
358
Actually this process is implemented for rescheduling the services from overloaded CPUs to under loaded CPUs in order to provide good QoS to consumers. Again if the dances of the bee agents are waggle dance then hive tracker indicates the service acceptor to accept new services from consumer.After this step, we apply ant colony based algorithm [4][11] to find the idle CPUs and then turning them OFF in order to minimize the consumption of power and hence, lower the operational cost. The ant colony from VM turns ON-OFF decider start to find the idle CPUs. The algorithm involves artificial agents called ants who show a cooperative behavior to find the shortest path to the food source from their nest. Ant System is best suited in solving problems which run in dynamic and varied environments without the help of any central control. This is why it is very much applicable to distributed problem solving. As cloud computing is dynamic in nature, hence we propose to apply ant system in cloud computing in finding idle CPUs. The self-organized behavior of this social insects can be used to solve problems in cloud computing. Here the ants are analogous to cloud data centers and food foraging to load allocation to reduce power consumption. We can make analogy with ant colony algorithm for the cloud environment considering its dynamic nature. The creation of controller i.e., Queen ant divides the VMs into two parts: the servers those are in ON state and the servers those are in OFF state. Worker ants are comparable with cloud servers, queen ant with randomly selected cloud server, its reproduction means switching more servers in ON state when needed and cleaner ant’s dead body removal means switching OFF the unwanted or idle servers to reduce power consumption. The main challenges in this kind of environment is to manage the state of cloud servers ON and OFF by the controller. When the allocation is already done by using bee colony algorithm, the service scheduling table is updated containing the attributes like remaining power etc. which is maintained by the controller itself ( queen ant) and is updated time to time which helps to make decisions that which servers should be ON or put into sleep mode as they are idle.
VII. CONCLUSION
Here the emphasis is given only on the scheduling of jobs for proper load balancing in virtual machines and then putting the idle or unused machines to sleep mode for better power management which leads to green cloud computing solution. But there are still other aspects of this environment which need serious attentions like security of green cloud computing.
This kind of vulnerability should be handled properly which is left here as future work.
REFERENCES
[1 ] Saurabh Kumar Garg and Rajkumar Buyya, “ Green Cloud computing and Environmental Sustainability”.
[2 ] Gregor Von Laszewski, Lizhe Wang, Andrew J. Younge and Xi He, “Power-Aware Scheduling of Virtual Machines inDVFS-enabled Clusters”.
[3 ] FeiFei Chen, Jean-Guy Schneider, Yun Yang, John Grundy, and Qiang He “An Energy Consumption Model and Analysis Tool for Cloud Computing Environments”, GREENS 2012, Zuricg, Switzerland, pp. 45-50.
[4 ] A.Suphalakshmi and Sreejith M, “An intelligent, energy conserving load balancing algorithm for the cloud environment using ant’s stigmergic behavior”, International Journal of Communications and Engineering Volume 04– No.4, Issue: 03 March2012.
[5 ] Er. Navdeep Kochhar and Er. Arun Garg,”ECO-FRIENDLY COMPUTING : GREEN COMPUTING”,International Journal of Computing and Business Research ISSN (Online) : 2229-6166.Volume 2 Issue 2 May 2011.
[6 ] Liang Liu, Hao Wang, Xue Liu, Xing Jin, WenBo He, QingBo Wang and Ying Chen, “Green Cloud: A New Architecture for Green Data Center”, pp. 29-38.
[7 ] Salim Bitam, Mohamed Batouche and El-ghazali Talbi, “A Survey On Bee Colony Algorithms”, July 21,2010, IEEE Xplore.
[8 ] Tatjana Davidovic, Milica Selmic and Dusan Teodorovic,“Bee Colony Optimization for Scheduling Independent Tasks to Identical Processor” , pp. 1-20.
[9 ] Jayant Baliga, Robert W. A. Ayre, Kerry Hinton, and Rodney S. Tucker, Fellow IEEE, “Green Cloud Computing: Balancing Energy in Processing, Storage, and Transport”.
[10 ]Andrew J. Younge, Gregor von Laszewski, Lizhe Wang, Sonia Lopez-Alarcon and Warren Carithers, “Efficient Resource Management for Cloud Computing Environments”.
[11 ]Eugen Feller, Louis Rilling and Christine Morin, “Energy-Aware Ant Colony Based Workload Placement in Clouds”.
[12 ]G.Sahoo and K.mukherjee , “Green Cloud: An Algorithmic Approach” , International Journal of Computer Applications (0975 – 8887)Volume 9– No.9, November 2010.
[13 ]K.Mukherjee and G.Sahoo “Mathematical model of cloud computing framework using fuzzy bee colony optimization technique”, 2009, International Conference on Advances in Computing, Control, and Telecommunication Technologies, pp. 664-668.
[14 ]Subhashis Sengupta, Vikrant Kaulgud and Vibhu Saujanya Sharma, “ Cloud Computing Security-Trends and Research Directions”, 2011, IEEE World Congress on Services, pp. 524-525.
[15 ]Shuai Zhang, Shufen Zhang, Xuebin Chen and Xiuzhen Huo, “ Cloud Computing Research and Development Trend”, 2010, Second International Conference on Future Networks, pp. 93-97.
[16 ]Mladen A Vouk, “Cloud Computing- Issues, Research and Implementation”, ITI 2008, 30th International Conference on
Information Technology Interface, June 23-26, 2008, Cavtat, Croatia, pp. 31-40.
International Journal of Emerging Technology and Advanced Engineering
Website: www.ijetae.com (ISSN 2250-2459,ISO 9001:2008 Certified Journal, Volume 3, Issue 3, March 2013)
359
[18 ]Michael Miller, “Cloud Computing: Web Based Application That Change The Way You Work and Collaborate Online”.
[19 ]Fufang Li, Deyu Qi, Limin Zhang, Xianguang Zhang, and Zhili Zhang, “Research on Novel Dynamic Resource Management and Job Scheduling in Grid Computing”, Proceedings of the First International Multi-Symposiums on Computer and Computational Sciences (IMSCCS'06) ,IEEE 2006 .
[20 ]Resat Umit Payli, Kayhan Erciyes, Orhan Dagdeviren , “cluster-based load balancing algorithms for grids”, International Journal of Computer Networks & Communications (IJCNC) Vol.3, No.5, Sep 2011 , pp. 253-267.
[21 ]L.Keleinrock, Avision for the Internet, ST journal of Research, Nov. 2005, pp. 4-5.
[22 ]Xinhui Li, Ying Li, Tiancheng Liu, Jie Qui, Fengchun Wang, International Conference on Cloud Computing” IEEE Computer, 2009, pp. 93-100.
[23 ]H. Aydin, R.G Melhem, D Mosse, and P. Mejia-Alvarez. “Power-Aware Scheduling for Periodic Real-Time Task”, IEEE Transactions on Computers, May 2004, 53(5).
[24 ]R.Levy, J Nagarajaro, G. Pacifici, M. Spreitzer, A. Tantawi and A. Youssef,“ Performance management for cluster based Web services”, in Proceeding FIP/IEEE 8th International Symposium on