DPDK系列之六虚拟化简介
创始人
2024-05-29 06:33:38
0

一、虚拟化

网上介绍虚拟化的历史的很多,这里只简述一下。虚拟化最早是从1959年提出的。随后IBM在大型机实现了最初的虚拟化技术。1999年出现的VMware Workstation,让广大的PC拥有者认识到了虚拟机的优势。随后各种虚拟机的技术开始不断的完善,硬件厂商和软件厂商不断协作,新的虚拟化技术不断涌现。但真正让虚拟化技术成长起来的,则是云的发展,云的发展过程中,最核心的一条就是虚拟化技术,只有虚拟化的技术才能让云更安全的、随心所欲的控制各种资源,而这些对云厂商来说,就是利润的来源。
说句夸张的话,没有虚拟化技术就没现在的云;没有现在的云,就不会有丰富的虚拟化技术。想得益彰吧。
那么什么是虚拟化技术呢?
《虚拟化技术发展编年史》中是这样定义:在计算机科学中,虚拟化技术(Virtualization)是一种资源管理(优化)技术,将计算机的各种物理资源(e.g. CPU、内存以及磁盘空间、网络适配器等 I/O 设备)予以抽象、转换,然后呈现出来的一个可供分割并任意组合为一个或多个(虚拟)计算机的配置环境。
维基百科中的解释和上面的解释基本一致。

二、x86平台的虚拟化

虚拟化技术的提出晚于x86架构的提出,这就造成一个重要的问题,即主流的x86平台在很长一段时间内是不支持虚拟化。这个东西非常好理解,举个例子,苏伊士运河建成时,只有几万吨的船能通行,那么后来新建立的超过十万吨的船就只难绕道非洲的好望角;随着后来的不断扩建,运河的动力从15万吨到25万吨不断的增长。
x86平台类似,一开始,芯片厂商的都不支持虚拟化,主流的Intel和AMD一直到2005年才解决了这一部分。也即解决了波佩克与戈德堡虚拟化需求:
1、等价性:一个运行于VMM下的程序,其行为应与直接运行于等价物理机上的同程序的行为完全一致
2、资源控制:VMM对虚拟资源进行完全控制
3、效率性:机器指令中经常使用的那一部分应在没有VMM干预下执行
在虚拟机技术中,提到Hypervisor这个概念,它是一个软件层或子系统,或者叫VMM(Virtual Machine Monitor,虚拟机监视器),用于管理全局物理资源,VMM和虚拟机关系可以类比为同操作系统与进程,VMM利用时分复用或者空分复用的办法将硬件资源在各个虚拟机之间进行分配。

三、虚拟化的分类

虚拟化技术一般可按对象分为三类:
1、平台虚拟化,即大家常见的计算机和OS的虚拟化
2、资源虚拟化(包含网卡虚拟化、GPU虚拟化、存储虚拟化及其它硬件虚拟化),也就是虚拟网卡、虚拟内在、虚拟存储等等
3、应用虚拟化,这个就更常见了,Java虚拟机、各种训练仪等等。
虚拟化中,Hypervisor一般分为两种类型:
1、原生Hypervisor
2、托管Hypervisor
虚拟化实现可以分为三类:
1、纯软件仿真
这种就是用软件来模拟系统,比如QEMU还有安卓的模拟器等。
2、虚拟化层翻译
它又分为全虚拟技术,这种非常多见,它基于指令的全翻译技术,比如VMware、VirtualPC、QEMU(KVM)等等;还有半虚拟化技术,这个典型的是Xen,一般人可能不太清楚,但一提AWS这个云平台几乎没有不知道。它底层就是从Xen开始起步的。当然现在已经有了极大的改进。最后就是基于硬件辅助的,也就是提到的INTEL和AMD的硬件虚拟技术解决了x86平台不支持此类技术的解决方案了。
3、容器技术
容器技术应该就更容易理解了,基于LXC和Docker的容器技术,是现在服务集群管理的重要的基础。搞后台开发的,要是不知道点Docker技术,都不好意思说话。容器可以理解成轻量级的虚拟化,它只能虚拟化部分OS。容器的优势在于它轻量化,更容易部署和管理。

四、虚拟化在云中的应用

为什么会有虚拟化?其实举个实际的例子就明白了,比如有些人使用电脑的需求是游戏,有些人是为了娱乐…而有的大型企业需要在一段时间使用大量的算力等等。如果每个人都按照最高上限来配置电脑或者服务器,那么一定会有大量的浪费出现。一个平时只办公,但偶尔玩了一下3D游戏的人配置了一台高配的电脑。那么其显卡资源一定是浪费了,CPU的算力一定是过剩的。同样,为了今年的需求配置了高算力的服务器群的企业,明年可能一年都用不到。一家两家不算什么,如果全国呢,全世界呢?个人还好说一些,企业的服务器群是需要有人维护的,这都是大量的日常刚性支出。
所以云就出现了,云的目的就是为了动态的调整资源的配置的使用。而云为了实现上述的目标,一个核心的技术就是虚拟化。可以在一台高性能的服务器上虚拟出几台甚至几十台普通性能的服务器,也可以根据情况反向为之。这也是为什么可以在云上有一百来块甚至几块钱一年的服务器了。

