虚拟化概论

Download Report

Transcript 虚拟化概论

虚拟化概论
主要内容
• 虚拟化的定义
• 服务器虚拟化
• 其他虚拟化技术
2.1 虚拟化的定义
2.1.1 走进虚拟化
• 虚拟相对于真实,虚拟化就是将原本运行在真实环境上的
计算机系统或组件运行在虚拟出来的环境中。
软件虚
拟化
虚拟
内存
系统虚
拟化
基础设施虚
拟化
Java语
言虚
拟机
2.1.2 虚拟化的定义
Wikipedia:虚拟化是表示计算机资源的抽象方法,通过虚拟化可以
用与访问抽象前资源一致的方法访问抽象后的资源。这种资源的抽
象并不受实现、地理位置或底层资源的物理配置的限制
WhatIs.com:信息技术术语库:虚拟化是为了某些事物创造的的虚拟
版本,比如操作系统、计算机系统、存储设备和网络资源等
Open Grid Services Architecture: 虚拟化是为一组相似资源提供一个
通用的抽象接口集,从而隐藏属性和操作之间的差异,并允许通过
一种通用方式来查看并维护资源
IBM:虚拟化是资源的逻辑表示,它不受物理限制的约束
2.1.2 虚拟化的定义
• 三层含义:
– 虚拟化的对象是各种各样的资源
– 经过虚拟化后的逻辑资源对用户隐藏了不必要的
细节
– 用户可以在虚拟环境中实现其在真实环境中的部
分或者全部功能
2.1.3 虚拟化的常见类型
• 基础设施虚拟化
– 网络虚拟化:将网络的硬件和软件资源整合,向用
户提供虚拟网络连接
• 虚拟局域网Virtual LAN
• 虚拟专用网VPN
– 存储虚拟化:为物理的存储设备提供一个抽象的逻
辑视图,用户可以通过这个视图中的统一逻辑接口
来访问被整合的存储资源
• 基于存储设备的存储虚拟化
– 磁盘阵列技术(RAID)
• 基于网络的存储虚拟化
– 网络附加存储(NAS)、存储区域网(SAN)
2.1.3 虚拟化的常见类型
• 系统虚拟化
– 实现操作系统与物理计算机的分离,使得在一台物理计算机
上可以同时安装和运行一个或多个虚拟的操作系统
– 虚拟机:使用系统虚拟化技术,运行在一个隔离环境中、具
有完整硬件功能的逻辑计算机系统,包括操作系统和其中的
应用程序
• VMware Workstation
• IBM z系列和p系列服务器
2.1.3 虚拟化的常见类型
• 软件虚拟化
– 应用虚拟化
• 将应用程序与操作系统解耦合,为应用程序提供一
个虚拟的运行环境
– 高级语言虚拟化
• 解决可执行程序在不同体系结构计算机之间迁移问
题
2.2 服务器虚拟化
2.2.1 基本概念
• 服务器虚拟化将系统虚拟化技术应用于服
务器上,将一个服务器虚拟成若干个服务
器使用
2.2.2 典型实现
• 服务器虚拟化通过虚拟化软件向上提供对
硬件设备的抽象和对虚拟服务器的管理
– 虚拟机监视器(Virtual Machine Monitor)
– 虚拟化平台(Hypervisor)
2.2.2 典型实现
• 服务器虚拟化的两种类型:
寄宿虚拟化
原生虚拟化
是否依赖于宿主操作系统
完全
不
性能
低
高
实现的难易程度
易
难
2.2.3 关键特性
多实例 隔离性
封装性 高性能
2.2.4 核心技术
• 三种硬件资源的虚拟化:CPU、内存、设备和
I/O,还有虚拟机的实施迁移
• CPU虚拟化
– 把物理CPU抽象成虚拟CPU,任何时刻一个物理CPU
只能运行一个虚拟CPU的指令
– 在x86体系中实现虚拟化,需要在客户操作系统以
下加入虚拟化,来实现物理资源的共享
– 虚拟化x86体系结构问题的关键在于虚拟机里执行
的敏感指令不能直接作用于真实硬件之上,需要被
虚拟机监视器接管和磨叽
2.2.4 核心技术(CPU虚拟化)
• 解决x86体系结构下CPU虚拟化问题的软件方案
全虚拟化
• 采用二进制代码动态翻译
技术(敏感指令前插入陷
入指令)
• Microsoft Virtual PC ,
VMware WorkStation
半虚拟化
• 修改客户操作系统来解决
虚拟机执行特权指令的问
题
• Citrix Xen, VMware ESX
Server
• 硬件辅助虚拟化:在CPU中加入新的指令集和处
理器运行模式来完成与CPU虚拟化的相关功能
2.2.4 核心技术(内存虚拟化)
• 内存虚拟化:把物理机的真实物理内存统一管理,
包装成多个虚拟机的物理内存给若干虚拟机使用
• 虚拟机监视器需要维护物理机里的内存地址块和虚
拟机内部的连续内存块的映射关系,具备管理虚拟
机内存的机制
2.2.4 核心技术(内存虚拟化)
• 逻辑内存与机器内存之间的映射关系由虚拟化管理单元
来负责的,其实现方法有:
影子页表法
页表写入法
2.2.4 核心技术(设备与I/O虚拟化)
• 主流的设备和I/O虚拟化通过软件的方式实现
物理
设备
虚拟
设备
VMware 虚拟化
平台
虚拟
机
2.2.4 核心技术(设备和I/O虚拟化)
• 服务器虚拟化中每个虚拟机都是一个独立的逻
辑服务器,之间通信通过网络接口进行
• 每个虚拟机分配了虚拟的网络接口
2.2.4 核心技术(实时迁移技术)
• 实时迁移技术是在虚拟机运行过程中,将整个
虚拟机的运行状态完整、快速地从原来的宿主
机硬件平台迁移到新的宿主机硬件平台上
• 整个过程是平滑的,用户不会察觉
• 需要虚拟机监视器的协助
2.2.5 性能分析
• 服务器应用三种类型:
– 处理器密集型、内存密集型、I/O密集型
• 服务器虚拟化的性能测试报告
• 结论
– 服务器虚拟化会引入一定的系统开销
– 不同实现技术之间存在差异
– 大型机的服务器虚拟化技术具有优势
– 虚拟化环境的企业应用上线之前需进行针对应
用特点的实际测试调优
2.2.6 技术优势
降低运营
成本
降低能源
消耗
提高应用
兼容性
动态调度
资源
加速应用
部署
提升资源
利用率
提高服务
可用性
2.3 其他虚拟化技术
2.3.1 网络虚拟化
• 虚拟局域网
– 将一个物理网划分成多个虚拟局域网
– 将多个物理网划分到一个虚拟网中
• 虚拟专用网
– 允许远程用户访问组织内部的网络
2.3.2 存储虚拟化
• RAID(Redundant Array of Independent Disk)
– 多个物理磁盘以阵列的方式组合
– 为上层提供统一的存储空间
• NAS(Network Attached Storage)
– 文件系统与本地计算机解耦合
– 文件存储集中在连接到网络上NAS存储单元
– 存储共享在文件级别上
• SAN(Storage Area Network)
– 由磁盘阵列连接光纤通道组成
– 存储共享在磁盘区块级别上
2.3.3 桌面虚拟化
• 桌面虚拟化将用户的桌面环境与其使用的终端
设备解耦合
• 好处:
– 能够使用软件从集中位置来配置PC及其他客户端设
备
– 方便管理者对企业终端进行统一认证、管理和调配
资源
– 协助企业进一步简化轻量级客户端构架
– 可以对客户环境进行快照、备份
2.3.4 应用虚拟化
• 应用虚拟化把应用对底层的系统和硬件的依赖抽象出
来,从而解除应用与操作系统的和硬件的耦合关系
• 为应用程序提供了一个虚拟的运行环境
2.4 小结
• 虚拟化技术的概念、主要类型、优势、性
能和各种类别的虚拟化技术
• 下章我们介绍实时服务器虚拟化的关键技
术