第3章虚拟化技术_第1页
第3章虚拟化技术_第2页
第3章虚拟化技术_第3页
第3章虚拟化技术_第4页
第3章虚拟化技术_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章虚拟化技术CONTENTS01虚拟化概述02虚拟化关键技术03几种典型的虚拟化软件目录3.1虚拟化概述1虚拟化发展历程企业架构2虚拟化的几个重要概念3虚拟化的主要特性4虚拟化常见的架构类型虚拟化发展历程Part

011虚拟化发展历程2001年,VMware发布了第一个针对x86服务器的虚拟化产品;2003年,英国剑桥大学发布了针对x86虚拟化的开源虚拟化项目Xen,Intel在x86平台的CPU上支持硬件虚拟化技术VT;2006年,以色列的创业公司Qumranet发布KVM;2007年,德国Innotek公司开发VirtualBox虚拟化软件;2008年,微软在发布的WindowsServer2008R2中加入了Hyper-V;2010年,NASA发起了OpenStack云操作系统开源项目;2014年,Docker发布了第一个正式版本1.0;2015年,Kubernetes1.0发布,进入“云原生时代”;2017年,阿里X-Dragon神龙架构问世,它真正使用软硬融合、软硬件协同设计的模式。虚拟化的几个重要概念Part

022虚拟化的几个重要概念——虚拟化定义虚拟化是一种技术,它隐藏了系统、应用和终端用户赖以交互的计算机资源物理性的一面,把单一的物理资源转化为多个逻辑资源,可以利用以往被局限于硬件的资源来创建有用的IT服务。2虚拟化的几个重要概念——虚拟机定义虚拟化的核心是虚拟机,它是一种严密隔离的软件容器,每个虚拟机都是完全独立的,它可以运行自己的操作系统和应用程序,多台虚拟机可以部署在一台物理计算机上,因此仅在一台物理服务器或主机上就可以运行多个操作系统和应用。2虚拟化的几个重要概念——虚拟化管理器定义虚拟化层(Hypervisor)可将虚拟机与主机分离开来,根据需要为每个虚拟机动态分配计算资源。系统虚拟化的原理是通过使用VMM在一台物理机上虚拟和运行一台或多台虚拟机,真实的硬件平台和虚拟机则由VMM控制。VMM对下层主机的物理硬件资源(包括CPU、内存、磁盘、网卡、显卡等)进行封装和隔离,将其抽象为另一种形式的逻辑资源,然后提供给上层虚拟机使用虚拟化的主要特性Part

033虚拟化的主要特性分区隔离封装虚拟化常见的架构类型Part

044虚拟化常见的架构类型寄居虚拟化裸金属虚拟化操作系统虚拟化混合虚拟化架构概述Type-1又称为“裸金属架构”,是指虚拟机管理程序直接运行在宿主机上,一般情况下,这种架构是对硬件进行了优化,使得硬件能够支持某些虚拟化功能。Type-1典型的例子是Xen和EXSI。Type-1虚拟机负责管理所有的平台硬件资源,所有虚拟机均受虚拟机管理程序的控制。1Type-11Type-1Type-1架构概述Type-2也被称为“寄居架构”,在此架构下,虚拟机管理程序不是直接运行在宿主机物理硬件之上,而是作为宿主机操作系统之上的一个应用程序来运行,需要借助宿主机的操作系统来使用设备资源,KVM和VMWare就是Type-2虚拟机。Type-2型虚拟机依赖宿主机的设备资源完成虚拟化功能,Type-2型虚拟机与硬件设备无关,更容易运行在不同硬件平台上。2Type-22Type-2Type-2架构概述容器采用操作系统层虚拟化技术,使用沙箱机制,容器之间没有任何接口,容器性能开销极低。容器是轻量级的,它可以和其它容器共享主机操作系统的内核。客户不再需要将整个服务器专用于单个应用程序,这样就可以在单个服务器(或VM)上部署多个容器,只需要维护一个操作系统,就能够进行快速扩展和部署,不需要更多的服务器空间。3容器3容器容器架构3容器DockerDocker是一个开源的应用容器引擎,可以让开发者打包应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何计算机上。它将应用程序依赖项和基础架构分开。Docker镜像是一个轻量级的、可执行的软件包,它具有执行应用程序所需的全部条件,即代码、运行环境和系统库等。3.2虚拟化关键技术1CPU虚拟化2存储虚拟化3网络虚拟化4虚拟桌面4应用程序虚拟化虚拟化技术是一种调配计算资源的方法,它将应用系统的不同层面——硬件、软件、数据、网络、存储等,一一隔离开来,从而打破数据中心、服务器、存储、网络、数据和应用中的物理设备之间的划分,实现架构动态化,并集中管理和动态使用物理资源及虚拟化资源,以提高系统结构的弹性和灵活性。虚拟化技术具有通过虚拟化层为多个虚拟机划分服务器资源的能力;每个虚拟机可以同时运行一个单独的操作系统(相同或不同的操作系统),能够在一台服务器上运行多个应用程序;每个操作系统只能看到虚拟化层为其提供的虚拟硬件(虚拟网卡、CPU、内存等),以使它认为运行在自己的专用服务器上。概述3.2.1CPU虚拟化Part

