Virtualization and Cloud Computing Chapter 15
Objectives Describe the concepts of virtualization Explain why PC and network administrators have widely adopted virtualization Describe how virtualization manifests in modern networks Describe the service layers and architectures that make up cloud computing
Overview
Introduction to Virtualization (1 of 2) Virtualization uses special software running on a computer to create a complete guest environment Functions as if installed on its own computer The guest environment is called a virtual machine (VM)
Introduction to Virtualization (2 of 2) Figure 15.1 VirtualBox running Linux
Key Topics in This Chapter What virtualization is and why we use it Virtualization in modern networks The role of virtualization in cloud computing How cloud computing adds value to the Internet How cloud networks compare to and interface with traditional networks and each other
Historical/Conceptual What Is Virtualization?
What Is Virtualization? (1 of 3) Most people have heard of “virtual reality” Simulation of a world or environment Software works with input from a headset to emulate a physical world Used in flight simulation and astronaut training Computer virtualization is similar Virtualization convinces an OS it is running on its own hardware
What Is Virtualization? (2 of 3) Figure 15.2 Virtual reality training (Image courtesy of NASA)
What Is Virtualization? (3 of 3) Figure 15.3 Using virtual reality to practice spacewalking (Image courtesy of NASA)
Meet the Hypervisor (1 of 4) Extra layer of sophisticated programming Manages complex interactions within the host Handles every input and output the OS requests Schedules tasks Allots time and resources
Meet the Hypervisor (2 of 4) A VMware Workstation hypervisor has functions of adding and removing: Virtual hard drives Virtual network cards Virtual RAM Virtualization provides virtualized BIOS and System Setup for every virtual machine Note (p. 461): The host machine allocates real RAM and CPU time to every running virtual machine. If you want to run a number of virtual machines at the same time, make sure your host machine has plenty of CPU power and, more importantly, plenty of RAM to support all the running virtual machines.
Meet the Hypervisor (3 of 4) Figure 15.4 Configuring virtual hardware in VirtualBox
Meet the Hypervisor (4 of 4) Figure 15.5 System Setup in VMware Workstation
Emulation vs. Virtualization (1 of 2) Virtualization segments host hardware into individual virtual machines A virtual machine acts like a host system (example: a host Intel system and a virtual machine that acts like the host Intel system) Emulation converts commands to and from the host into an entirely different platform
Emulation vs. Virtualization (2 of 2) Figure 15.6 Super Nintendo emulator running on Windows
Desktop Virtualization (1 of 5) Virtualization example VMware workstation on a Windows system Create a virtual machine running Ubuntu Linux Steps Obtain a copy of VMware Player (free) Select Create a New Virtual Machine Install the operating system; every VM requires a separate, legal copy of Windows
Desktop Virtualization (2 of 5) Figure 15.7 VirtualBox creating a new virtual machine
Desktop Virtualization (3 of 5) Figure 15.8 Starting the customization
Desktop Virtualization (4 of 5) Figure 15.9 Dynamically sizing the virtual hard drive
Desktop Virtualization (5 of 5) Figure 15.10 Selecting the installation media
Test Specific Why Do We Virtualize?
Why Do We Virtualize? Important things to keep in mind A single hypervisor on a single system can run as many virtual machines as its RAM, CPU, and drive space allow RAM is almost always the limiting factor A virtual machine that has been shut down is little more than a file sitting on a hard drive
Reasons for Virtualization (1 of 3) Power saving Reduce power requirements of multiple servers Hardware consolidation System recovery Simple to reload alternate copy of the OS Option to save a snapshot periodically Allowing quick return to that state at a later time
Reasons for Virtualization (2 of 3) System duplication VMs are files, so easily copied Can add new installations easily Research Aids software troubleshooting by being able to keep active copies of specific operating system versions on a single machine
Reasons for Virtualization (3 of 3) Figure 15.11 Lots of VMs used for research
Virtualization in Modern Networks
Bare-Metal Hypervisor (1 of 2) Products discussed so far offer virtualization over operating systems A bare-metal hypervisor is installed on top of hardware only—no other software Vmware introduced ESX in 2001 Supplanted by ESXi, a free hypervisor that replaces the host OS on a physical machine and provides a rudimentary interface
Bare-Metal Hypervisor (2 of 2) Figure 15-12 shows how we load our copy of ESXi: via a small USB thumb drive. Power up the server, the server loads ESXi off the thumb drive, and in short order a very rudimentary interface appears where we can input essential information, such as a master password and a static IP address. Figure 15.12 USB drive on server system
Hypervisors Bare-metal hypervisors on Intel-based systems VMware’s ESXi Microsoft’s Hyper-V Citrix’s XenServer Tech Tip: KVM (p. 466): There’s another open source Linux-based hypervisor you may run into—the Kernel-based Virtual Machine (KVM). The foundation of a modern OS, the kernel, handles very low-level interactions among hardware and software like task scheduling and the allotment of time and resources; as its name implies, KVM is closely integrated with Linux’s kernel. While it may not be as popular as the other hypervisors, the fact that it’s built into Linux means you could run into it almost anywhere.
Administering a Hypervisor (1 of 2) Typically administered using tools running on a client computer Used for occasional maintenance and administration Examples VMware’s vSphere Client Microsoft’s Hyper-V Manager
Administering a Hypervisor (2 of 2) Figure 15.13 VMware vSphere Client
Scaling Virtualization (1 of 2) Virtualization increases flexibility as the scale of an operation increases VMs can be distributed across hosts Adding more and more VMs needing different amounts of resources Increases the options for distributing them across the hosts to minimize unused resources
Scaling Virtualization (2 of 2) Figure 15.14 No vacancy on these hosts
Data Storage Storage is usually separate from the host Storage area network Server that presents a pool of hard disks over the network as any number of logical disks Reads and writes at the block level Acts like a virtual disk
Storage Area Networks Supporting infrastructure options for a SAN Fibre Channel (FC) Designed for high performance storage Internet Small Computer System Interface (iSCSI) Built on top of TCP/IP Performance can suffer, partly from processing frame headers; can use jumbo frames to reduce total number of frames moving through the network InfiniBand competes with FC and iSCSI Provides interconnect between storage arrays and servers
Network Attached Storage Dedicated fileserver with its own file system Uses hardware and software designed for serving and storing files Must perform file system work, reducing performance Exam Tip (p. 469): There is no difference between a virtual NIC and a physical NIC, once properly configured. Virtual NICs have MAC addresses just like a physical NIC. You set up everything about a virtual NIC: IP address, subnet mask, etc., exactly as you do with a physical NIC.
Virtual Networking Software running network devices can be run in a virtual machine Virtual networking components live on the hypervisor with the virtual servers they support
Virtual Switches (1 of 3) Addresses problems with multiple VMs needing access to the Internet However, a physical server only has a single NIC Two ways virtualization gives individual VMs valid IP addresses Bridge the NIC Connect with a virtual switch
Virtual Switches (2 of 3) Special software that does the same Layer 2 switching a hardware switch does Including features like VLANs When the NICs are bridged, the VMs and the host’s NIC are all connected to the virtual switch Cross Check: Switches (p. 486) You’ve read about switches since Chapter 2, Network Models, and again in Chapters 4 and 12, so check your memory now. What OSI layer do switches work? Why is that a trick question? How do you manage a switch?
Virtual Switches (3 of 3) Figure 15.16 Virtual switch
Distributed Switches (1 of 2) Virtual switches normally use a Web interface for configuration. Quick growth requires careful configuration for every new virtual switch added to existing virtual switches in a large, complex single virtual network.
Distributed Switches (2 of 2) Distributed switching; the centralized installation, configuration and handling of every switch in a network. Every hypervisor has some form of central configuration of critical issues for switches, such as VLAN assignment and trunking. Cross Check (p. 470): Switches You first read about switches in Chapter 1, “Network Models,” and again in Chapter 3, “Ethernet Basics,” and Chapter 11, “Advanced Network Devices.” Check your memory now. At what OSI layer do switches work? Why is that a trick question? How do you manage a switch?
Virtual Routers and Firewalls Virtual routers allow dynamic network reconfiguration Virtual firewalls can protect servers Useful for cases where installing a physical one would be hard, costly, or impossible Note (p. 470): If you’re interested in reading more about virtual routers and firewalls, a couple of interesting product lines to look at are Brocade’s Vyatta vRouter and Cisco’s Cloud Services Routers.
Software Defined Networking (SDN)(1 of 2) Traditional hardware routers and switches A control plane makes decisions about how to move traffic A data plane executes those decisions SDN eliminates the control plane from individual devices and replaces with a programmable controller Dictates how the entire network will behave
Software Defined Networking (SDN)(2 of 2) Figure 15.17 A controller controls traffic to all the routers and switches
The Cloud
Figure 15.18 Amazon Web Services Management Console To the Cloud Figure 15.18 Amazon Web Services Management Console
The Service-Layer Cake (1 of 2) Software as a service applications are designed for end users Delivered over the Web End users generally interact with the software “icing” of the service-layer cake Using Web applications such as Dropbox, Gmail, and Facebook
The Service-Layer Cake (2 of 2) Figure 15.19 A tasty three-layer cake
Infrastructure as a Service (IaaS) (1 of 3) IaaS providers use virtualization to minimize idle hardware, protect against data loss and downtime, and respond to demand spikes No longer need to purchase expensive, heavy hardware Amazon Web Services (AWS) is one provider Use requires OS knowledge and time to manage it
Infrastructure as a Service (IaaS) (2 of 3) Figure 15.20 Creating an instance on AWS EC2
Infrastructure as a Service (IaaS) (3 of 3) Figure 15.21 Amazon S3
Platform as a Service (PaaS) (1 of 2) Provides a platform: all the software needed to run Web applications No need to install or maintain software Heroku: one of earliest PaaS providers A simple interface reduces complexity of developing and scaling Web applications
Platform as a Service (PaaS) (2 of 2) Figure 15.22 Heroku’s management console
Software as a Service (SaaS) Web applications serve up software Monthly/yearly rate or for free End users do not own the software No need to regularly budget for upgrades Users trade simplicity for loss of strict control of data Relevant for intellectual property or business secrets
Cloud Delivery Models Types of cloud networks Public Private Community Hybrid
Public and Private Clouds Delivered through networks accessible by the general public Private Company develops an internal SaaS network, or outsources development of one
Community and Hybrid Clouds Created by a group of organizations with similar needs Hybrid Some combination of public, private, and community clouds with connections between them Services are integrated across the different types
Example: Use of a Hybrid Cloud Mario’s drone-delivered lunch service A private cloud to track orders and calculate routes Third-party weather application in a public cloud Flight-plan application to avoid other drones, helicopters, and aircraft in a community cloud