where to implement load balancing policies depends on how you are
planning it to happen:
- if you want data center to balance the load of physical hosts
regarding VMs, you have to implement in the VMAllocationPolicy;
- if you want to balance the load of VMs running an application, it
has to be implemented in your Broker.
Regards,
Rodrigo
it depends on the exact nature of your project:
- if you want to develop a real load balancer, that is going to run in
your cluster of virtualized hosts, then I suggest you to look for
Eucalyptus or Open Nebula.
- On the other hand, if you don't have (or don't want to) use physical
resources for your project, then you should consider simulation tool
(like CloudSim).
A good reference for different types of experimentation, and when and
why use each one is:
Gustedt, J.; Jeannot, E. & Quinson, M. Experimental methodologies for
large-scale systems: a survey, Parallel Processing Letters, World
Scientific, 2009, 19, 399-418.
Regards,
Rodrigo
I think it depends on the goals of your load balancing algorithm, for example:
- if you are load balancing to help reducing execution time of
applications, you can show application performance with and without
load balancing
- if the goal is having a fair utilization of all resources, show the
utilization of resources with and without the load balancing
and so on...
Regards,
Rodrigo
You can get the source code, libraries, examples and the documentation
either in the CloudSim web page
http://www.cloudbus.org/cloudsim/
or in Google code:
http://code.google.com/p/cloudsim/
Regards,
Rodrigo
Load balancing algorithms can be applied in various levels in a
simulation. It has been discussed in this list previously: the exact
answer depends on WHAT you want to load balance... this can be
explored in different levels, form the VM level to the application
level.
also, what to do depends on the type of research you want to do.
Simulation allows you to test algorithms and methods, but does not
support execution of real applications or applying the technique
(directly) in a real environment. Therefore, if your plan is
developing an algorithm that can be used in a real Cloud system, I
suggest you to explore tools such as Eucalyptus or open Nebula since
the beginning.
However, if you are happy in having your results validated only in the
simulator and without real implementation or utilization of real
systems and resources, that you can develop your research with
simulation.
In either case, there are plenty of research opportunities to be
explored: for example, in the case of load balance, it could be
explored in aspects such as:
- you have a PaaS/SaaS infrastructure, where lots of requests for
services are received. These requests have to be distributed to the
available VMs to be processed. how to distribute it to minimize
service execution time? How to decide number and characteristics of
VMs that process this requests?
- in the same scenario as before, your infrastructure for processing
the requests may be divided between different data centers (from the
same or different providers). How to distribute the requests among
them, so service execution time is minimized? (in this case, a new
dimension can be added: different providers may charge differently for
the resources, and this would have to be considered together with the
load balancing algorithms.)
There are, off course, lots of other problems. A good approach for
identifying potential research problems to investigate is looking for
"future works" section of papers in Clouds, or even identifying by
yourself unsolved problems in the papers you read. an example of the
latter: you read a paper you liked the problem it explored, but you
don't agree with the assumptions (for example, some assumptions from
the paper do not look realistic or make it not useful for your
particular interest) them, you can explore the same problem without
such assumptions.
Success in your research!
Regards,
Rodrigo
Find the answers below:
On 15 March 2011 06:30, jasmin <james.j...@gmail.com> wrote:
> Thanks for your valuable guidance..Rodrigo.. il come back to you after
> going through these areas u specified more specifically...
> hv more queries regarding 'load balancing' -cloudsim:
>
> which API's in CLOUDSIM toolkit (cloudsim-2.1\sources\org\cloudbus
> \cloudsim) specifically are helpful in :
> 1) VmAllocation policy - ? i think 3 API's namely:Vm,
> VmAllocationPolicy,VmAllocationPolicySimple.,.........??
>
I think "Host" is also relevant for VmAllocation policy.
> 2) Service Broker poliocy ? API's:
> DatacenterBroker,......................??
>
> 3)What is HostDynamicWorkload API used for? is it related to Service
> Broker policy Dynamic Service Broker policy (Cloudanalyst)?
>
DatacenterBroker is an example class showing how to model interactions
between broker and Datacenter. Here, relevant classes are Vm,
Datacenter, and Cloudlet.
HostSDynamicworkload is intended to be used together with other
classes for power-aware scheduling.
> 3) Does 'load balancing' topic comes in 'Scaling CC' area- one of the
> challenges for CC. If yes how and where it comes? Allocation-
> provisioning/Deallocation-deprovisioning/Automatic allocation,etc..
>
> 4) Is VM migration a part of 'load balancing' in SCALING or it comes
> in Vm 'SCHEDULING' part ?
>
The answer to these questions are not objective, it depends on
personal opinions about each topic. Same topics can be explored from
different perspectives, and then the solution to the problem will
start from different assumptions. So, you can explore VM migration or
load balancing from the perspective of scaling, or scheduling, "green
computing"... you call.
> Pls tell... will be going through these API's then..
> since im going through this topic first... if i find this beneficial i
> would like to continue in this only then..
>
> Thanks
> Jasmin
>
Regards,
Rodrigo