01基本概念1CPU虚拟化基本概念基本概念CPU虚拟化技术就是单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。CPU虚拟化能够让虚拟机直接在处理器上执行大多数指令,让多个虚拟机运行时可以同时访问一个CPU。1CPU虚拟化基本概念x86保护模式下有4个特权等级Part

02全虚拟化2全虚拟化基本概念1998年VMware首先提出完全虚拟化技术,在虚拟机和硬件之间加入VMM负责管理虚拟机。使用完全虚拟化技术,客户机可以直接在VMM上运行而不需要对自身做任何修改。完全虚拟化的客户机具有完全的物理机特性,VMM会为客户机模拟出它所需要的所有抽象资源。2全虚拟化完全虚拟化架构2全虚拟化优缺点完全虚拟化的缺点是虚拟化加入的VMM层要消耗一定的资源,造成虚拟机在性能方面不如物理机。完全虚拟化的优点是操作系统无须进行任何修改即可运行在虚拟机中,兼容性好,有利于虚拟机的迁移,而唯一的限制是操作系统必须能够支持底层硬件;Part

03半虚拟化3半虚拟化基本概念半虚拟化技术是为了在不支持虚拟化的CPU上实现虚拟化。半虚拟化技术通过修改客户机操作系统的内核代码来对特权指令和敏感指令进行区分,当客户机操作系统执行敏感指令时,将敏感指令传递给虚拟机管理程序,让其对敏感指令进行模拟,从而达成虚拟化实现的必须条件。半虚拟化和全虚拟化类似,也需要在硬件和虚拟机之间加入虚拟机监视器,不同的是半虚拟化还需要修改虚拟机系统的内核。3半虚拟化半虚拟化架构3半虚拟化优缺点由于半虚拟化需要修改操作系统内核,因此只适用于开源系统。半虚拟化在修改系统内核的同时也降低了操作系统的兼容性,增加了迁移难度。半虚拟化中,由于VMM并没有虚拟所有的组件,因此开销较小,性能从理论上说比完全虚拟化更好。Part

04硬件辅助虚拟化4硬件辅助虚拟化基本概念采用硬件辅助虚拟化技术来实现完全虚拟化已成为现实,硬件虚拟化使VMM的实现更为精简,同时也可获得更好的性能。主流的硬件辅助虚拟化技术有IntelCPU硬件辅助虚拟化技术IntelVT-x/i和AMDCPU的硬件辅助虚拟化技术AMD-V。完全虚拟化和半虚拟化均通过软件实现,可以称为软件虚拟化。硬件辅助CPU虚拟化需要在底层硬件支持下进行虚拟化,仅有CPU生产厂家才可实现。4硬件辅助虚拟化两种模式访客模式(Guest

Mode)根模式(RootMode)3.2.2存储虚拟化Part

