Efficient Resource Management for Cloud Computing Environments Andrew J. Younge1, Gregor von Laszewski1, Lizhe Wang1, Sonia Lopez-Alarcon2, Warren Carithers2 1: Pervasive Technology Institute Indiana University 2719 E. 10th Street Bloomington, Indiana 47408 2: 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 & Future Work 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 Motivation for Green Data Centers • Economic – New data centers run on the Megawatt scale, requiring millions of dollars to operate. – Recently institutions are looking for new ways to reduce costs, no more “blank checks.” – Many facilities are are at their peak operating envelope, and cannot expand without a new power source. • Environmental – 70% of the U.S. energy sources are fossil fuels. – 2.8 billion tons of CO2 emitted each year from U.S. power plants. – Sustainable energy sources are not ready. – Need to reduce energy dependence until a more sustainable energy source is deployed. 7 Green Computing • Performance/Watt is not following Moore’s law. • Advanced scheduling schemas to reduce energy consumption. – Power aware – Thermal aware • Data center designs to reduce Power Usage Effectiveness. – Cooling systems – Rack design 8 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. 9 Framework Green Cloud Framework Virtual Machine Controls Scheduling Data Center Design Management Server & Rack Design Power Aware Thermal Aware VM Image Design Migration Air Cond. & Recirculation Dynamic Shutdown 10 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 11 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 12 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 13 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 14 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) 15 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 16 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 17 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 18 Conclusion • Cloud computing is an emerging topic in Distributed Systems. • Need to conserve energy wherever possible! • Green Cloud Framework: – Power-aware scheduling of VMs. – Advanced VM & infrastructure management. – Specialized VM Image. • Small energy savings result in a large impact. • Combining a number of different methods together can have a larger impact then when implemented separately. 19 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 minimization. • Designing the next generation of Cloud computing systems to be more efficient. 20 Appendix 21 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 22 Data Center Design • Need new data center designs strategies to reduce cooling requirements. • Pod-based clusters: • Modular • Semi-portable • Closed-loop systems • Quebec’s CLUMEQ Silo supercomputer. 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 profile compared to other major distros. – Excellent package management software (aptitude). – Great support. VM Image Design Ubuntu Linux Vs. Minimal 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 Performance Impact of VMs 26 DVFS VM Scheduling 27