版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第十讲第十讲 项目三项目三 虚拟化技术(虚拟化技术(4 4)主讲主讲 赵伟艇赵伟艇项目三内容项目三内容n 1. 虚拟化技术虚拟化技术n 2. 存储虚拟化存储虚拟化n 3. 服务器虚拟化服务器虚拟化n 4. 网络虚拟化网络虚拟化n 5. 桌面虚拟化桌面虚拟化n 6. 应用虚拟化应用虚拟化n 7. 虚拟化技术的发展虚拟化技术的发展服务器虚拟化服务器虚拟化n 将服务器物理资源抽象成逻辑资源,让一台服务器变成几台甚至上百台将服务器物理资源抽象成逻辑资源,让一台服务器变成几台甚至上百台相互隔离的虚拟服务器,不再受限于物理上的界限,而是让相互隔离的虚拟服务器,不再受限于物理上的界限,而是让CPU、内存、内
2、存、磁盘、磁盘、I/O等硬件变成可以动态管理的等硬件变成可以动态管理的“资源池资源池”,从而提高资源的,从而提高资源的利用率,简化系统管理,实现服务器整合,让利用率,简化系统管理,实现服务器整合,让IT对业务的变化更具适应对业务的变化更具适应力。力。n 使软件和硬件相互分离,即在操作系统与硬件之间加入一个虚拟化软件使软件和硬件相互分离,即在操作系统与硬件之间加入一个虚拟化软件层层VMM(Virtual Machine Monitor),通过空间上的分割、时间上,通过空间上的分割、时间上的分时以及模拟,将服务器物理资源抽象成逻辑资源,向上层操作系统的分时以及模拟,将服务器物理资源抽象成逻辑资源,
3、向上层操作系统提供一个与它原先期待一致的服务器硬件环境提供一个与它原先期待一致的服务器硬件环境VM(Virtual Machine 虚拟机虚拟机),使得上层操作系统可以直接运行在虚拟环境上,并允许具有,使得上层操作系统可以直接运行在虚拟环境上,并允许具有不同操作系统的多个虚拟机相互隔离并发运行在同一台物理机上,从而不同操作系统的多个虚拟机相互隔离并发运行在同一台物理机上,从而提供更高的提供更高的IT 资源利用率和灵活性。资源利用率和灵活性。服务器虚拟化服务器虚拟化n 服务器虚拟化主要分为三种:服务器虚拟化主要分为三种:“一虚多一虚多”、“多虚一多虚一”和和“多虚多多虚多”。 “一虚多”是一台服
4、务器虚拟成多台服务器,即将一台物理服务器分割成多个相互独立、互不干扰的虚拟环境。 “多虚一”就是多个独立的物理服务器虚拟为一个逻辑服务器,使多台服务器相互协作,处理同一个业务。 “多虚多”的概念,就是将多台物理服务器虚拟成一台逻辑服务器,然后再将其划分为多个虚拟环境,即多个业务在多台虚拟服务器上运行。5服务器虚拟化的意义服务器虚拟化的意义服务器虚拟化架构服务器虚拟化架构寄居架构寄居架构裸金属架构裸金属架构服务器虚拟化的内容服务器虚拟化的内容n CPU虚拟化虚拟化n 内存虚拟化内存虚拟化n I/O虚拟化虚拟化n 存储虚拟化存储虚拟化经典的经典的CPUCPU虚拟化方法虚拟化方法n 现代计算机体系结
5、构一般至少有两个特权级(即用户态和核心态,现代计算机体系结构一般至少有两个特权级(即用户态和核心态,x86有四个特权级有四个特权级Ring0 Ring3)用来分隔系统软件和应用软件)用来分隔系统软件和应用软件。那些只能在处理器的最高特权级(内核态)执行的指令称之为特权。那些只能在处理器的最高特权级(内核态)执行的指令称之为特权指令,一般可读写系统关键资源的指令(即敏感指令)绝大多数都是指令,一般可读写系统关键资源的指令(即敏感指令)绝大多数都是特权指令(特权指令(X86存在若干敏感指令是非特权指令的情况)。如果执行存在若干敏感指令是非特权指令的情况)。如果执行特权指令时处理器的状态不在内核态,
6、通常会引发一个异常而交由系特权指令时处理器的状态不在内核态,通常会引发一个异常而交由系统软件来处理这个非法访问(陷入)。统软件来处理这个非法访问(陷入)。n 经典的虚拟化方法就是使用经典的虚拟化方法就是使用“特权解除特权解除”和和“陷入陷入-模拟模拟”的方式,的方式,即将即将Guest OS运行在非特权级,而将运行在非特权级,而将VMM运行于最高特权级(完运行于最高特权级(完全控制系统资源)。解除了全控制系统资源)。解除了Guest OS的特权级后,的特权级后,Guest OS的的大部分指令仍可以在硬件上直接运行,只有执行到特权指令时,才会大部分指令仍可以在硬件上直接运行,只有执行到特权指令时
7、,才会陷入到陷入到VMM模拟执行(陷入模拟执行(陷入-模拟)。模拟)。“陷入陷入-模拟模拟” 的本质是保证的本质是保证可能影响可能影响VMM正确运行的指令由正确运行的指令由VMM模拟执行,大部分的非敏感模拟执行,大部分的非敏感指令还是照常运行。指令还是照常运行。X86X86的虚拟化漏洞的虚拟化漏洞n 因为因为X86指令集中有若干条指令是需要被指令集中有若干条指令是需要被VMM捕获的敏感指令,但捕获的敏感指令,但是却不是特权指令(称为临界指令),因此是却不是特权指令(称为临界指令),因此“特权解除特权解除”并不能导致并不能导致他们发生陷入模拟,执行它们不会发生自动的他们发生陷入模拟,执行它们不会
8、发生自动的“陷入陷入”而被而被VMM捕捕获,从而阻碍了指令的虚拟化。具体获,从而阻碍了指令的虚拟化。具体X86下的敏感指令分类大致如下下的敏感指令分类大致如下:1、访问或修改机器状态或虚拟机状态的指令。、访问或修改机器状态或虚拟机状态的指令。2、访问或修改敏感寄存器或存储单元的指令,比如访问时钟寄存器和中、访问或修改敏感寄存器或存储单元的指令,比如访问时钟寄存器和中断寄存器。断寄存器。3、访问存储保护系统或内存、地址分配系统的指令。(段页之类)、访问存储保护系统或内存、地址分配系统的指令。(段页之类)4、所有、所有I/O指令。指令。其中的其中的(1)和和(4)都是特权指令,在内核态下执行时会自
9、动产生陷阱被都是特权指令,在内核态下执行时会自动产生陷阱被 VMM 捕获,但是捕获,但是(2)和和(3)不是特权指令,而是临界指令。部分临界指不是特权指令,而是临界指令。部分临界指令会因为令会因为Guest OS的权限解除执行失败,但是却不会抛出异常,所的权限解除执行失败,但是却不会抛出异常,所以不能被捕获,如以不能被捕获,如(3)中的中的VERW 校验写指令。校验写指令。X86X86的虚拟化方法的虚拟化方法n由于由于x86指令集中有十多条敏感指令不是特权指令,因此指令集中有十多条敏感指令不是特权指令,因此x86无法使用经典的虚拟化无法使用经典的虚拟化技术实现完全虚拟化。鉴于技术实现完全虚拟化
10、。鉴于x86指令集本身的局限,长期以来针对指令集本身的局限,长期以来针对x86的虚拟化实现的虚拟化实现大致分为两派:大致分为两派:Full virtualization派和派和Para virtualization派。两派区别主要派。两派区别主要在对非特权敏感指令的处理上。在对非特权敏感指令的处理上。nFull派采用的是动态的方法,即:运行时监测,捕捉后在派采用的是动态的方法,即:运行时监测,捕捉后在 VMM 中模拟;中模拟;nPara派则主动进攻,将所有用到的非特权敏感指令全部替换,这样就少掉了大量的陷派则主动进攻,将所有用到的非特权敏感指令全部替换,这样就少掉了大量的陷入入- 上下文切换上
11、下文切换 - 模拟模拟 - 上下文切换过程,获得了大幅的性能提升。上下文切换过程,获得了大幅的性能提升。n硬件辅助虚拟化技术为硬件辅助虚拟化技术为CPU增加了新的执行模式增加了新的执行模式root模式,可以让模式,可以让VMM运行在运行在root模式下,而模式下,而root模式位于模式位于Ring 0的下面,特权和敏感指令自动在的下面,特权和敏感指令自动在hypervisor上执上执行。行。vCPUvCPU调度分配机制调度分配机制n 从虚拟机系统的结构与功能划分可以看出,客户操作系统与虚拟机监视器共从虚拟机系统的结构与功能划分可以看出,客户操作系统与虚拟机监视器共同构成了虚拟机系统的两级调度框
12、架,如图所示是一个多核环境下虚拟机系同构成了虚拟机系统的两级调度框架,如图所示是一个多核环境下虚拟机系统的两级调度框架。客户操作系统负责第统的两级调度框架。客户操作系统负责第2 级调度级调度,即线程或进程在即线程或进程在VCPU 上的调度(将核心线程映射到相应的虚拟上的调度(将核心线程映射到相应的虚拟CPU上)。虚拟机监视器负责第上)。虚拟机监视器负责第1 级调度级调度, 即即VCPU在物理处理单元上的调度。两级调度的调度策略和机制不在物理处理单元上的调度。两级调度的调度策略和机制不存在依赖关系。存在依赖关系。VCPU调度器负责物理处理器资源在各个虚拟机之间的分配调度器负责物理处理器资源在各个
13、虚拟机之间的分配与调度与调度,本质上即把各个虚拟机中的本质上即把各个虚拟机中的VCPU按照一定的策略和机制调度在物理按照一定的策略和机制调度在物理处理单元上可以采用任意的策略来分配物理资源处理单元上可以采用任意的策略来分配物理资源, 满足虚拟机的不同需求。满足虚拟机的不同需求。VCPU可以调度在一个或多个物理处理单元执行(分时复用或空间复用物理可以调度在一个或多个物理处理单元执行(分时复用或空间复用物理处理单元)处理单元), 也可以与物理处理单元建立一对一固定的映射关系(限制访问也可以与物理处理单元建立一对一固定的映射关系(限制访问指定的物理处理单元)。指定的物理处理单元)。 内存虚拟化内存虚
14、拟化n 因为因为VMM (Virtual Machine Monitor) 掌控所有系统资源,因此掌控所有系统资源,因此VMM 握有整个内存资源,其负责页式内存管理,维护虚拟地址到机器地址的映射关握有整个内存资源,其负责页式内存管理,维护虚拟地址到机器地址的映射关系。因系。因Guest OS 本身亦有页式内存管理机制,则有本身亦有页式内存管理机制,则有VMM的整个系统就比正的整个系统就比正常系统多了一层映射:常系统多了一层映射:A. 虚拟地址(VA),指 Guest OS 提供给其应用程序使用的线性地址空间;B. 物理地址(PA),经 VMM 抽象的、虚拟机看到的伪物理地址;C. 机器地址(M
15、A),真实的机器地址,即地址总线上出现的地址信号;n 映射关系如下:映射关系如下:Guest OS: PA = f(VA)、VMM: MA = g(PA)VMM 维护一套页表,负责PA 到MA 的映射。Guest OS 维护一套页表,负责VA 到PA 的映射。实际运行时,用户程序访问VA1,经Guest OS 的页表转换得到PA1,再由VMM 介入,使用VMM 的页表将PA1 转换为MA1。页表虚拟化技术原理页表虚拟化技术原理n 普通普通MMU(Memory Management Unit,内存管理单元,内存管理单元)只能完只能完成一次虚拟地址到物理地址的映射,在虚拟机环境下,经过成一次虚拟地
16、址到物理地址的映射,在虚拟机环境下,经过 MMU 转转换所得到的换所得到的“物理地址物理地址”并不是真正的机器地址。若需得到真正的机并不是真正的机器地址。若需得到真正的机器地址,必须由器地址,必须由VMM 介入,再经过一次映射才能得到总线上使用的机介入,再经过一次映射才能得到总线上使用的机器地址。如果虚拟机的每个内存访问都需要器地址。如果虚拟机的每个内存访问都需要VMM 介入,并由软件模拟介入,并由软件模拟地址转换的效率是很低下的,几乎不具有实际可用性,为实现虚拟地地址转换的效率是很低下的,几乎不具有实际可用性,为实现虚拟地址到机器地址的高效转换,现普遍采用的思想是:由址到机器地址的高效转换,
17、现普遍采用的思想是:由VMM根据映射根据映射f和和g生成复合的映射生成复合的映射fg,并直接将这个映射关系写入,并直接将这个映射关系写入 MMU。n 当前采用的页表虚拟化方法主要是当前采用的页表虚拟化方法主要是MMU类虚拟化(类虚拟化(MMU Paravirtualization)和影子页表,后者已被内存的芯片辅助虚拟化)和影子页表,后者已被内存的芯片辅助虚拟化技术所替代。技术所替代。MMUMMU类虚拟化类虚拟化n 基本原理:基本原理:当Guest OS创建一个新的页表时,会从它所维护的空闲内存中分配一个页面,并向VMM注册该页面,VMM会剥夺Guest OS对该页表的写权限,之后Guest
18、OS对该页表的写操作都会陷入到VMM加以验证和转换。VMM会检查页表中的每一项,确保他们只映射了属于该虚拟机的机器页面,而且不得包含对页表页面的可写映射。后VMM会根据自己所维护的映射关系,将页表项中的物理地址替换为相应的机器地址,最后再把修改过的页表载入MMU。如此,MMU就可以根据修改过页表直接完成虚拟地址到机器地址的转换。内存芯片辅助虚拟化内存芯片辅助虚拟化n 内存的芯片辅助虚拟化技术是用于替代虚拟化技术中内存的芯片辅助虚拟化技术是用于替代虚拟化技术中软件实现的软件实现的“影子页表影子页表”的一种芯片辅助虚拟化技术的一种芯片辅助虚拟化技术,其基本原理是:,其基本原理是:GVA(客户操作系
19、统的虚拟地址)(客户操作系统的虚拟地址)- GPA(客户操作系统的物理地址)(客户操作系统的物理地址)- HPA(宿(宿主操作系统的物理地址)两次地址转换都由主操作系统的物理地址)两次地址转换都由CPU硬件硬件自动完成(软件实现内存开销大、性能差)。以自动完成(软件实现内存开销大、性能差)。以VT-x技术的页表扩充技术技术的页表扩充技术Extended Page Table(EPT)为例,首先)为例,首先VMM预先把客户机物理地址转换预先把客户机物理地址转换到机器地址的到机器地址的EPT页表设置到页表设置到CPU中;其次客户机修中;其次客户机修改客户机页表无需改客户机页表无需VMM干预;最后,
20、地址转换时,干预;最后,地址转换时,CPU自动查找两张页表完成客户机虚拟地址到机器地自动查找两张页表完成客户机虚拟地址到机器地址的转换。使用内存的芯片辅助虚拟化技术,客户机址的转换。使用内存的芯片辅助虚拟化技术,客户机运行过程中无需运行过程中无需VMM干预,去除了大量软件开销,干预,去除了大量软件开销,内存访问性能接近物理机。内存访问性能接近物理机。I/OI/O设备虚拟化设备虚拟化nVMM 通过通过I/O虚拟化来复用有限的外设资源,其通过截获虚拟化来复用有限的外设资源,其通过截获 Guest OS对对I/O设备的设备的访问请求,然后通过软件模拟真实的硬件,目前访问请求,然后通过软件模拟真实的硬
21、件,目前I/O设备的虚拟化方式主要有三种:设设备的虚拟化方式主要有三种:设备接口完全模拟、前端后端模拟、直接划分。备接口完全模拟、前端后端模拟、直接划分。n1.设备接口完全模拟:设备接口完全模拟:即软件精确模拟与物理设备完全一样的接口,即软件精确模拟与物理设备完全一样的接口,Guest OS驱动无须修改就能驱动这个虚拟设备。驱动无须修改就能驱动这个虚拟设备。优点是没有额外的硬件开销,可重用现有驱动程序。优点是没有额外的硬件开销,可重用现有驱动程序。缺点是为完成一次操作要涉及到多个寄存器的操作,使得缺点是为完成一次操作要涉及到多个寄存器的操作,使得 VMM 要截获每个寄存器访问并进行相应的模拟,
22、导要截获每个寄存器访问并进行相应的模拟,导致多次上下文切换,性能较低。致多次上下文切换,性能较低。n2.前端后端模拟:前端后端模拟:VMM 提供一个简化的驱动程序(后端提供一个简化的驱动程序(后端, Back-End),),Guest OS中的驱动程序为前端中的驱动程序为前端 (Front-End, FE),前端,前端驱动将来自其他模块的请求通过与驱动将来自其他模块的请求通过与Guest OS间的特殊通信机制直接发送给间的特殊通信机制直接发送给Guest OS的后端驱动,后端驱动在的后端驱动,后端驱动在处理完请求后再发回通知给前端(处理完请求后再发回通知给前端(Xen即采用该方法)。即采用该方
23、法)。优点是由于基于事务的通信机制,能在很大程度上减少上下文切换开销,没有额外的硬件开销。优点是由于基于事务的通信机制,能在很大程度上减少上下文切换开销,没有额外的硬件开销。缺点是需要缺点是需要VMM实现前端驱动,后端驱动可能成为瓶颈。实现前端驱动,后端驱动可能成为瓶颈。n3.直接划分:直接划分:即直接将物理设备分配给某个即直接将物理设备分配给某个 Guest OS,由,由Guest OS直接访问直接访问I/O设备(不经设备(不经 VMM),目前与此相关的技术),目前与此相关的技术有有IOMMU(Intel VT-d, PCI-SIG 之之 SR-IOV 等),旨在建立高效的等),旨在建立高效
24、的I/O虚拟化直通道。虚拟化直通道。优点是直接访问减少了虚拟化开销,缺点是需要购买额外的硬件。优点是直接访问减少了虚拟化开销,缺点是需要购买额外的硬件。 项目实践项目实践n 项目项目3案例案例4:H3C云资源管理n 实践内容:实践内容:部署计算资源:主机池、集群、主机、虚拟机部署网络资源:虚拟交换机部署存储资源:主要是共享存储计算资源概念云资源主机池集群主机集群主机虚拟机集群启用了HA集群未启用HA主机未加入集群虚拟机虚拟机模板由虚拟机克隆或转换而成,供组织使用主机虚拟机CAS计算资源:主机池、集群、主机和虚拟机主机:一台物理服务器就是一台主机集群:由物理主机和虚拟机组成的计算资源集合主机池:
25、用于组织和管理数据中心内的集群与主机虚拟机:建立在主机上通过软件模拟的具有完整硬件系统功能的、运行在完全隔离环境中的完整计算机系统。虚拟机主机池默认没有主机池,需要手动增加不同的二层网络建议分别单独分配主机池集群建议不要将主机直接添加到主机池,都添加到集群根据需要开启集群的HA和DRS功能集群组播地址和组播端口需要保证唯一性。不同集群组播地址相同时,组播端口至少相差2(自动生成,不建议修改)HA功能用于检测虚拟机故障,对集群中运行的虚拟机提供快速修复功能。检测到虚拟机故障将自动重启,最大程度降低停机时间虚拟机启动优先级分为高级、中级、低级。HA重启动作将优先执行启动优先级较高的虚拟机单台虚拟机
26、启动优先级选择“默认”时,则默认取所在集群设置的启动优先级集群主机SSH方式将主机加入CAS平台管理主机名需要符合客户规范要求。长度最大支持255个字符,允许大小写字母、数字和连接符。不能包含下划线、不能以数字开头。(“HZ-CAS01-CVK01”)主机主机默认生成两个本地存储池:defaultpool和isopool主机默认生成一个虚拟交换机,即管理网的虚拟交换机虚拟机虚拟机与主机类似,它们主要的区别在于虚拟机并不是由电子元器件组成的,而是由一组文件构成的。每台虚拟机都是一个完整的系统,它具有CPU、内存、网络设备、存储设备和BIOS,因此操作系统和应用程序在虚拟机中的运行方式与它们在普通
27、物理机上的运行方式没有任何区别虚拟交换机简介虚拟交换机(vSwitch):虚拟机(VM)内部的交换机主要用于完成VM与外部网络、VM与VM间的流量交换。这种交换机称为虚拟以太网交换机(vSwitch)操作系统虚拟网卡操作系统虚拟网卡操作系统虚拟网卡存储网络上行链路端口管理网络业务网络虚拟交换机物理网卡物理服务器物理交换机外部网络虚拟交换机简介操作系统虚拟网卡操作系统虚拟网卡操作系统虚拟网卡存储网络管理网络物理服务器物理交换机外部网络虚拟交换机(vSwitch):多个网络可在同一个虚拟交换机中共存,也可以存在于多个单独的虚拟交换机中同一个虚拟交换机可以绑定一个物理端口也可以绑定多个物理端口,同时
28、可以做动态聚合(LACP)物业务网络虚拟交换机上行链路端口 理网卡物理网卡VNET3VNET2VNET1vSwitch1eth1VMvSwitch0eth0邻接物理交换机VMVNET0VMVMvSwitch内部结构2种接口VNET X:下联口,连接虚拟机eth X:物理端口(上联口),连接外部网络物理服务器VNET3VNET2VNET1vSwitch1eth1物理服务器VMvSwitch0eth0邻接物理交换机VMVNET0VMVM虚拟交换机工作流程外部报文走向:上联口收到报文,vSwitch查看MAC地址表查到MAC地址项,从相应端口转发没有相应MAC地址项,广播VNET3VNET2VNET1vSwitch1eth1物理服务器VMvSwitch0eth0邻接物理交换机VMVNET0VMVM虚拟交换机工作流程虚拟
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 法式铠甲守护安全
- 触电测试题及答案
- 传真机测试题及答案
- 2026苏教版六年级数学上册第七单元第4课时《练习十四》教案
- 护理查对的法律法规
- 护理人文关怀理念
- 护理病区护理不良事件分析与处理
- 护理护理信息技术:数字化时代护理信息技术的应用
- 2026年头部媒体发稿平台综合实力研究:15万+媒体资源矩阵规模优势资源整合能力的行业标杆实证-头部媒体发稿平台深度测评与未来趋势
- 护理风险识别与防范评估
- 2026-2030中国蒸汽眼罩行业深度调研及投资前景预测研究报告
- 根据新版事故类型(27 类)编制的生产安全事故应急预案
- 企业法务合同风险排查指南
- (2026版)国开电大法学本科知识产权法历年期末考试总题及答案
- 自身免疫性胃炎诊疗专家共识
- 国开电大2520外国文学专题(试卷号11308)近5年期末真题题库+完整答案解析(2021-2025)
- 2026内蒙古乌海银行客户经理社会招聘15人笔试备考题库及答案详解
- 2026学年广东省中山市二年级数学期末通关高频考点卷详细参考解析详细答案和解析
- 基层医疗健康服务场景化设计
- 鲜风生活生鲜即时配送
- SH∕T 3237-2025 石油化工建筑物抗爆评估技术标准
评论
0/150
提交评论