Improving Efficiency in Cloud Computing Environments

advertisement
Efficient Resource Management
for Cloud Computing
Environments
Andrew J. Younge
Golisano College of Computing and Information Sciences
Rochester Institute of Technology
102 Lomb Memorial Drive
Rochester, New York 14623
Outline
•
•
•
•
•
•
•
Introduction
Motivation
Related Work
Green Cloud Framework
VM Scheduling & Management
Minimal Virtual Machine Images
Conclusion
2
What is Cloud Computing?
• “Computing may someday
be organized as a public
utility just as the telephone
system is a public utility...
The computer utility could
become the basis of a new
and important industry.”
– John McCarthy, 1961
• “Cloud computing is a largescale distributed computing
paradigm that is driven by
economies of scale, in
which a pool of abstracted,
virtualized, dynamically
scalable, managed
computing power, storage,
platforms, and services are
delivered on demand to
external customers over the
Internet.”
– Ian Foster, 2008
3
Virtualization
• Virtual Machine (VM) is
a software artifact that
executes other software
as if it was running on a
physical resource
directly.
• Typically uses a
Hypervisor or VMM
which abstracts the
hardware from an
Operating System
4
Cloud Computing
• Features of Clouds
– Scalable
– Enhanced Quality of Service (QoS)
– Specialized and Customized
– Cost Effective
– Simplified User Interface
5
Data Center Power Consumption
• Currently it is estimated that servers consume
0.5%of the world’s total electricity usage.
– Closer to 1.2% when data center systems are factored
into the equation
• Server energy demand doubles every 4-6 years.
• This results in large amounts of CO2 produced by
burning fossil fuels.
• What if we could reduce the energy used with
minimal performance impact?
6
Related Work
• Scheduling on Cluster
resources
– Power aware
– Thermal aware
• Data center design to
reduce Power Usage
Effectiveness (PUE)
– Cooling systems
– Rack design
• Little research in designing
efficient Cloud data centers
7
Research Opportunities
• There are a number of areas to explore in
order to conserve energy within a Cloud
environment
– Schedule VMs to conserve energy
– Management of both VMs and underlying
infrastructure
– Minimize operating inefficiencies for non-essential
tasks
– Optimize data center design
8
Framework
Green Cloud
Framework
Virtual
Machine
Controls
Scheduling
Power
Aware
Thermal
Aware
Data Center
Design
Management
VM Image
Design
Migration
Server &
Rack
Placement
Air Cond. &
Recirculation
Dynamic
Shutdown
9
VM scheduling on Multi-core Systems
180
Scheduling
170
160
150
Watts
• There is a nonlinear
relationship between
the number of
processes used and
power consumption
• We can schedule VMs
to take advantage of
this relationship in
order to conserve
power
140
130
120
110
100
90
0
1
2
3
4
5
6
7
8
Number of Processing Cores
Power consumption curve on an Intel
Core i7 920 Server
(4 cores, 8 virtual cores with
10
Hyperthreading)
Power-aware Scheduling
• Schedule as many VMs
at once on a multi-core
node
– Greedy scheduling
algorithm
– Keep track of cores on a
given node
– Match vm requirements
with node capacity
Scheduling
11
485 Watts vs. 552 Watts
V
M
V
M
V
M
V
M
V
M
V
M
V
M
V
M
Node 1 @ 170W
Node 2 @ 105W
Node 3 @ 105W
Node 4 @ 105W
VS.
V
M
V
M
V
M
V
M
Node 1 @ 138W
V
M
V
M
Node 2 @ 138W
V
M
Node 3 @ 138W
V
M
Node 4 @ 138W
12
VM Management
• Monitor Cloud usage and load
• When load decreases:
• Live migrate VMs to more utilized nodes
• Shutdown unused nodes
• When load increases:
• Use WOL to start up waiting nodes
• Schedule new VMs to new nodes
Management
13
VM
VM
VM
VM
1
Node 1
VM
VM
VM
Node 2
VM
VM
2
Node 1
VM
VM
VM
Node 2
VM
3
Node 1
VM
VM
VM
Node 2
VM
4
Node 1
Node 2 (offline)
14
Minimizing VM Instances
• Virtual machines are desktop-based
– Lots of unwanted packages
– Unneeded services
• Are multi-application oriented, not service oriented
– Clouds are based off of a Service Oriented Architecture
• Need a custom lightweight Linux VM for service
oriented science
• Need to keep VM image as small as possible to reduce
network latency
Management
15
Cloud Linux Image
• Start with Ubuntu 9.04
• Remove all packages not
required for base image
–
–
–
–
No X11
No Window Manager
Minimalistic server install
Can load language support on
demand (via package manager)
• Readahead profiling utility
– Reorder boot sequence
– Pre-fetch boot files on disk
– Minimize CPU idle time due to I/O
delay
• Optimize Linux kernel
VM Image
Design
– Built for Xen DomU
– No 3d graphics, no sound,
minimalistic kernel
– Build modules within kernel directly
16
Energy Savings
• Reduced boot times from 38 seconds to just 8 seconds
– 30 seconds @ 250Watts is 2.08wh or .002kwh
• In a small Cloud where 100 images are created every hour
– Saves .2kwh of operation @ 15.2c per kwh
– At 15.2c per kwh this saves $262.65 every year
– In a production Cloud where 1000 images are created every
minute
– Saves 120kwh less every hour
– At 15.2c per kwh this saves over 1 million dollars every year
• Image size from 4GB to 635MB
– Reduces time to perform live-migration
– Can do better
VM Image
Design
17
Conslusion
• Cloud computing is an emerging topic in
Distributed Systems
• Need to conserve energy
• Green Cloud Framework
– Power-aware scheduling of VMs
– Advanced VM & infrastructure management
– Specialized VM Image
• Small energy savings result in a large impact
18
Future Work
• Combine concepts of both Power-aware and
Thermal-aware scheduling to minimize both
energy and temperature
• Integrated server, rack, and cooling strategies
• Further improve VM Image
• Designing the next generation of Cloud
computing systems
19
Progress
• Have some prior knowledge and research in Grid
computing
• After attending Supercomputing 2008 in late
November, I realized the future exists in Cloud
computing
• Spent the past few months investigating Cloud
computing research opportunities
– Identified Green IT work and realized it was applicable to
Clouds
– Dedicated time to researching Green computing research
and developing a framework for Cloud infrastructure
20
Accomplishments
[1] G. von Laszewski, L. Wang, A. Younge, and X. He, “Poweraware scheduling of virtual machines in dvfs-enabled
clusters,” Rochester Institute of Technology, Tech. Rep.,
2009.
[2] G. von Laszewski, A. Younge, X. He, K. Mahinthakumar, and
L. Wang, “Experiment and workflow management using
cyberaide shell,” in 4th International Workshop on
Workflow Systems in e-Science (WSES 09) in conjunction
with 9th IEEE International Symposium on Cluster
Computing and the Grid. IEEE, 2009.
[3] L. Wang, G. von Laszewski, A. Younge, X. He, M. Kunze, and
J. Tao, “Cloud computing: a perspective study,” New
Generation Computing, to appear in 2010.
[4] G. von Laszewski, F. Wang, A. Younge, X. He, Z. Guo, and
M. Pierce, “Cyberaide javascript: A javascript commodity
grid kit,” in GCE08 at SC’08. Austin, TX: IEEE, Nov. 16
2008. [Online]. Available:
http://cyberaide.googlecode.com/svn/trunk/papers/08javascript/vonLaszewski- 08- javascript.pdf
[5] G. von Laszewski, F. Wang, A. Younge, Z. Guo, and M.
Pierce, “Javascript grid abstractions,” in Proceedings of
the Grid Computing Environments 2007 at SC07, Reno,
NV, Nov. 2007. [Online]. Available:
http://cyberaide.googlecode.com/svn/trunk/papers/07javascript/vonLaszewski- 07- javascript.pdf
• Accepted into 2009 International
Summer School on Grid
Computing in Nice, France.
– Supported by US Department
of Energy OSG stipend.
• Accepted as student volunteer for
2009 International
Supercomputing Conference in
Hamburg, Germany.
• First author on an extended
abstract and poster accepted to
the TeraGrid 2009 conference.
21
Appendix
22
Cloud Computing
• Distributed Systems
encompasses a wide
variety of technologies
• Grid computing spans
most areas and is
becoming more mature.
• Clouds are an emerging
technology, providing
many of the same
features as Grids without
many of the potential
pitfalls.
From “Cloud Computing and Grid Computing 360-Degree Compared”
23
Minimal VM Image
• Easier to slim down a fully
functional distro than to create
one from scratch
• Selected Ubuntu Linux
– Jaunty 9.04
– Minimal install site
– Package management software
(aptitude)
– Continuing support
VM Image
Design
Ubuntu Linux
Vs.
Cloud
Ubuntu
24
VM Scheduling
• Implemented scheduler
on OpenNebula system
• Replaced Round Robin
scheduling system with
Based on Algorithm
• Startup and Shutdown
VM Management Easily
added
From “Opennebula: The open source virtual machine manager for cluster computing”
25
DVFS VM Scheduling
26
Download