1. Virtualization Concept

advertisement
Virtualization Concept
Virtualization
 Real: it exists, you can see it.
 Transparent: it exists, you cannot see it
 Virtual: it does not exist, you can see it
 Gone: it does not exist, you cannot see it
Virtualization in Computing
Systems
 The process of providing another image (logical grouping or
subset) of underlying computing resources
 change computing system organization and profile
 Computing system: CPU, memory, network, hard disk, software,
user organization, ……
 Methods: HW/SW partitioning (space-sharing), time-sharing,
simulation, emulation, QoS, …
Why virtualization?
 Get a easy access interface and management interface
 Get more powerful resource profile
 Support multiple clients
Scenarios of Virtualization in
computing system
 Hardware virtualization
 Process level virtualization
 High level language virtualization
 Resource virtualization
 Application virtualization
OS level
Language level
Process level
Hardware/system
resource
 OS level virtualization
Application level
Hardware virtualization
 One server support multiple virtual machines
 VMM (virtual machine monitor) or hypervisor
 Granularity: virtual machine
 We will focus this topic later
Process level virtualization
 Provide the guest process with some runtime software
 User could access a platform independent runtime environment
 Granularity: process
 Example: java executable
High level language
virtualization
 Languages could be executed on multiple computing
architectures
 Supported by compiler and runtime environment
 Based on popular programming language: C, C++ and Fortran.
 Granularity: language
 Example: MPI, PVM
OS level virtualization
 A physical server is divided into multiple virtual servers
 Guest OS is the same with original one
 Supported by the OS kernel
 Granularity: OS
 Examples: Solaris Zones supports multiple guest OSes running
under the same OS (such as Solaris 10)
Application level
virtualization
 build application level virtualization in data management,
software library, programming interface, execution environment
 Granularity: application environment
 Example: Virtual Data System
Resource virtualization
 Organizing resource in a logical way
 Present an easy use/management interface or powerful
resource image
 Granularity: resource image
 Example: VPN, RAID, Cluster OS
 almost all the computing resource interfaces are virtualized:
memory, harddisk, network …
Philosophy of Virtualization
 Resource consolidation
 Multiple resource items -> one resource image
 Example: Computer Cluster, Grid, RAID
Philosophy of Virtualization
 Resource multiplexing
 One resource -> multiple resource instances
 Example: CPU, memory, VPN, Virtual machine
Download