280 likes | 520 Views
虚拟化概论. 陆嘉恒 中国人民大学. 主要内容. 虚拟化的定义 服务器虚拟化 其他虚拟化技术. 2.1 虚拟化的定义 2.1.1 走进虚拟化. 虚拟相对于真实,虚拟化就是将原本运行在真实环境上的计算机系统或组件运行在虚拟出来的环境中。. 虚拟内存. Java 语言虚拟机. 2.1.2 虚拟化的定义. 2.1.2 虚拟化的定义. 三层含义: 虚拟化的对象是各种各样的资源 经过虚拟化后的逻辑资源对用户隐藏了不必要的细节 用户可以在虚拟环境中实现其在真实环境中的部分或者全部功能. 2.1.3 虚拟化的常见类型. 基础设施虚拟化
E N D
虚拟化概论 陆嘉恒 中国人民大学
主要内容 • 虚拟化的定义 • 服务器虚拟化 • 其他虚拟化技术
2.1 虚拟化的定义2.1.1 走进虚拟化 • 虚拟相对于真实,虚拟化就是将原本运行在真实环境上的计算机系统或组件运行在虚拟出来的环境中。 虚拟内存 Java语言虚拟机
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.4 核心技术 • 三种硬件资源的虚拟化:CPU、内存、设备和I/O,还有虚拟机的实施迁移 • CPU虚拟化 • 把物理CPU抽象成虚拟CPU,任何时刻一个物理CPU只能运行一个虚拟CPU的指令 • 在x86体系中实现虚拟化,需要在客户操作系统以下加入虚拟化,来实现物理资源的共享 • 虚拟化x86体系结构问题的关键在于虚拟机里执行的敏感指令不能直接作用于真实硬件之上,需要被虚拟机监视器接管
2.2.4 核心技术(CPU虚拟化) • 解决x86体系结构下CPU虚拟化问题的软件方案 • 硬件辅助虚拟化:在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.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 小结 • 虚拟化技术的概念、主要类型、优势、性能和各种类别的虚拟化技术 • 下章我们介绍实时服务器虚拟化的关键技术