01存储虚拟化基本概念1存储虚拟化基本概念基本概念存储虚拟化对多个物理存储设备进行抽象、集成,进行统一管理,形成一个虚拟化的逻辑池,让用户对逻辑存储设备进行操作。存储虚拟化技术管理着下层不同的存储设备,对上层用户屏蔽不同设备的差异。Part

02存储的类型2存储的类型磁盘阵列中使用RAID技术,RAID将单独的磁盘组合形成一个逻辑硬盘,提高磁盘读写性能和数据安全性。在NAS结构中,存储设备独立地存在网络中,为其他网络节点提供服务,具有良好的开放性、共享性,易于部署和管理,对距离的限制少,适用于文件共享服务。DAS通过标准接口技术如SCSI与服务器直接相连,如服务器内部硬盘。RAID技术DAS技术NAS技术SAN技术SAN基于光纤通道传输介质,采用高速通道,在服务器、存储设备之间建立直接传送数据的专用存储网络,具有出色的可靠性和可扩展性,并且便于集中管理数据。Part

03存储虚拟化技术3存储虚拟化技术基于主机的存储虚拟化在主机的操作系统上部署存储虚拟化软件,将主机的物理磁盘当作逻辑卷进行使用和管理。应用和操作系统可以在逻辑卷上配置文件系统、数据库等。

3存储虚拟化技术基于存储网络的存储虚拟化在SAN中部署专用的虚拟化设备,实现存储设备的虚拟化。

3存储虚拟化技术基于存储设备的存储虚拟化通过光纤通道将多台磁盘阵列互联,选取其中性能和功能最好的一台作为存储控制器,通过该控制器实现各台磁盘阵列的管理和磁盘之间的数据迁移。

Part

04存储虚拟化作用4存储虚拟化作用在灾备方面,存储虚拟化技术通过卷镜像技术实现数据实时同步。两台存储设备上的LUN被虚拟化为一个虚拟卷,服务器读写操作的对象是卷,存储虚拟化设备把数据同时写入两台存储设备。当其中任意一台存储设备发生故障时虚拟卷仍能正常工作,当故障的存储设备被修复后,存储虚拟化设备会把增量数据同步到被修复的存储设备中。整个过程从服务器层面感知不到故障发生。在统一管理方面,存储虚拟化设备可将不同类型的磁盘阵列统一接管,磁盘阵列把LUN映射给存储虚拟化设备,存储虚拟化设备把存储资源池化,上层应用系统主机只需访问存储虚拟化设备,无须面对不同品牌的磁盘阵列,便于维护管理。系统管理员不需要给服务器安装不同品牌的存储多路径软件,不需要学习多种品牌存储设备的使用方法。形成资源池后可提高资源利用率。3.2.3网络虚拟化Part

01基本概念1基本概念基本概念网络虚拟化是一种基于用户实际需求来扩展网络服务的技术,可有效提升网络资源的利用效率。网络虚拟化是指将网络的硬件和软件资源整合,向用户提供虚拟网络连接的技术。它通过虚拟化技术对物理网络进行抽象并提供统一的可编程接口,将多个彼此隔离且具有不同拓扑结构的虚拟网络构建在同一个物理网络之上,并通过不同的虚拟网络为用户提供个性化的服务。网络虚拟化保留网络中原有的拓扑与层次结构、数据通道和相关服务,实现服务透明化。Part

02网络虚拟化特点2网络虚拟化特点ABCDE透明性网络虚拟化可以使业务的数据流使用同一套物理设备资源,终端业务用户无感知。

可靠性物理链路虚拟化捆绑技术提升了链路带宽和稳定性,为系统提供了稳定、可靠的通信链路。

可定制虚拟化后,可以根据用户需求进行网络带宽的分配、数据转发优先级的定义,实现差异性服务。

隔离性网络虚拟化可以实现不同业务之间相互完全隔离,不需要考虑不同逻辑网络使用的协议、兼容性、IP地址冲突之类的问题。安全性虚拟化是增加网络安全属性的必备手段,单套逻辑网络被病毒或恶意软件攻击并不影响整体虚拟化平台的工作。恶意软件造成的破坏均被限制在特定的会话或逻辑网络中。Part

