一个菜鸟对虚拟化的理解

作为一个刚接触桌面虚拟化不就的菜鸟来说说我对虚拟化的理解,这里所说的虚拟化是指计算机系统级别的虚拟化,即为实现虚拟计算机(Virtual Machine)的虚拟化。

正常情况下,计算机系统主要由三个部分组成,如下所示:

一个菜鸟对虚拟化的理解

Hypervisor/VMM可以由一下两种不同的分类:

  1. Hypervisor可能是一个专用的软件,直接运行再UEFI/BIOS环境中,不需要运行再OS上,这叫Type 1型Hypervisor;

  2. Hypervisor可能是一个通用OS(如Windows或Linux)上运行的软件和一些内核模块,这种需要借助OS的解决方案叫做Type 2型Hypervisor。

对物理计算机进行虚拟化,然后再让其他OS运行在虚拟的硬件平台上,说到底都是为了省钱,主要表现在以下几个方面:

  1. 提高硬件资源的利用率,特别是对服务器而言。因为调查显示,很多物理服务器其实大部分事件都是比较空闲,消耗大量的能源,只是在某些时间段会比较繁忙,而且很可能一台物理服务器只跑某个单一的业务。如果能够让多个虚拟的服务器跑在同一台物理服务器上,则能够充分利用该物理服务器的硬件资源,从而减少物理服务器的数量。

  2. 减少管理和维护的成本。对于运行于虚拟环境的机器而言,由于其之下还有Hypervisor/VMM软件层,管理员可以充分利用该软件层对虚拟机进行更高效、更快捷的管理,如批量、高效地部署OS,对批量虚拟机的状态进行监控等,采用虚拟化解决方案能够很大地减少管理员的维护和管理成本。

目前很多公司都在说往云上迁移,其实都是基于这两个目的。

虚拟化解决方案并不是一个简单的软件,很多时候它是一整套的解决方案,它的相关软件和模块需要部署到整个系统的各个部分。

对于Type 1型的Hypervisor,它需要先在裸机上部署Hypervisor,然后再在该Hypervisor上创建虚拟硬件,接着在虚拟硬件行安装OS,最后可能还需要在安装的OS里面安装相应的驱动才能达到最佳效果。

而对于Type 2型Hypervisor,则需要先在物理裸机上正常安装OS,然后在OS安装Hypervisor相关软件,这些软件可能只是应用程序,也可能包含了用于加速或者硬件模拟的内核模块,然后在Hypervisor提供的应用程序中创建虚拟机,即先创建虚拟机的硬件部分,然后类似于在物理机上安装OS一样,在模拟的硬件上安装OS。

这些虚拟化解决方案软件部分应该叫做software stack,因为它是一整套软件相互配合工作的,不是一个简单的应用程序,所以部署起来可能会有一定的难度。

而在硬件方面,各大芯片厂商也是积极为芯片添加虚拟化功能,特别是Intel,为x86 CPU添加了大量的虚拟化功能,如VMX,VT-d,VT-g等等,从而大大提升虚拟化的效率(软件模拟的效率在硬件功能面前就是渣渣)。

虚拟化水很深,相当于把整个计算机系统,在另外一个平台上再实现一遍,对计算机的硬件、固件、操作系统、驱动和应用程序都有要求。希望自己在头发掉光之前能把这些东西捋顺

一个菜鸟对虚拟化的理解

来源:河马虚拟化

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年6月2日
下一篇 2018年6月2日

相关推荐