五、虚拟化的应用方向

目前主流的虚拟化的方向有以下几类:
1、CPU虚拟化
也就是人们常说的云计算的前提,它分为纯软件虚拟化和硬件虚拟化两类。前者限制较多,但硬件方案出来的较晚。
2、网络虚拟化
这个目前比较宽泛,但做为小白来说,可以认为是对常见的网卡网络进行虚拟化。常见的VPN就是一种网络虚拟化。
3、服务器虚拟化
这个就更好理解了,说直白一些就是虚拟出一个个虚拟机来做为服务器。这可是云厂商最关注的啊,毕竟用户付费一般是按机器来付费的。这个里面就包含容器技术。
4、存储虚拟化
这个还是基于网络应用的快速增长,数据的存储,或者说大数据提出的要求。起初大家认知的可能只是虚拟内在,后来又增加了外存的虚拟化等等。这些都叫做虚拟存储。

六、总结

从目前来看,虚拟化技术正处在一个快速发展的时期,特别在国内,国家强调国产升级中,大量的芯片技术在上层需要覆盖一层虚拟层。所以虚拟化技术需要认真的去学习和分析应用。在DPDK中,同样也需要处理相关的虚拟化部分,这个在后面会进行重点分析。

相关内容

热门资讯

iPhone手机怎么玩安卓系统... 你有没有想过,你的iPhone手机竟然也能玩安卓系统?没错,就是那个一直以来让你觉得遥不可及的安卓世...
平板删安卓系统更新不了,原因及... 最近是不是你也遇到了这样的烦恼?平板电脑上的安卓系统更新不了,是不是让你头疼得要命?别急,今天就来给...
苹果组装机安卓系统卡,卡顿背后... 你有没有发现,最近用苹果手机的时候,有时候系统有点卡呢?这可真是让人头疼啊!你知道吗,其实这背后还有...
安卓系统原生浏览器,功能与体验... 你有没有发现,每次打开手机,那个小小的浏览器窗口总是默默无闻地在那里,陪你浏览网页、搜索信息、看视频...
安卓机如何上苹果系统,跨平台体... 你是不是也和我一样,对安卓机和苹果系统之间的切换充满了好奇?想象你的安卓手机里装满了各种应用,而苹果...
安卓导入系统证书失败,原因分析... 最近在使用安卓手机的时候,你是不是也遇到了一个让人头疼的问题——导入系统证书失败?别急,今天就来给你...
安卓原生系统有哪些手机,盘点搭... 你有没有想过,为什么有些手机用起来就是那么流畅,那么顺心呢?这背后可大有学问哦!今天,就让我带你一起...
安卓系统关机了怎么定位,安卓系... 手机突然关机了,是不是有点慌张呢?别担心,今天就来教你一招,让你的安卓手机即使关机了,也能轻松定位到...
安卓系统游戏加速器,畅享无延迟... 你有没有发现,手机游戏越来越好玩了?不过,有时候游戏体验可能并不那么顺畅,是不是因为手机性能不够强大...
安卓4系统天气功能,尽在掌握 安卓4系统天气功能大揭秘在当今这个数字化的世界里,手机已经不仅仅是一个通信工具,它更是一个集成了各种...
安卓系统如何玩碧蓝幻想,攻略与... 你有没有想过,在安卓系统上玩《碧蓝幻想》竟然可以这么酷炫?没错,就是那个让你沉迷其中的二次元大作!今...
安卓系统搜不到图朵,图朵生成之... 最近是不是你也遇到了这样的烦恼?手机里明明有那么多美美的图片,但是用安卓系统搜索的时候,却怎么也找不...
魁族8刷安卓系统,系统升级后的... 哇,你知道吗?最近在安卓系统圈子里,有一个话题可是引起了不小的轰动,那就是魁族8刷安卓系统。你是不是...
微信正版安装安卓系统,畅享沟通... 你有没有想过,你的微信是不是正版安装的安卓系统呢?这可不是一个小问题哦,它关系到你的微信使用体验和隐...
电视能刷安卓系统吗,电视也能刷... 电视能刷安卓系统吗?揭秘智能电视的无限可能想象你家的电视不再只是用来观看节目的工具,而是变成了一个功...
安卓系统开通通知功能,畅享智能... 你知道吗?最近安卓系统更新后,新增了一个超级实用的功能——开通通知功能!这可是个大喜事,让咱们的生活...
苹果系统安卓爱思助手,系统兼容... 你有没有发现,手机的世界里,苹果系统和安卓系统就像是一对欢喜冤家,总是各有各的粉丝,各有各的拥趸。而...
安卓系统占用很大内存,揭秘内存... 手机里的安卓系统是不是让你感觉内存不够用,就像你的房间堆满了杂物,总是找不到地方放新东西?别急,今天...
安卓系统p30,安卓系统下的摄... 你有没有发现,最近安卓系统P30在手机圈里可是火得一塌糊涂呢!这不,我就来给你好好扒一扒这款手机的那...
siri被安卓系统进入了,智能... 你知道吗?最近科技圈可是炸开了锅,因为一个大家伙——Siri,竟然悄悄地溜进了安卓系统!这可不是什么...