efficient resource management for cloud computing environments

26
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

Upload: lilka

Post on 23-Jan-2016

30 views

Category:

Documents


0 download

DESCRIPTION

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 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Efficient Resource Management for Cloud Computing Environments

Efficient Resource Management for Cloud Computing

Environments

Andrew J. Younge

Golisano College of Computing and Information SciencesRochester Institute of Technology

102 Lomb Memorial DriveRochester, New York 14623

Page 2: Efficient Resource Management for Cloud Computing Environments

Outline

• Introduction• Motivation• Related Work• Green Cloud Framework• VM Scheduling & Management • Minimal Virtual Machine Images• Conclusion

2

Page 3: Efficient Resource Management for Cloud Computing Environments

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 large-scale 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

Page 4: Efficient Resource Management for Cloud Computing Environments

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

Page 5: Efficient Resource Management for Cloud Computing Environments

Cloud Computing• Features of Clouds– Scalable– Enhanced Quality of Service (QoS)– Specialized and Customized– Cost Effective– Simplified User Interface

5

Page 6: Efficient Resource Management for Cloud Computing Environments

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

Page 7: Efficient Resource Management for Cloud Computing Environments

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

Page 8: Efficient Resource Management for Cloud Computing Environments

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

Page 9: Efficient Resource Management for Cloud Computing Environments

Framework

9

Page 10: Efficient Resource Management for Cloud Computing Environments

VM scheduling on Multi-core Systems

• 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 Power consumption curve on an Intel

Core i7 920 Server (4 cores, 8 virtual cores with

Hyperthreading)Scheduling 10

Page 11: Efficient Resource Management for Cloud Computing Environments

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

Page 12: Efficient Resource Management for Cloud Computing Environments

Node 1 @ 170WNode 1 @ 170W

VMVM

VMVM

VMVM

VMVM

VMVM

VMVM

VMVM

VMVM

Node 2 @ 105WNode 2 @ 105W

Node 3 @ 105WNode 3 @ 105W Node 4 @ 105WNode 4 @ 105W

Node 1 @ 138WNode 1 @ 138W

VMVM

VMVM

VMVM

VMVM

VMVM

VMVM

VMVM

VMVM

Node 2 @ 138WNode 2 @ 138W

Node 3 @ 138WNode 3 @ 138W Node 4 @ 138WNode 4 @ 138W

485 Watts vs. 552 Watts

12

VS.

Page 13: Efficient Resource Management for Cloud Computing Environments

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

Page 14: Efficient Resource Management for Cloud Computing Environments

Node 1Node 1

VMVM VMVM VMVM VMVM

Node 2Node 2

Node 1Node 1

VMVM VMVM VMVM VMVM

Node 2Node 2

Node 1Node 1

VMVM VMVM VMVM VMVM

Node 2 (offline)

VMVM

Node 1Node 1

VMVM VMVM VMVM VMVM

Node 2Node 2

1

2

3

4

14

Page 15: Efficient Resource Management for Cloud Computing Environments

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

Page 16: Efficient Resource Management for Cloud Computing Environments

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– Built for Xen DomU– No 3d graphics, no sound, minimalistic

kernel– Build modules within kernel directly

VM Image Design 16

Page 17: Efficient Resource Management for Cloud Computing Environments

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

Page 18: Efficient Resource Management for Cloud Computing Environments

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

Page 19: Efficient Resource Management for Cloud Computing Environments

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

Page 20: Efficient Resource Management for Cloud Computing Environments

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 infrastructure20

Page 21: Efficient Resource Management for Cloud Computing Environments

Accomplishments[1] G. von Laszewski, L. Wang, A. Younge, and X. He, “Power-

aware 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/08-javascript/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/07- javascript/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

Page 22: Efficient Resource Management for Cloud Computing Environments

Appendix

22

Page 23: Efficient Resource Management for Cloud Computing Environments

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

Page 24: Efficient Resource Management for Cloud Computing Environments

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

Ubuntu LinuxUbuntu Linux

Cloud UbuntuCloud

Ubuntu

Vs.

VM Image Design 24

Page 25: Efficient Resource Management for Cloud Computing Environments

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

Page 26: Efficient Resource Management for Cloud Computing Environments

DVFS VM Scheduling

26