10,虚拟化技术(下)


为何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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值