03网络虚拟化技术3网络虚拟化技术网络虚拟化的统一管理网络交换设备虚拟化物理主机内部网络虚拟化网络虚拟化3网络虚拟化技术网络虚拟化技术研究主要集中在IP网络虚拟化领域网元虚拟化IP网络虚拟化123链路虚拟化隧道虚拟化3网络虚拟化技术网元虚拟化技术横向虚拟化技术横向虚拟化是指多个物理网络设备虚拟成1台逻辑网络设备,即N:1的虚拟化组合技术。网元设备在进行路由、数据处理时分为操控平面和数据转发平面。横向虚拟化技术根据控制平面的不同,可分为操控转发平面一体化和操控转发平面相互独立的方案。网络设备横向虚拟化控制平面和转发平面相互独立时,在稳定性、可靠性要求高的场景较堆叠系统具有明显优势。纵向虚拟化技术纵向虚拟化技术从纵向维度上支持系统异构扩展,即在以太逻辑虚拟设备上把一台盒式设备作为一块远程接口板加入主设备系统,以达到扩展I/O端口能力和集中控制管理的目的,可以满足数据中心虚拟化高密度接入并简化管理的目的。纵向虚拟化主要分为单宿主模式和双宿主模式。单宿主模式可以实现对单台交换机的端口扩展或实现对横向虚拟化系统端口扩展;双宿主模式主要在横向虚拟化基础上的端口扩展功能。3网络虚拟化技术链路虚拟化技术“多合一”技术指利用设备间物理上多条链路聚合成一条链路,如PPPMulti-link/IPTrunk和Ether-Channel。PPPMulti-link/IP-Trunk主要是应用在广域网链路上捆绑技术,而Ether-Channel则是应用在局域网以太链路上的捆绑技术。“一分多”技术指将一条物理链路划分成多条虚拟链路,如CPOS、以太子接口技术等。链路虚拟化主要包含广域网链路和局域网链路虚拟化两种类型。链路虚拟化主要目的是提高路由链路冗余性及链路带宽,为多个不同网络或者不同业务(时延敏感或吞吐量敏感等)提供所需链路资源。3网络虚拟化技术隧道虚拟化技术横向架构模式实现虚拟链路到物理链路的映射,这条虚拟路径可能会穿过多台路由器,类似于VPN等隧道虚拟化技术,主要目的是为了提供点到点业务服务和穿越公网的L2VPN/L3VPN服务。IPv6的应用普及,使得在IPv4和IPv6共存的过渡阶段,IPv6和IPv4网络交互也需要利用隧道技术。纵向架构模式将物理端口切分成若干虚拟隧道预留给虚拟网络,类似于ATM以太子接口技术,主要目的是为了端口时隙复用,提高端口隔离度,增强安全性。ATM技术通过使用VPI和VCI信头标签实现虚拟隧道功能。隧道虚拟化从结构上主要分为横向架构和纵向架构2种模式。3.2.4服务器虚拟化1基本概念基本概念服务器虚拟化是指在一台物理服务器上通过软件虚拟出多个虚拟服务器,各个虚拟服务器之间相互隔离,能够同时运行相互独立的操作系统,这些操作系统通过VMM来与硬件进行通信并进行管理。服务器虚拟化可以让CPU、内存、磁盘、I/O等硬件变成可以动态管理的资源池,从而提高资源的利用率、简化系统管理、实现服务器整合服务器虚拟化特性01一致性是指应用程序在虚拟服务器上运行的效果必须与在物理服务器上运行的效果一致0203高效性是指应用程序在虚拟服务器上运行所使用的性能代价相对较低,也就是要求虚拟服务器的大部分指令能够直接在物理服务器上运行可控性是指VMM能够完全控制物理服务器的资源,保证各虚拟服务器完全独立并相互隔离,同时能够根据需求回收已经分配给虚拟服务器的资源服务器虚拟化组成CPU虚拟化CPU虚拟化完成单CPU到多个逻辑CPU的并行内存虚拟化内存虚拟化完成虚拟机逻辑内存地址、伪内存硬件地址到实际内存硬件地址的转化;I/O虚拟化I/O虚拟化对输入输出硬件设备进行虚拟化,供多个虚拟机使用。3.2.5虚拟桌面1基本概念基本概念虚拟桌面是操作系统和应用程序的预配置映像,其中桌面环境与用于访问它的物理设备是分开的。用户可以通过网络远程访问虚拟桌面。任何端点设备(例如笔记本电脑、智能手机或平板电脑)都可用于访问虚拟桌面。虚拟桌面提供商在端点设备上安装客户端软件,然后用户可以与端点设备上的该软件进行交互。工作原理虚拟桌面提供商使用虚拟化软件从计算机硬件中抽象出操作系统。操作系统、应用程序和数据不是在硬件上运行的,而是在虚拟机上运行的。组织可以在本地托管虚拟机。在基于云的虚拟机上运行虚拟桌面也很常见。该技术已经发展到允许多用户共享一个运行多个虚拟桌面的操作系统。虚拟桌面优点ABCDE安全性虚拟桌面优于物理桌面的一点是安全性。数据存储在数据中心而不是单个端点计算机上,这样可以提高数据安全性。如果端点设备被盗,其不包含任何可供窃贼访问的数据成本由于虚拟桌面需要较少的物理设备和维护,因此其比物理桌面更具成本效益。计算能力虚拟桌面只需要瘦客户端,因为桌面的计算能力来自强大的数据中心。灵活性对于拥有灵活劳动力的组织,虚拟桌面具有明显的优势。IT管理员可以快速轻松地分配虚拟桌面,而无须为可能仅在短时间内需要虚拟桌面的用户配置昂贵的物理机。轻松管理IT部门可以从一个中心位置轻松管理大量分散在各处的虚拟桌面,使软件更新更快、更容易,因为可以一次性完成所有计算机的更新,而不是一台计算机。虚拟桌面优点如果数据中心的存储空间不足,用户将无法访问虚拟桌面。能够为多个虚拟桌面存储数据的大型存储环境可能会变得昂贵。网络连接不好会影响用户体验,如果没有网络连接,用户也将无法访问虚拟桌面。3.2.6应用程序虚拟化Part

