Sie sind auf Seite 1von 19


Virtualization Overview Types of Virtualization Using Virtualization for Network Architecture Design Using Virtualization for Service Development

Cloud LAB Architecture

Virtualization Overview
Run multiple OS on one physical machine Lowers operational costs, fewer servers to manage Maintain flexibility of choice in OS and software, Supports legacy and new apps Fully utilize server resources Support HA as shared data is cluster-ready for failover and redundancy

Isolate faults and security at the hardware level Dynamically control CPU, memory, disk and network resources per virtual machine Guarantee service levels

Encapsulate the entire state of the virtual machine in hardwareindependent files Save the virtual machine state as a snapshot in time Re-use or transfer whole virtual machines with a simple file copy Speeds deployment

Virtualization Overview
Benefits of virtualization
Server Consolidation
Increase server utilization and Reduce capital, hardware management, power, space, heat costs

Instant Provisioning
Easily create new virtual machines and reallocate resources (memory, processor, IO) between running virtual machines

Business Continuity (Backup and Redundancy) Test, Development, Demonstrations and Training Enterprise Desktop Management Legacy OS support and Legacy App Migration

Virtualization tradeoffs
There is a performance tradeoff
Applications that used to own the whole processor must now share it Hypervisor adds some runtime overhead too Full virtualization without hardware support means software emulation

More abstraction, more software layers, more complexity

More bugs and increase in management complexity

Increases impact of (unpredicted) hardware failure

Types of Virtualization
Different scope of virtualization
Desktop Virtualization (MS-VDI, MS-RDS, VMware VDI) Server Virtualization (VMware, MS Hyper V, Xen) Network Virtualization (VLAN, VRF, vNIC, VN-link/VNtag) Embedded Virtualization (Embedded Xen on ARM platforms) Storage Virtualization

Different levels of virtualization

Emulation/Hardware Emulation Full/Native Virtualization Para Virtualization OS-Level Virtualization Application-Level Virtualization

Types of Virtualization
Emulation/Hardware Emulation
The virtual machine simulates the complete hardware.
Allowing an unmodified "guest" OS for a completely different CPU to be run. Examples include PPC version of Virtual PC, QEMU, Dynamips.
App Guest OS App Guest OS App Guest OS Hardware VM2

Hardware VM1 Host OS Hardware

Full/Native Virtualization
the virtual machine simulates enough hardware to allow an unmodified "guest" OS (one designed for the same CPU) to be run in isolation. Typically, many instances can be run at once. Examples include VirtualBox, VMware, Microsoft Hyper-V.
App Guest OS App Guest OS Mgmt

Hypervisor Type II Host OS Hardware

Types of Virtualization
Para Virtualization
VM does not simulate hardware
Use special API that a modified guest OS must use Examples include VMware ESX Server, Xen.
App Modified Guest OS App Modified Guest OS Mgmt

Hypervisor Type I Hardware

OS-Level Virtualization
OS allows multiple secure virtual servers to be run Guest OS is the same as the host OS, but appears isolated, apps see an isolated OS Examples are Linux-VServer, OpenVZ, Solaris Containers, and FreeBSD Jails.
Virtual Private Server Virtual Private Server Virtual Private Server

Operation System Hardware

Types of Virtualization
Application-Level Virtualization
Application is gives its own copy of components that are not shared (E.g., own registry files, global objects) This virtual environment acts as a layer between the application and the operating system. Eliminates application conflicts and application-OS conflicts. Examples include the Sun Java Virtual Machine.
AP-1 VM-1 AP-2 VM-2 AP-3 VM-3

Operation System Hardware

Network Architecture Design

Network Device Simulator
Cisco Router and Switch (Dynagen/Dynamips) Juniper M/T series Router (VMware) Cisco PIX Firewall (Pemu)

Cisco Cisco Cisco Router PIX FW IDS

Cisco IDS (VMware)

Cisco GGSN (Dynagen/Dynamips)





Dynagen network interface configuration

S1/1 = R2 S1/1


Host Operation System

Windows XP (regedit)
C:\Program Files\Dynamips>dynamips e C:\getmac (winxp pro) f0/0 = NIO_gen_eth:\Device\NPF_{DE476606-C18A-44F0-A661-761CA5BAA700}

Intel Architecture

Linux (ifconfig )
f0/0 = NIO_linux_eth:eth0

