270 likes | 398 Views
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
E N D
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
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
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
Cloud Computing • Features of Clouds • Scalable • Enhanced Quality of Service (QoS) • Specialized and Customized • Cost Effective • Simplified User Interface
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?
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
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
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 Scheduling Power consumption curve on an Intel Core i7 920 Server (4 cores, 8 virtual cores with 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
485 Watts vs. 552 Watts VM VM VM VM VM VM VM VM Node 1 @ 170W Node 2 @ 105W Node 3 @ 105W Node 4 @ 105W VS. VM VM VM VM Node 1 @ 138W Node 2 @ 138W VM VM VM VM Node 3 @ 138W Node 4 @ 138W
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
VM VM VM VM 1 Node 1 Node 2 VM VM VM VM VM 2 Node 1 Node 2 VM VM VM VM 3 Node 1 Node 2 VM VM VM VM 4 Node 1 Node 2 (offline)
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
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
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
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
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
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
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.
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”
Minimal VM Image Ubuntu Linux • 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 Vs. Cloud Ubuntu
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”