HCIA-虚拟化技术介绍
虚拟化
背景
- 传统架构下,App:Os:Phy=1:1:1,导致资源利用率低,解决方式部署多各应用程序,引入资源抢占问题,隔离性差
定义
- 硬件资源抽象化,实现同一物理机上独立,并行运行多个不同操作系统和应用程序的多台虚拟机
区别
-
虚拟化
- 抽象成资源池,上层操作系统与硬件解耦合
-
非虚拟化
- it资源独立,操作系统和硬件耦合
好处
- 提高硬件利用率
- 降低能耗,绿色节能
- 提到it运维效率,系统管理人员减少
- 操作系统和硬件解耦合
坏处
- 性能下降(多次资源调度会损耗计算资源)
相关概念
- Guest Os虚拟机操作系统
- Guest Machine 虚拟机
- Hypervisor=VMM 虚拟机监控机
- Host Os 物理机操作系统
- Host Machine 物理机
分类
-
I型虚拟化(裸金属)
-
在硬件上直接部署VMM(OS),如XEN,EXSI
- 性能好
-
-
II型虚拟化(宿主型)
-
在操作系统上部署VMM,如Kvm.FusionCompute,VMware Workstation,Virtaul Box
- 灵活性好
-
特点
-
分区
- 同一物理机上运行不同的虚拟机
-
隔离
- 虚拟机在运行中相互隔离互不影响
-
封装
- 虚拟机以文件的形式进行保存
-
独立
- 不需要对物理机做任何更改,即可完成虚拟机的迁移
Ring等级
-
Ring 0
- 操作系统内核,权限最高
-
Ring 1&2
- 应用于操作系统服务,权限次之
-
Ring 3
- 应用于普通用户程序,权限最低
CPU虚拟化
-
全虚拟化
-
虚拟机所有指令由VMM层捕获
- 加重VMM层负担
-
-
半虚拟化
-
修改虚拟机操作系统代码,把临界指令删除
- 只适用于开源操作系统
-
-
硬件辅助虚拟化
-
虚拟机所有指令由CPU去处理,如VT-X,AMD-V
- 目前广泛应用
-
内存虚拟化
- 通过VMM实现为虚拟机分配从零开始读的内存页
IO虚拟化
- 通过VMM实现为虚拟机分配虚拟磁盘,并且提高虚拟磁盘的性能(前后端驱动模型)
KVM虚拟化
-
QEMU模块
- 实现IO资源的虚拟化,调用KVM实现的计算资源
-
KVM模块
- 实现计算资源的虚拟化
-
Libvirt模块
- 管理KVM
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通