01基本概念1基本概念基本概念应用程序虚拟化是将应用程序与操作系统解耦合,为应用程序提供了一个虚拟的运行环境。在这个环境中,不仅包括应用程序,还包括它所需要的运行时环境。从本质上说,应用虚拟化是把应用对低层的系统和硬件的依赖抽象出来,可以解决版本不兼容的问题。常见的杀毒软件中的沙箱模式就属于应用程序虚拟化,其能够满足程序运行,但与操作系统隔离,即使有病毒也不会对系统产生影响。典型的应用程序虚拟化还有JVM和PVM。Part

02JVM2JVMJVM本质是就是一个程序,当它在命令行上启动的时候,就开始执行字节码文件中的指令。Java语言的可移植性正是建立在JVM的基础上。任何平台只要装有针对于该平台的JVM,字节码文件(.class)就可以在该平台上运行。这就是“一次编译,多次运行”。JVM可以看作是一个运行中的虚拟机实例,当启动一个Java程序时,一台虚拟机实例也就产生了,当该程序关闭时,这台虚拟机实例也随之消失。如果一台计算机中同时运行n个Java程序,就会同时产生n个JVM实例,每个Java程序运行在其JVM实例中。2JVMJVM的系统结构2JVMJVM的具体实现过程3.3几种典型的虚拟化软件几种典型的虚拟化软件KVMKVM是一个独特的管理程序,其让Linux内核变成一个管理程序,通过让KVM作为一个内核模块来实现的,在虚拟环境下Linux内核集成管理程序将KVM作为一个可加载的模块,可以简化管理以及提升性能。KVM使用标准Linux调度程序、内存管理器和其他服务,将虚拟技术建立在内核上而不是替换内核。

几种典

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论