P2-虚拟化技术概览
前言
上一篇文章已经介绍了云计算的一些基础概念,让我们对云计算有了一定的了解。那么,云计算中强大的功能从何而来?它又是如何实现的呢?
虚拟化技术
最初印象
在日常生活中,我们可能已经听说过,或者说已经在使用虚拟化技术了,下图是我们日常使用非常广泛的一个虚拟机软件:VMware Workstation:
通俗的讲法就是,虚拟机可以在一台具备操作系统的物理机上,运行一台或多台和物理机一样具有操作系统的虚拟主机。这可能是我们最早对虚拟机的一个理解了。
虚拟化概念
在虚拟化中,我们需要了解一些重要的概念以及专业术语:
OS:操作系统
Guest OS:虚拟机操作系统
Virtual Machine(VM):虚拟机
Hypervisor:虚拟化软件层/虚拟机监视器(也称VMM,Virtual Machine Monitor)
Host OS:运行在物理机之上的OS
Host Machine:(主机)物理机
在虚拟化中,OS必不可少。OS是Operating System的缩写,即操作系统。OS具有以下作用:
- 接管硬件;
- 调度和分配软硬件资源;
- 为OS软件进行升级、补丁更新;
- 对主机的生命周期进行管理;
- 提供人机交互界面;
虚拟化特点
- 分区:通过虚拟化技术,对主机资源(计算、存储、网络)进行逻辑划分;
- 隔离:虚拟化技术可以保证虚拟机跟虚拟机、虚拟机跟主机进行隔离。例如,某一台虚拟机宕机了或者进程未响应,并不会影响到主机或其他虚拟机的运行;
- 封装:虚拟机可以封装为文件,以文件的形式存在,便于虚拟机在不同的主机之间迁移;
- 独立:每个虚拟机都是独立个体;
虚拟化类型
根据硬件和虚拟化层的层级关系,虚拟化类型分为以下几种。这里我们来简单介绍一下:
- I型:裸金属型虚拟化,直接在硬件上部署Hypervisor,在Hypervisor上运行虚拟机。典型代表有VMware ESXi、Citrix Xen、Hyper-v、KVM、FusionCompute(基于KVM)。I型虚拟化尽可能地使用所有的硬件资源,减少不必要的性能损耗,运行较为稳定。缺点是实现方式较为复杂,需要针对硬件和系统内核进行开发。
- II型:宿主型虚拟化(也可称为寄居虚拟化),在硬件上部署HostOS,在HostOS上部署相关的应用软件实现虚拟化,可以理解为将Hypervisor寄生于HostOS上而实现的虚拟化技术。典型代表有VMware Workstation、VirtualBox。II型虚拟化也是我们日常在Windows平台上使用最广泛的虚拟化类型之一。通常,II型虚拟化是针对OS进行开发的,缺点是额外性能开销大。
- 操作系统虚拟化(应用级虚拟化):一般指的是容器技术,流行的代表有LXC、Docker等;
- 混合虚拟化:通过嵌入到系统内核的虚拟化驱动模块,来实现虚拟化,典型代表是KVM。华为FusionCompute就是一套底层基于KVM的虚拟化软件;
总结
新手可能会觉得这篇文章非常枯燥无味,这个很正常,本人也是这么熬过来的。毕竟理论是实践的基础,在搞懂了虚拟化的概念后,后续学习将会变得更加顺利。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 时雨小栈!
评论