In cloud Computing, Cloud computing has recently emerging technology getting popular day by day having wide scope in future. Cloud computing is defined as a large scale distributed computing paradigm that is driven by economics of scale in which a pool of abstracted virtualized energetically. The number of users in cloud computing is growing exponentially. Large number of user requests tries to designate the resources for many applications which along with to high load not far afield off from cloud server. Load Balancing is essential for efficient operations in distributed environments. As Cloud Computing is growing rapidly and clients are demanding more services and better results, load balancing for the Cloud has become a very interesting and important research area. Load balancing ensures that all the processor in the system or every node in the network does approximately the equal amount of work at any instant of time. Our objective is to implement an effective load balancing algorithm for balancing the load on cloud. In this thesis, we have studied and implemented and simulate the algorithms on CloudSim. The Main contribution of CloudSim is to provide a holistic software framework for modeling. Whenever certain VMs are overloaded then no more tasks should be send to overloaded virtual machine if under loaded virtual machines are available.
For optimize solution and better response time the load has to be balanced among overloaded and under loaded virtual machines. In this paper, an algorithm is proposed named honey bee behavior based load balancing (HBB-LB), which targets to achieve well balanced load across virtual machine.
This chapter introduces the context of the research explored in this thesis. It starts with the fundamental motivations behind decentralized and coordinated organization of Grid/Cloud systems; including resource allocation systems. The chapter thereafter provides discussion on the problem and the issues scope of the work and the outline of the thesis.
In the last few years, we have seen the emergence of a new generation of business that operates over the Internet. The Internet has become a medium for organizations, businesses and individuals to collaborate because of technological and economic benefits. The complexity of these networks is increasing given their assets of the sub-networks that provide access to services and resources. These networks serve to strengthen business customer relationships, increases profitability and customer satisfaction. Cloud computing paradigm has quickly become to realization. However, the integration of decentralized services and resources over the internet is still a challenge.
In the mid-1990s, the term Grid was coined to describe technologies that would allow consumers to obtain computing power on demand. Ian Foster [Foster et al., 2002] and others proposed that by standardizing the protocols used to request computing power, the creation of a Computing Grid could happen, analogous in form and utility to the electric power grid. Standards organizations (e.g., OGF, OASIS) defined relevant standards. The term was also adopted by industry as a marketing term for clusters. But no viable commercial Grid Computing providers emerged, at least not until recently. In early 2008 the term âCloud Computingâ was created. Many definitions exist in the literature about Grid and Cloud computing. However, the vision of both the cloud and the Grid is the same which is to reduce the cost of computing, increase reliability, and increase flexibility by transforming computers from something that we buy and operate ourselves to something that is operated by a third party [Foster et al., 2008]. We view the âcloudâ term as another marketing term hype of the Grid computing as they share the same vision, fundamental characteristics and challenges. A similar view is given by many experts defined in [Geelan, 2009]. Grid/Cloud computing is a computational paradigm that utilizes networked computing systems in which applications or services plug into a âpower Gridâ or âInternet Cloudâ of computation for execution. A Network computing system is a virtual system that is formed by processors and networks that agree to work together by pooling their resources. Grid/Cloud computing is a generalized networked computing system that scales to internet levels and handles data and computation seamlessly. Traditional computational models include three elements: computational power (processors and memory), storage, and software (services). The overall goal of Grid/Cloud computing is to allow applications to utilize computational power, storage, and services as exchangeable commodities. Utilizing such computational power from multiple sources increases the system throughput.
The Grid/Cloud systems can be classified depending on the type of usage. Similar to traditional computation model, those computation elements are the main elements in the Grid/Cloud system. However, instead of the traditional centralized node that does all the computation, the Grid/Cloud has different nodes that are distributed. The Grid/Cloud computing systems can be classified into:
â¢ Computational: denotes a system that has a high aggregate capacity of distributed processors. It harnesses machines in âcycle-stealingâ mode to have higher computational capacity than the capacity of any constituent machine in the system.
â¢ Data: provides an infrastructure for creating information from data repositories such as data warehouses.
â¢ Service: refers to systems that provide services that are not provided by any single local machine. An aggregate of services can compose a new service.
This thesis focuses on the Grid/Cloud systems, where participants have the will to collaborate with others in contributing their resources within the environment. In such setting, users provide their resources to be utilized.
SCHEDULING PROBLEM IN THE GRID/CLOUD
This thesis focuses on the scheduling problem within the Grid/Cloud environment. In traditional scheduling, a central decision maker is equipped with all the relevant knowledge of the problem, and would be asked to derive a solution that fulfills all the necessary side constraints, optimizing a global performance criterion. The nature of the Grid/Cloud environment is that decisions are taken by several independent entities and those entities might be aiming at optimizing their own objectives rather than the performance of the system as a whole. Entities in this environment are self-interested and willing to share their resources. Such environment calls for models and techniques that take the strategic behavior of individual units into account, and simultaneously keep an eye on the global performance of the system. Strategic situations are traditionally analyzed in Economic theory. In classical economic theory, there are several market models for specific trading situations and structural behaviors. We view Grid/Cloud environment as a marketplace with several participants whose behavior is bound and determined by a diverse set of specialized services, resources and objectives. Economic theory proposed the use of markets to govern and provide efficient allocation of resources.
The MIT Dictionary of Modern Economics [Pearce, 1986] defines a market as a context in which the sale and purchase of goods and services take place. The Dictionary of economics [Rutherford, 1992] suggests a definition by which market is a medium of exchanges between buyers and sellers. A good is the economic abstraction for a thing that imparts utility to its possessor or recipient. [Tucker, 1998], “a market is a medium in which autonomous agents exchange goods under the guidance of price in order to maximize their own utility”. Market-based resource allocation systems rely on consumers to set values on resources that they require. Market mechanism is to provide an allocation that is optimal. The fundamental principle is that resources are priced based on the aggregated supply and demand. Consumers seek a quantity of resource that maximizes their utility given the current market price. This means no reallocation can make one better off without making another worse. Applying the economic-based framework offers an effective way to solve the issues of scheduling problems in the Grid/Cloud environment such as decentralization, autonomy, resource sharing, heterogeneity, and quality of solution.
PROBLEM SCOPE AND ISSUES
In this thesis, we address the challenges related to modeling and developing a practical architectural solution for resource scheduling in the Grid/Cloud environment that supports both economic efficiency and allocation adequacy based on the characteristics of the environment. Moreover, there is an emergent demand for expressive mechanisms in the Grid/Cloud computing environment. For example, the ability to express time and quality as well as coallocation constraints. It is recognizable that any adoption of auction mechanisms must support a bidding language with the ability to express complicated valuations over multiple attributes. The design of a bidding language plays a key role in the allocation problem, preference elicitation and winner-determination [Lehmann et. al. 2006]. A well-known expressive mechanism is a combinatorial auction (CA) [Benisch et. al. 2008][Lubin et. al., 2008], which allows participants to express valuations over bundles of items. In this research work describes the mechanism of load balancing among overloaded virtual machines and underloaded virtual machines.
I inspired by Honey Bee Behaviour approach to balance the load in cloud computing. The key idea is to submit the tasks to the virtual machine till the machine gets overloaded i.e. load on that virtual machine become more than threshold value .The threshold value may be considered 75. I have proposed a flow chart for load balancing in cloud computing environments based on behavior of honey bee foraging strategy. The tasks are to be send to the underloaded machine and like foraging bee the next tasks are also sent to that virtual machine till the machine gets overloaded as flower patches exploitation is done by scout bees. Honey bee behavior inspired load balancing improves the overall throughput of processing and priority based balancing focuses on reducing the amount of time a task has to wait on a queue of the VM. Thus, it reduces the response of time of VMs. We have compared our proposed algorithm with other existing techniques. Results show that our algorithm stands good without increasing.
OUTLINE OF THE THESIS
The rest of the thesis is structured as follows. Chapter 2 reviews scheduling problem models and related solution approaches for the Grid/Cloud environment. Chapter 3 presents an overview of the Grid/Cloud computing system. Chapter 4 analyzes the scheduling problem in the Grid/Cloud and formulates models based on the completion time of consumers and resource utilization or providers and describes the mapping of the scheduling problem in the Grid/Cloud to economic based models. Chapter 5 describes the proposed Grid/Cloud based bidding language. Chapter 6 proposes a winner determination algorithm for the Grid/Cloud scheduling problem. Chapter 7 presents the implementation architecture, integration with Globus, and results validation. Chapter 8 provides a brief conclusion.