为何CPU也要虚拟化?
由于X86指令架构限制,早期的纯软件的X86虚拟化技术比如vmware,其虚拟机没法执行一些特权指令,必须通过vmware的Hypervisor做翻译才能在x86的CPU上执行,
这大大降低了效率,随着虚拟化的日渐流行,x86 CPU厂商也开始为CPU加入这一特性,最终结果说白了就是虚拟机执行一些特权指令时直接执行,
再也不需要Hypervisor翻译执行,这既加快了虚拟机速度,也缓解了Hypervisor负担
–Intel 虚拟cpu技术 VT-x
–AMD虚拟cpu技术AMD-V
I/O虚拟化
–为什么I/O也要虚拟化?
CPU虽然虚拟化了,但还没完,性能另一个更大的影响在I/O,虚拟机上每一个I/O设备,如磁盘、网卡等等所有设备其实全部都是Hypervisor模拟出的设备,
这样的I/O性能自然较差了,只有让虚拟机可以直接访问I/O硬件时性能才能提高,于是,I/O虚拟化也出现了
–Intel的I/O虚拟化技术VT-d
–SR-IOV
–NPIV
操作系统层虚拟化
操作系统虚拟化是通过安装于OS之上的虚拟化软件将宿主机OS的内核和文件系统抽象化为一个个容器,并负责计算存储资源分配及容器安全隔离
–这个概念属于容易意会难以言叙,再举个不是很恰当的例子,一个DB服务器安装了一套Oracle DB软件,但可以创建多个实例,而这多个实例共享使用这些程序文件
–注意:这和P28的主机之上的Hypervisor容易让人混淆,区别在于主机上的Hypervisor是软件模拟一个裸机并在上面安装操作系统;
而操作系统虚拟化只是利用虚拟化软件把主机OS抽象成一个个容器
分类
–RISC
1. SUN SPARC Solaris Container
2. IBM POWER WLPR
3. HP Resource Partitions
–X86
1. Parallels Virtuozzo
2. OpenVZ(Virtuozzo的开源实现)
操作系统虚拟化优缺点
–优点:
1.部署快速;
2.同样的硬件能创造更多的操作系统虚拟化容器,成本低,方便应用测试开发环境和互联网主机
–缺点:
1.容器隔离安全性没有前面各种虚拟化好;
2.容器基于宿主机OS,不能虚拟出其他OS,也就是Solaris只能虚拟出Solaris的Container而不能是其他OS,Linux/Windows使用Virtuozzo亦然
应用层虚拟化
应用层为操作系统之上的层面,应用层的虚拟化主要表现为用户使用的程序不在本地,看得到摸不着
–说的通俗点,用户只管使用应用程序,才不管这个应用程序运行在本地还是远端的服务器上,只要保证应用程序是和用户的终端(ThickClient/ThinClient)+KVM(键鼠显示器)互动完成工作即可
分类
–应用交付虚拟化
应用交付这个虚拟化名称来源于Citrix,同样的该类技术鼻祖就是Citrix,曾经的MetaFrame到Presentation Server再到XenApp,名称在变本质不变,
简而言之就是将应用程序运行在服务器上通过专有协议远程交付到用户桌面上,代表产品就是Citrix XenApp/MicroSoft RemoteApp
–应用程序虚拟化
应用程序虚拟化也是近几年开始流行的一种应用虚拟化,其实指桌面以流(stream)方式下载并运行放置于专用服务器上的程序,
代表产品有VMware ThinApp/MicroSoft APP-V(Application Virtualization)/Symantec SVS(Software Virtualization Solution)
应用交付虚拟化简介
–通俗的讲,应用交付虚拟化就是让应用程序实际运行在服务器上,但通过远程图像传输协议将应用程序交互接口走网络传输到用户桌面上,
这种应用方式对用户是透明的,用户会感觉就是在本地桌面电脑上运行程序
–通常应用交付虚拟化多用于大企业位于各地的分支机构的IT应用,由于分支机构
–应用程序虚拟化是指通过应用程序虚拟化软件打包各种应用程序放置在服务器上,并发布应用程序的快捷方式到用户桌面,用户执行桌面的程序时,
本地电脑是没有安装这个程序的,用户桌面透过网络去该服务器上以“流”的方式下载部分到本地(内存或临时硬盘空间上)执行,这和在土豆网上点播视频流很相似
–应用程序虚拟化多用于桌面虚拟化整合方案或基于节省License成本的考虑
应用程序虚拟化图解
两种应用层虚拟化的区别
–应用交付虚拟化的程序是在后台服务器上执行的,前端桌面只是显示执行界面;而应用程序虚拟化的程序只是被打包放置在服务器上共享着,前端桌面通过下载并运行在本地
–最直观的判断,如果点击了桌面上一个word图标打开了word程序,再看本机windows进程如果有word进程则是运行在本地,如果没有则是运行在远端服务器上
前面是根据虚拟化技术处于不同的层面来做分层次讲解,从硬件的电气隔离层面到Hypervisor再到操作系统层面以及应用层面,
这是一个自下而上的从层次角度讲解各层虚拟化技术的差异,突出“虚拟化是什么”
–后面则是根据面向业务应用类型对虚拟化应用做分类讲解;主要体现各种虚拟化技术应用的方向,突出“虚拟化做什么
虚拟化应用分类
–服务器虚拟化
–桌面虚拟化
–应用虚拟化
–文件虚拟化
–网络虚拟化(Hypervisor)
–混合虚拟化
服务器虚拟化
–服务器虚拟化是指通过针对服务器的虚拟化技术,将服务器资源优化利用并降低成本,是市占率最高的虚拟化应用,
当前X86服务器虚拟化领军厂商是VMware,RISC/UNIX服务器虚拟化领军厂商是IBM
–更直白的说,通过Hypervisor技术,让服务器上同时可运行多个底层隔离互不干扰的操作系统实例来降低硬件成本,
再通过管理工具还能快速部署生成应用及提高可用性等等
–前面讲解Hypervisor时大部分都是针对服务器虚拟化的,此处不做详解
桌面虚拟化
–桌面虚拟化是为了替代传统的桌面PC的,通过桌面虚拟化软件及后台服务器的虚拟化资源,再利用网络及ThinClient等终端设备,为用户提供一个集中管理的虚拟桌面环境
–目前主流的桌面虚拟化产品主要有Citrix的XenDesktop及VMware的View
–桌面虚拟化实际资源主要包括:
–1.终端设备(显示器、鼠标、键盘、Thinclient等)
–2.桌面虚拟化管理软件
–3.服务器虚拟化管理软件
–4.后台服务器及存储资源等等
注意:
–桌面虚拟化并非独立存在的,桌面虚拟化的后台是服务器虚拟化,所以桌面虚拟化要依赖于服务器虚拟化
–而桌面虚拟化的技术体现更多在于前端对用户访问的分发控制、标准化和管理
–桌面虚拟化和早年古老的终端机是两码事,终端机是用一个纯终端设备加KVM通过串口直连在多用户多任务的服务器上共享利用资源
–桌面虚拟化和早年的无盘工作站是两码事,无盘工作站是利用网络下载服务器上的OS在本地执行(和应用程序流式应用倒有些相似)
文件虚拟化
–文件虚拟化(File Virtualization)是在文件服务器和访问这些文件服务器的客户机之间创建一个抽象层。文件虚拟化层管理跨服务器的文件和文件系统,
允许管理员向客户机提供一个所有服务器的逻辑文件挂接。这台服务器继续托管文件数据和元数据。
–文件虚拟化的核心是全局命名空间
–常见文件虚拟化产品体现形式:
1.分布式文件系统(DFS)
2.文件虚拟化设备或软件
3.集群NAS存储
分布式文件系统(DFS)
–以微软DFS举例,DFS服务器给用户提供一个全局命名空间和一个唯一的文件访问入口,用户访问进去看到不同的文件夹,
用户并不知道这些文件夹可能分散在多个不同的文件服务器,文件服务器对用户是透明的,用户只需要知道比如访问\\dfs.test.com 就有一切文件,
用户不知也不必知folder1在FileServer1.test.com上,folder2在FileServer2.test.com上
–DFS本身功能还会越来越丰富,比如它可以将一台文件服务器上的数据同步复制到另外一台服务器
文件虚拟化设备或软件
–F5的Acopia交换机
–EMC的Rainfinity FMA/VE
–以上这些本质都是软件,只是各家厂商做出不同方式的产品,有直接做成一个独立设备的,其实就是PC服务器+OS+文件虚拟化软件;
有直接提供软件安装各品牌兼容PC服务器的;有提供一个虚拟机环境导入VMware环境用虚拟机方式呈现,本质相同
–这些产品同样是提供全局命名空间,并整合市场上的主流NAS和文件服务器统一对用户提供文件服务,用户同样不知道访问的文件在哪个设备上,
在哪个地方;除此之外还提供更多如快照、迁移、分层管理等等高级功能
文件虚拟化好处
–整合各种NAS和文件服务器,方便管理
–提供全局命名空间给用户统一路径,简化操作
–扩展性更好,不用担心一台NAS或文件服务器空间不足,直接将新的NAS和文件服务器整合进来就等于扩展了NAS
–性能更好,扩展多个NAS点或文件服务器有效分担用户访问
–更多高级功能带来的扩展价值:如文件迁移、跨越NAS的快照
–SSO
- 大小: 66 KB
分享到:
相关推荐
10. **虚拟化未来趋势**:随着边缘计算、物联网和5G等新技术的发展,虚拟化技术将进一步向边缘设备扩展,以支持更分散、低延迟的应用场景。此外,容器和轻量级虚拟化技术的融合也可能成为未来的一个重要发展方向。 ...
### 虚拟化技术简介 #### 一、虚拟化技术概述 虚拟化技术是一种能够将物理资源(如服务器、存储设备、网络等)抽象化为逻辑资源的技术,从而实现资源的有效分配与管理。通过虚拟化,可以在单一硬件平台上运行多个...
《数据中心虚拟化技术权威指南》是一本全面深入探讨数据中心虚拟化的专业书籍,旨在帮助读者理解和掌握如何通过虚拟化技术优化数据中心的效率、灵活性和成本。虚拟化是现代信息技术中的核心概念,它允许在单一硬件...
### 计算机虚拟化技术及其应用解析 #### 一、引言 计算机虚拟化技术是一种将物理资源抽象成逻辑资源的技术,它能够使多份操作系统或其他软件在一台物理计算机上运行,彼此独立且互不影响。虚拟化技术的应用极大地...
VMWARE虚拟化技术面试题 本资源涉及VMWARE虚拟化技术的面试题,涵盖了虚拟化技术的多个方面,包括vSphere组件、虚拟机属性、虚拟化vCenter的优势、虚拟机迁移、模板与虚拟机的区别、虚拟机快照、分布式交换机体系...
QNX虚拟化技术文档中提到的知识点涵盖了QNX虚拟化技术的基础概念、应用目的、主要特性及对市场的意义。QNX虚拟化技术是面向嵌入式和实时系统设计的一套虚拟化解决方案,尤其在车载信息娱乐系统中有重要应用。 首先...
虚拟化技术是现代IT领域中的核心组成部分,它允许在单个物理硬件系统上运行多个独立的虚拟环境,每个环境称为虚拟机,可以运行不同的操作系统和应用程序。这种技术极大地提高了资源利用率,降低了运营成本,并提供了...
VMX,全称Virtual Machine eXtension,是VMware虚拟化技术中的核心组件,它提供了硬件级别的虚拟化支持。在VMX文件中,通常包含了一系列控制虚拟机与硬件交互的指令和配置。去虚拟化代码可能涉及到修改VMX配置,以...
### Microsoft虚拟化技术详解 #### 一、虚拟机的基本概念 **虚拟机(Virtual Machine, VM)**是一种通过软件方式实现的计算机系统,它能够模拟并运行完整的计算机硬件系统,从而实现在同一物理计算机上同时运行多...
10. **最佳实践**:为了充分利用去虚拟化插件,建议遵循最佳实践,如限制直通设备的数量,避免过多影响虚拟化层的稳定性,同时监控虚拟机和物理硬件的性能,确保系统健康运行。 综上所述,VMware去虚拟化插件是优化...
在当今多任务处理与高效能运算需求日益增长的时代背景下,硬件虚拟化技术成为了实现资源优化利用、提高系统灵活性的关键手段之一。对于许多用户而言,尤其是在需要安装运行虚拟机软件的场景下,开启硬件虚拟化的功能...
虚拟化的背景源于服务器资源的严重浪费——传统服务器通常仅使用了5-10%的硬件资源,这促使了虚拟化技术的快速发展,以实现更高效的资源管理和成本控制。目前,虚拟化已获得广泛认可,超过90%的企业正在考虑或已经...
### 华为敏捷交换机虚拟化技术详解 #### 概述 华为敏捷交换机作为新一代网络设备,其核心优势在于支持先进的虚拟化技术——横向虚拟化与纵向虚拟化。通过结合Agile Controller(敏捷控制器)的应用,实现了网络配置...
Hyper-V 是一种基于下一代服务器虚拟化技术的系统管理程序,它作为Windows Server 2008 的重要特性之一,允许用户在同一物理主机上运行多个虚拟机。这不仅提高了硬件资源的利用率,还能在单个物理机器上运行多种操作...
这使得 SLES 10 成为了第一款支持 Xen 虚拟化技术的企业级 Linux 服务器,支持 x86 架构下的 32 位和 64 位硬件。 #### 升级路径 - **从 SLES 10 SP1 升级至 SLES 10 SP2**:用户可以平滑地从 SLES 10 SP1 迁移到 ...
在未采用虚拟化技术的情况下,大多数服务器的平均利用率通常仅为10%-30%,这意味着大量的计算资源被闲置。通过实施虚拟化,可以显著提升这些资源的利用率,从而大幅降低成本并提高效率。 #### 惠普虚拟化技术的特点...
### IBM虚拟化技术详解 #### 一、IBM虚拟化技术概览 IBM作为全球领先的IT解决方案提供商,在虚拟化领域有着深厚的积累和技术底蕴。IBM虚拟化技术不仅覆盖了服务器、存储和网络等多个方面,而且能够帮助企业构建...
10. **未来发展趋势**:随着硬件对虚拟化的持续支持和软件优化,处理器虚拟化技术将更加高效且普及。未来的挑战包括提高虚拟化性能、简化管理、增强安全性以及适应新的计算模式,如边缘计算和容器化。 处理器虚拟化...
### VMware服务器虚拟化技术-v2.0 知识点详解 #### 一、VMware公司简介及产品线 - **VMware公司概述** VMware是一家全球领先的桌面到数据中心虚拟化解决方案提供商,自成立以来,凭借其创新的技术和服务,赢得了...
在这种情况下,你可能需要在软件设置中禁用相关选项,如Avast的沙箱功能,以允许其他应用使用虚拟化技术。 总的来说,开启BIOS中的虚拟化技术可以让你的电脑具备运行虚拟机的能力,从而在同一台设备上运行多个操作...