Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization...
Transcript of Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization...
![Page 1: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/1.jpg)
Virtualization and Cloud Computing
Sorav Bansal
![Page 2: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/2.jpg)
Administrivia
• Instructors: Sorav Bansal, Huzur Saran, GautamShroff (Tata Consultancy Services)
• Webpage: http://www.cse.iitd.ernet.in/~sbansal/csl862
• Syllabus: Lectures + Papers on webpage + Gautam Shroff’s book (see webpage)
• Lecture Hours:
• Assignments: Will be posted on Webpage
• Teaching Assistant:
![Page 3: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/3.jpg)
What to Expect• Deep Understanding of Virtualization Internals
• Heavy Programming– Pre-requisite: Must have done significant
programming in OS course
– Many new concepts and a new environment
• Understanding of Cloud Computing and Related Technologies
• Systems Research Papers– Expect you to read the paper before attending lecture
– Often, the lecture will be organized as a discussion based on your understanding of the paper
![Page 4: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/4.jpg)
History of Computing
Babbage Difference Engine1879
Harvard Mark-I, 1944 MIT Whirlwind, 1951
DEC PDP-8 minicomputer1965, $18,000
IBM 360 Mainframe1964, $2.5-3 million
ATARI microcomputersGaming + home computing1979.
![Page 5: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/5.jpg)
History of Computing - 2
Apple Macintosh, 1984 IBM PC/AT, 1984Intel 80286 Microprocessor
Microsoft Windows, 1985
Linus Torvalds, 1991Intel Pentium ProcessorDiagram, 1993
Internet and Search, 1998
![Page 6: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/6.jpg)
History of Computing - 3
IPAD, 2010 SaaS Computing
The Million Server DatacenterProviding IaaS
![Page 7: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/7.jpg)
Source acknowledgement: Raghavan Subramaniam, Infosys
![Page 8: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/8.jpg)
Source acknowledgement: Raghavan Subramaniam, Infosys
![Page 9: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/9.jpg)
More Buy-vs-Rent examples
• Each IIT student must buy a house in Delhi versus Rent a hostel room
• One workstation per student versus GCL lab
• Networks: Circuit-switched versus Packet-switched
Common Theme: Virtualization of Resource + Scheduling
![Page 10: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/10.jpg)
Virtualization inside an OS
• CPU Process
• Memory Virtual Memory
• Disk Files
• Network Card TCP/UDP Sockets
• Screen Windows
NOW: Physical Machine (CPU+Mem+Disk+Net+…) Virtual Machine (VCPU+Vmem+Vdisk+Vnet+…)
![Page 11: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/11.jpg)
How to Virtualize
• Divide a resource in Time and/or Space
• Share
• Protect
• Schedule
• Make Pre-emptible
• Build a Cost Model
Consider examples: CPU, Memory, Disk, Cloud
![Page 12: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/12.jpg)
Why Virtualize?
• Usually cost
– $$, power, space, maintenance personnel, ….
• Also, Hardware Trends
• Plus, much more
– Mobility, Security, Encapsulation, …
![Page 13: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/13.jpg)
Hardware Trends: Moore’s Law
Number of Transistors double every 2 yearsNot expected to stop until 2015 or later!
![Page 14: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/14.jpg)
Hardware Trends: CPU Frequency
• Altair 8800 (1975), used an Intel 8080 CPU with a clock rate of 2 MHz
• IBM PC (1981) : 4.77 MHz• Pentium (1995): 100 MHz• Pentium4 (2002): 3 GHz
CPU Speed scaled by 1500x over 30 yearsWirth’s Law (1995):
``Software is getting slower more rapidly than hardware becomes faster’’
![Page 15: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/15.jpg)
Hardware Trends: Memory/Disk• Memory and Disk Size have also followed
exponential trends:
Disk Size
![Page 16: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/16.jpg)
Hardware Trends: Power
![Page 17: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/17.jpg)
2020 IT Carbon Footprint
17
820m tons CO2
360m tons CO2
260m tons CO2
2007 Worldwide ITcarbon footprint:2% = 830 m tons CO2
Comparable to theglobal aviation industry
Expected to grow to 4% by 2020
Source: David Patterson
![Page 18: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/18.jpg)
Virtualization Economics 101
Unused resources
“Statically provisioned”data center
“Virtual” data center in the cloud
Demand
Capacity
Time
Ma
ch
ine
s
Demand
Capacity
Time
$
![Page 19: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/19.jpg)
Risk of Under-utilization
• Underutilizations occur if “peak” predictions too optimistic
Unused resources
Static data center
Demand
Capacity
Time
Re
so
urc
es
![Page 20: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/20.jpg)
Risk of Under-Provisioning
Lost revenue
Lost users
Re
so
urc
es
Demand
Capacity
Time (days)1 2 3
Re
so
urc
es
Demand
Capacity
Time (days)1 2 3
Re
so
urc
es
Demand
Capacity
Time (days)1 2 3
20
![Page 21: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/21.jpg)
“Risk Transfer” to Cloud
• Not (just) Capital Expense vs. Operation Expense!
• “Cost associativity”: 1,000 CPUs for 1 hour same price as 1 CPUs for 1,000 hours (@$0.08/hour)
• Major enabler for SaaS startups
– Animoto traffic doubled every 12 hours for 3 days when released as Facebook plug-in
– Scaled from 50 to >3500 servers
– ...then scaled back down
• Gets IT gatekeepers out of the way
– not unlike the PC revolution
![Page 22: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/22.jpg)
Classifying Clouds
• Instruction Set VM (Amazon EC2)
• Managed runtime VM (Microsoft Azure)
• Framework VM (Google AppEngine)
• Tradeoff: flexibility/portability vs. “built in” functionality
EC2 Azure AppEngine
Lower-level,Less managed
Higher-level,More managed
![Page 23: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/23.jpg)
Course Outline• Virtualization
– Dynamic recompilation, JVM, LLVM, …
– Vmware, Xen, HVM, …
– CPU virtualization, memory virtualization, I/O device virtualization
– Applications
• Cloud Computing– Parallel Programming
– Data in the Cloud (MapReduce, BigTable, …)
– Present Day Clouds
– Private/Public Clouds
![Page 24: Virtualization and Cloud Computingsbansal/csl862-virt/2010/lec/lec01.pdf · •Virtualization –Dynamic recompilation, JVM, LLVM, … –Vmware, Xen, HVM, … –CPU virtualization,](https://reader034.fdocuments.us/reader034/viewer/2022042919/5f6277e9b6c0da458a734ea6/html5/thumbnails/24.jpg)
Next Lecture
• Compiling Java Just In Time
• Xen and the Art of Virtualization