2. 6/2/2018Cloud Computing And Load Balancing
2
Under the Guidance of –
Prof Mrs. Sukhada Bhingarkar
Presented By-
Komal Shete
Cloud Computing And Load
Balancing
5. 6/2/2018Cloud Computing And Load Balancing
5
-when IT’S Smarter to rent than buy...
The Advancement Of the Technology Encompassing Networks
Storage
Processing power
Led To Epitome Of Computing
Cloud Computing
6. 6/2/2018Cloud Computing And Load Balancing
6
Cloud Computing Is A Paradigm That Allow On-Demand Network Access To
Shared Computing Resources
In simple Cloud computing is using the internet to access someone else's
software running on someone else's hardware in someone else's data centre.
A model for Managing, Storing & Processing Data Online via Internet
What is Cloud Computing?
7. 6/2/2018Cloud Computing And Load Balancing
7
Some cloud computing characteristics
include:
What is Cloud Computing?
On Demand
Service
8. 6/2/2018Cloud Computing And Load Balancing
8
Some cloud computing characteristics
include:
What is Cloud Computing?
On Demand
Service
You Use It
When You
Need It
9. 6/2/2018Cloud Computing And Load Balancing
9
Some cloud computing characteristics
include:
What is Cloud Computing?
Network
Access
10. 6/2/2018Cloud Computing And Load Balancing
10
Some cloud computing characteristics
include:
What is Cloud Computing?
Network
Access
Uses
Internet
As A
Medium
11. 6/2/2018Cloud Computing And Load Balancing
11
Some cloud computing characteristics
include:
What is Cloud Computing?
Shared
Resources
12. 6/2/2018Cloud Computing And Load Balancing
12
Some cloud computing characteristics
include:
What is Cloud Computing?
Shared
Resources
Resources Are
Pooled Together
Used By Multiple
Clients
13. 6/2/2018Cloud Computing And Load Balancing
13
Some cloud computing characteristics
include:
What is Cloud Computing?
Scalability
14. 6/2/2018Cloud Computing And Load Balancing
14
Some cloud computing characteristics
include:
What is Cloud Computing?
Scalability
Allows
Elasticity Of
Resources
16. 6/2/2018Cloud Computing And Load Balancing
16SAAS SOFTWARE AS A SERVICE
SAAS
PASS
IAAS
Just run it for me!
• On-demand Service.
• Independent Platform
Don’t need to install the software on your PC
• Runs A Single Instance of the software
Available for multiple users
• Cloud computing cheap
Computing resources managed by vendors
• It is an application that can be accessed from anywhere on the
world as long as you can have an computer with an Internet
Connection.
17. 6/2/2018Cloud Computing And Load Balancing
17• Who uses SAAS ?
End Customers i.e. Frequent users of SAAS
Popular SAAS Providers
• Pros
• Cons
18. 6/2/2018Cloud Computing And Load Balancing
18PAAS PLATFORM AS A SERVICE
SAAS
PASS
IAAS
• Give us nice API (Application Programming Interface) and takes care of the
implementation.
• In the PaaS model, cloud providers deliver a computing platform and/or solution
stack typically including operating system, programming language execution
environment, database, and web server.
• It is a platform for developers to write and create their own SaaS i.e. applications
,which means rapid development at low cost.
19. 6/2/2018Cloud Computing And Load Balancing
19• Who uses PAAS ?
Developers
Popular PAAS Providers
• Pros
• Cons
20. 6/2/2018Cloud Computing And Load Balancing
20IAAS
INFRASTRUCTURE AS A SERVICE
SAAS
PASS
IAAS
• Also known as hardware as a service.
• Is a computing power that you can rent for a limited period of time.
• Allows existing applications to be run on a cloud suppliers hardware.
• cloud providers offer computers – as physical or more often as virtual machines –
raw (block) storage, firewalls, load balancers, and networks
21. 6/2/2018Cloud Computing And Load Balancing
21• Who uses IAAS ?
Sysadmins
Popular IAAS Providers
• Pros
• Cons
22. 6/2/2018Cloud Computing And Load Balancing
22
Modes Of Clouds
Private
Cloud
Hybrid
Cloud
Public
Cloud
Public Cloud is hosted by cloud vendor at the vendors premises
and shared by various organizations.
E.g. : Amazon, Google, Microsoft, Sales force
Private Cloud is dedicated to a particular organization and not
shared with other organizations.
E.g. : HP data centre, IBM, Sun, Oracle, 3tera
Hybrid Cloud is relatively less security concerns on public
cloud. Usage of both public and private together is called hybrid
cloud.
24. 6/2/2018Cloud Computing And Load Balancing
24
Author Methodology Advantages Limitations
Dynamic resource
allocation using
virtual machines [1]
Honey bee
behaviour
Average execution time
and reduction in waiting
time of tasks on queue
were improved
Inefficient while working in
homogeneous type of
System
Honey bee
behaviour inspired
load balancing of
tasks[2]
Dynamic resource
allocation using
virtual machines
Improved the overall
utilization of server
resources
QoS parameters such as
response time or
completion time of tasks are
not discussed
An enhanced
scheduling in
weighted round
robin[3]
Enhanced
scheduling in
weighted round
robin
Minimized the response
time of the jobs by
optimally utilizing the
participating VMs
Load balancing in the
heavily loaded scenarios for
the task migrations has not
been considered.
Literature Survey
25. Problem Statement
Load Balancing in Cloud Computing Environment Using
Improved Weighted Round Robin Algorithm for
Non pre-emptive Dependent Tasks
6/2/2018Cloud Computing And Load Balancing
25
26. Objectives
To study the performance of some of the existing load balancing algorithms
To study the scheduling and load balancing design.
To study the Improved Round Robin Algorithm for Non pre-emptive Dependent
Task
To evaluate the performance of the proposed approach .
6/2/2018Cloud Computing And Load Balancing
26
27. 6/2/2018Cloud Computing And Load Balancing
27
User
Job queue
Dependency task Queue
Independent task Queue
Interface
Task Manager Scheduler
Load balancer
Resource Manager
Resources
Scheduling and Load balancing Design
28. Algorithms
The two most frequently used scheduling principles in a non pre-emptive system are :
Round Robin
Weighted Round Robin
Improved weighted round robin is the proposed algorithm.
6/2/2018Cloud Computing And Load Balancing
28
29. 6/2/2018Cloud Computing And Load Balancing
29
Client
Data centre broker
Scheduling controller
and load balancer Dynamic scheduler Resource proberStatic scheduler
Multitask and task
dependent scheduler
Data centre-1
Host-1
VM1 VM2
Host-2 Host-3 Host-4
VM3 VM4
Data centre-2
VM6 VM7 VM8VM5
System Architecture
30. 6/2/2018Cloud Computing And Load Balancing
30
Start
Identify the child tasks of the
arrived tasks
If child tasks
size > 0
Place the parent task into the
dependent queue
Select a child task from the collection
of Child to a parent and run it in loop
Run the task by using the
static/dynamic scheduler
Update the parent task of
completed status in dependency
queue
If parent task
size > 0
End
Yes
No
No
Flow chart of multilevel interdependency tasks.
31. Mathematical Models Used
(a) Set pendingJobsTotLength = JobsRemainingLengthInExecList +
JobsRemainingLengthInWaitList + JobsRemainingLengthInPauseList
(b) 𝐶V𝑚 is the processing capacity of the VM.
(c) Set pendingETime = pendingJobsTotLength/𝐶V𝑚
6/2/2018Cloud Computing And Load Balancing
31
32. 6/2/2018Cloud Computing And Load Balancing
32
(1) Identify the Pending Execution Time in each of the VMs by collecting the Pending
Execution length from executing, waiting & paused list.
(2) Arrange the VMs based on the least pending execution time to the highest pending
execution time and group it, in case two VMs fall in the same pending length. This Map
should contain pending execution time as key and it’s associated VMs as a value.
(a) Sort the VMMap by the Pending Execution Time of each VM
(3) Re-arrange the incoming Jobs based on the length & priority of the Jobs.
(a) Sort the JobSubmittedList based on length & priority.
(4) Initiate the vmIndex, jobIndex variable & totalJobs
Set vmIndex = 0
Set totalJobs = length of JobSubmittedList
Set totalVMsCount = size of VMMap
Set jobIndex = 0
Set jobToVMratio = totalJobs/totalVMsCount
(5) Assign the incoming jobs to the VMs based on the least Pending Execution
Time in the VMs & its processing capacity
Algorithm :IWRR dynamic scheduler.
33. 6/2/2018Cloud Computing And Load Balancing
33
(a) While (true)
Set job = JobSubmittedList.get(jobIndex)
Set jobLength = lengthOf(job)
Set newCompletiontimeMap = EmptyMap
For startNumber from 0 by 1 to totalVMsCount do {
Set vm = VMMap.getValue(startNumber)
Set probableNewCompTime = jobLength/𝐶V𝑚 + VMMap.getKey(startNumber)
newCompletiontimeMap.add(probableNewCompTime, vm)
}
SortByCompletionTime(newCompletionta)
Set selectedVM = newCompletiontimeMap.getValue(0) selectedVM.assign(job)
For startNumber from 0 by 1 to totalVMsCount do {
Set vm = VMMap.getValue(startNumber)
If (vm equals selectedVM)
Set currentLength = VMMap.getKey(startNumber)
Set newCurrentLength = currentLength + newCompletiontimeMap.getKey(0)
VMMap.removeItem(startNumber)
VMMap.add(newCurrentLength, vm)
EndIf
}
34. 6/2/2018Cloud Computing And Load Balancing
34
sortByCompletionTime(VMMap)
Increase the jobIndex by 1
If (jobIndex equals totalJobs)
Break
(b) End While
(6) Remove all the assigned Jobs from the JobSubmittedList
35. 6/2/2018Cloud Computing And Load Balancing
35
(1) Identify the number of executing/pending tasks in each VM and arrange it in increasing order on a
Queue.
(a) Set numTaskInQueue = Number of Executing/Waiting Tasks in each VM and arrange it in increasing
order
(2) If the number of tasks in the first item of the queue is greater than or equal to “1”, then terminate the
Load Balancing logic execution else proceed to the 3rd step.
(a) If (numTaskInQueue.first() ≥1) then
Return;
(3) If the number of tasks in the last item of the queue is less than or equal to “1”, then terminate the
Load Balancing logic execution else proceed to the 4th step.
(a) If (numTaskInQueue.last()≤1) then Return;
(4) Identify the Pending Execution Time in each of the VMs by adding the Pending Execution length
from executing, waiting & paused list and then divided the value by the processing capacity of the VM.
Algorithm : IWRR load balancer..
36. 6/2/2018Cloud Computing And Load Balancing
36(5) Arrange the VMs based on the least pending time to the highest pending time and group it, in
case two VMs fall in the same pending time.
(a) Sort the VMMap by the Pending Execution time of each VM
(6) Remove a task from the higher pending time VM, which contains more than one task and
assign this task to the lower pending time VM, which has no task to process.
While (true)
Set OverLoadedVM = VMMap.get(VMMap.size())
Set LowLoadedVM = VMMap.get(0)
Varlowerposition = 1;
Varupperposition = 1;
While(true)
If (OverLoadedVM.taskSize() > 1 &&LowLoadedVM.taskSize() < 1) Break;
Else if (OverLoadedVM.taskSize() > 1)
LowLoadedVM = VMMap.get(lowerposition) Lowerposition++
Else if (LowLoadedVM.taskSize() < 1)
OverLoadedVM = VMMap.get(VMMap.size() - upperposition) Upperposition++
Else
Break The Outer While Loop
End While
37. 6/2/2018Cloud Computing And Load Balancing
37
Set migratableTask = OverLoadedVM.getMigratableTask()
LowLoadedVM.assign(migratableTask) Break
End While
(7) Re execute from the step 1
(8) Then the steps 2 and 3 will decide the load balancing further.
(9) This load balancing will be called after every task completion irrespective of any VMs.
38. Conclusion
The improved weighted round robin algorithm considers the capabilities of each VM and the task length
of each requested job to assign the jobs into the most appropriate VMs
The load balancer in the improved weighted round robin runs at the end of each task’s completion. This
always makes the loads evenly distributed across all the VMs at the end of each task’s completion and
thus eliminates any idle time in the participating resources(VMs).
The performance analysis and experiment results of this algorithm proved that the improved weighted
round robin algorithm is most suitable to the heterogeneous/homogenous jobs with heterogeneous
resources (VMs) compared to the other round robin and weighted round robin algorithms. This
algorithm considers the response time as the main QoS parameter.
6/2/2018Cloud Computing And Load Balancing
38
39. Future Scope
Cloud Computing is a vast concept and load balancing plays a very important role in case
of Clouds.
There is a huge scope of improvement in this area. We have discussed only two divisible
load scheduling algorithms that can be applied to clouds, but there are still other
approaches that can be applied to balance the load in clouds.
The performance of the given algorithms can also be increased by varying different QoS
parameters.
6/2/2018Cloud Computing And Load Balancing
39
40. References
1) Z. Xiao, W. Song, and Q. Chen, “Dynamic resource allocation using virtual machines for cloud computing environment,”
IEEE Transactions on Parallel and Distributed Systems, vol. 24, no. 6, pp. 1107–1117, 2013.
2) L. D. Dhinesh Babu and P. Venkata Krishna, “Honey bee behaviour inspired load balancing of tasks in cloud computing
environments,” Applied Soft Computing Journal, vol. 13, no. 5, pp. 2292–2303, 2013.
3) R. Basker, V. Rhymend Uthariaraj, and D. Chitra Devi, “An enhanced scheduling in weighted round robin for the cloud
infrastructure services,” International Journal of Recent Advance in Engineering & Technology, vol. 2, no. 3, pp. 81–86,
2014.
4) Hindawi Publishing Corporation e Scientific World Journal Volume 2016, Article ID 3896065, 14 pages
http://dx.doi.org/10.1155/2016/3896065
5) https://www.youtube.com/watch?v=36zducUX16w&index=1&list=LLVnBa5vCutTSTutoelnCrIg&t=0s
[online,available,01/04/2018]
6) https://www.google.co.in/search?q=speaker+in+hand+of+guy [online,available,01/04/2018]
6/2/2018Cloud Computing And Load Balancing
40