什么是虚拟化?

云计算 虚拟化
近年来,“虚拟化”这个概念可谓炙手可热。对虚拟化最常见的解释是:把一台服务器,虚拟成相互隔离的多台“虚拟服务器”,也叫“虚拟机”。

 [[380647]]

本文转载自微信公众号「无线深海」,作者蜉蝣采采 。转载本文请联系无线深海公众号。 

近年来,“虚拟化”这个概念可谓炙手可热。

对虚拟化最常见的解释是:把一台服务器,虚拟成相互隔离的多台“虚拟服务器”,也叫“虚拟机”。

真是咄咄怪事。脚踏实地,真刀真枪地干什么不好,非要搞这些虚头巴脑的东西做啥?

所谓空穴来风,事出必有因,我们且往下看。

什么是虚拟化?

话说英特尔创始人戈登·摩尔曾说过:“集成电路上可容纳的晶体管数目,约每隔两年便会增加一倍”。

换言之,就是:处理器的性能每隔两年翻一倍。

如此快速的发展,导致硬件的成本越来越低,甚至到了性能过剩的地步。这可怎么办,眼睁睁地看着资源闲置吗?

我们先看下面的一个案例。

某小公司想要搭建三个应用:邮件系统,文档管理,企业内网。到底要买多少服务器呢?

由于公司人少,负荷轻,性能上一台服务服务器就足够用了,但多个应用装在一起的话,不但资源调用可能起冲突,维护起来也麻烦。

但如果买三台服务器的话,又是狮子搏兔,严重浪费。这可怎么办?

既然一套服务器的硬件性能过剩,那么把它划分成三个逻辑上完全隔离的虚拟服务器,每个上面再各自安装操作系统,部署各自的应用不就行了吗?

这样一来,几台虚拟机虽然共用了硬件,但在应用看来,它们使用的CPU,内存,硬盘,网卡等资源又是完全独立的,互相隔离,互不冲突。

这就是虚拟化的奥义:分区,隔离,封装,独立于硬件。

因此,物理机,通常称作“宿主机(Host)”,而虚拟机,则也被称作“客户机(Guest)”。

这其中的含义非常直白,“客户机”是寄生在“宿主机”之上的虚拟之物,不能脱离宿主机独立存在。

虚拟化怎么实现?

实现虚拟化的核心就是引入相关功能的软件。这类软件就叫做Hypervisor,也就是“超级监督者”。

这些“超级监督者”拥有通天的本领,能全面接管服务器上的物理CPU,内存,硬盘,网卡等硬件,把它们抽象成逻辑资源池,并按需分给每个虚拟机。

这样一来,每个虚拟机都能独立使用自己的虚拟CPU,内存,硬盘,网卡,就像它们是物理实在的一样。

“超级监督者”实际上就充当的是物理硬件和逻辑资源之间沟通的桥梁,因此也被叫做“中间件”。

目前有两种虚拟化实现方式,一种叫做“寄居式虚拟化”,另一种则叫做“裸金属虚拟化”。

对“寄居式虚拟化”来说,物理硬件上是一层操作系统,操作系统上再安装虚拟化软件Hypervisor,通过虚拟化软件再划分出多个虚拟机,各个虚拟机上再安装各自独立的操作系统之后,就可以部署应用了。

可以看出,这种虚拟化方式存在两层操作系统,虚拟机的操作系统是寄居在物理机的操作系统之上,并由Hypervisor来在中间整合的,叫“寄居式虚拟化”实至名归。

对于“裸金属虚拟化”来说,物理硬件上不需要装操作系统,直接安装Hypervisor来接管硬件并提供虚拟化功能。Hypervisor直接运行于裸机之上,叫“裸金属虚拟化”也是非常直观的。

一般来说,寄居式虚拟化虽然效率低一点,但是Hypervisor却简单,易于实现。因此,对于个人及小规模虚拟机应用,使用寄居式虚拟化是比较方便快捷的。

裸金属架构的虚拟化不依赖于操作系统,非常灵活,但是Hypervisor虚拟层的开发难度大,价格也就更为昂贵,多用于大型企业级应用。

好了,本期的内容就到这里,希望对大家有所帮助。

 

责任编辑:武晓燕 来源: 无线深海
相关推荐

2013-09-24 10:19:38

网络虚拟化

2014-05-08 16:10:01

虚拟化容器的虚拟化

2013-09-22 09:27:45

网络虚拟化SDN软件定义网络

2016-08-04 14:53:34

服务器虚拟化网络

2023-10-07 15:50:20

2010-10-26 13:44:15

2010-08-19 21:29:13

存储虚拟化

2016-02-15 09:51:53

2023-09-03 17:05:20

虚拟机

2023-11-06 10:48:38

虚拟宇宙元宇宙

2017-04-26 17:08:55

存储虚拟化软件定义区别

2023-12-20 14:35:37

Java虚拟线程

2019-04-17 18:04:10

网卡虚拟化网络设备

2009-12-15 16:26:29

虚拟化技术

2013-05-08 15:41:11

2013-07-12 09:30:13

网络虚拟化虚拟化

2009-02-17 18:52:06

网络虚拟化路由系统数据中心

2015-02-05 11:28:22

Docker应用程序容器操作系统级虚拟化

2023-04-04 11:21:47

虚拟网络物理机器

2009-02-21 10:28:43

点赞
收藏

51CTO技术栈公众号