虚拟化 背景 概念 及其分类整理
虚拟化
背景
- 虚拟化前
- 每台主机一个操作系统
- 软硬件紧密结合
- 同一主机上运行多个应用程序会遭遇冲突
- 系统的资源利用率低
- 硬件成本高昂而且不够灵活
- 虚拟化后
- 打破了操作系统和硬件的相互依赖
- 通过封装到虚拟机的技术,管理操作系统和应用程序为单一的个体
- 强大的安全和故障隔离
- 虚拟机是独立于硬件的,它能在任何硬件上运行
概念
通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同事运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机工作效率。
虚拟化技术的分类
全/半虚拟化技术
- 全虚拟化技术
- 半虚拟化/准虚拟化技术
完全虚拟化技术又叫硬件辅助虚拟化技术,最初所使用的虚拟化技术就是全虚拟化(Full Virtualization)技术,它在虚拟机(VM)和硬件之间加了一个软件层-Hypervisor,或者叫做虚拟监控器(VMM)
- hypervisor 直接运行在物理硬件之上 - KVM(开源项目)
- hypervisor 运行在另一个操作系统中 - QEMU 和 WINE (QEMU,WINE内和支持,不需要硬件支持)
半虚拟化技术,也叫准虚拟化技术。它就是在全虚拟化的基础上,把客户操作系统进行修改,增加了一个专门的API,这个API可以将客户操作系统发出的指令进行最优化,即不需要Hypervisor耗费一定的资源进行翻译工作,因此Hypervisor的工作负担变得非常的小,因此整体的性能也有很大的提高。
架构层次分类
- 寄居架构:在操作系统上安装和运行虚拟化程序,依赖于主机操作系统对设备的支持和物理资源的管理
- 裸金属架构:在硬件上直接安装虚拟化软件,再在骑上安装操作系统和应用,依赖虚拟层内核和服务器控制台进行管理。
- 寄居架构
优点:简单,便于实现
缺点:安装和运行应用程序依赖于主机操作系统对设备的支持
案例:GSX Server, Vmware Server, Workstation
- 裸金属架构
优点:虚拟机不依赖于操作系统,可以支持多种操作系统,多种应用,更加灵活
缺点:虚拟层内核开发难度大
举例:VMWare ESX Server