Freebsd (ifconfig )
f0/0 = NIO_gen_eth:em0


Network Architecture Design

How to create lookback interface on windows XP
1. [] [] 2. [] [] 3. [] [] 4. [] [] 5. [] [] 6. [] [] 7. [] [Microsoft] 8. [] [Microsoft Loopback Adapter] [] []


Network Architecture Design

VMware Workstation team
Virtual Network Connection Bridged (default) (vmnet0) NAT (vmnet8)

Host only (vmnet1)

vmnet2~7,9 for customer config Virtual Machine
Delay 10 sec

LAN segments
Bandwidth Packet Loss

Virtual Network Editor

Host Virtual Network mapping DHCP setting NAT setting


Network Architecture Design

VMware and Dynamips Connection
Bridge Loopback 0 VMnet2 Dynamips
S 1/1 S 1/1 F 0/0 NI O gen eth Dev NP F

Dev NP F NI O gen eth F 0/0

VMware Et h Guest 1 JUNOS

VMnet4 R2 VMnet5 VMnet6 VMnet7

Eth Guest 2 Cisco IDS Eth1 Eth Guest 3 Linux




Network Architecture Design

Network Infrastructure Simulation
CPU MemoryHDNetwork Dynamips Operation System Hardware

Virtualization Scenarios
Solution Case Study for Training Prove Of Concept testing IPv6 environment speeds deployment Honeypots and Honeynet for security study

Service Development
Client Desktop Simulator
Windows 98 (Hyper-V, VMware) Windows 2000 (Hyper-V, VMware) Windows XP (Hyper-V, VMware) Windows XP sp2 (Hyper-V, VMware) Windows 7 (Hyper-V, VMware) Mac OS X 10.6 Snow Leopard (VMware)


Client MID Emulator

Android Phone (Qemu) Apple iPhone 3.1.2 Apple iPad 3.2

Android for x86 Tablet (VMware)

Chrome OS for x86 (VMware)

Server Farm Virtualization

Windows 2003 Server (Hyper-v, VMware) Cent OS (VMware) FreeBSD (VMware) Solaris (VMware)

Service Development
App Development Environment Trend
SDK + tools chain (compiler + debugger)
IDE (Editor + SDK + tools chain) IDE (Editor+ SDK + tools chain + emulator)
Eclipse + Android SDK + Phone Emulator (Qemu)


Xcode + iPhone SDK + iPhone Emulator or iPad Emulator

Qt + Symbian SDK + Phone Emulator

IDE + backend service

Ericsson SDS (IMS client + SIP server) Android DDMS (simulate incoming call or SMS or GPS)

IDE + multi-platform MS Virtual Studio 2010 (win 7, win phone 7, XBOX360)

Emulator Smart Phone API,


Service Development
Virtualization for Testing
Simplified Administration and Quick Deployment Portability (Moving / Copying VMs)
For troubleshooting and recreating defects Load-balancing

Duplicating / recreating intermittent problems run a version in a sandbox before deployment

Scenarios for Development

Web site and Mobile Web site design
have multiple OS's and browsers and see how the website looks in different environments

Setting up a complex test lab

Testing multi-tier applications (3-tier) Isolated networks Simulating multiple clients
Small Http Server

Rapid setup and tear-down of test environments

Consistent configurations Ability to easily roll-back changes Automation of VM setup and software installation
Web Server Log


Cloud LAB Architecture

You can run Dynamips and Dyngen on the same system, dynagen provides a management CLI for listing devices, starting, stopping, reloading, suspending, resuming, and connecting to the consoles of virtual routers. Dynagen
Dynamips Server

It can work in a client / server mode, with Dynagen running on your workstation communicating with Dynamips running on a back-end server.
Nvram Nvram Disk3 Nvram Disk2 Nvram Disk1 Disk0 Bootflash Bootflash Ghost(4) Ghost(3) Bootflash Bootflash Ghost(2) Ghost(1) Dynagen

Dynamips Server


Cloud LAB Architecture

Dynagen can also control multiple Dynamips servers simultaneously for distributing large virtual networks across several machines.
Nvram Bootflash Ghost(1)

Dynamips Server Dynamips Server Dynamips Server Dynamips Server Dynamips Server


Nvram Disk1 Nvram Disk2 Nvram

Bootflash Ghost(2) Bootflash Ghost(3) Bootflash


Nvram Disk4

Bootflash Ghost(5)