Fuioncompute
fusioncompute的功能就是实现虚拟化。
虚拟化的本质:
1、分区:传统的服务器只能承载一种操作系统,服务器利用虚拟化功能实现多服务器的功能,将cpu、内存、存储、网络。进行分区利用。承载多操作系统,多任务。每个虚拟机都认为是自己独立硬件,独立使用。
2、隔离:每个虚拟机之间是隔离的。互不干扰,影响。
3、实现底层无影响:底层的硬件,是否是统一厂商,都不再考虑范围,不需要考虑硬件服务器的情况。
虚拟化的优点:
1、提高资源利用率:突破传统单台服务器单任务的形式。已单服务器多任务场景的方式,大大提高了资源的使用。
2、提高 IT 运维效率,系统管理人员减少
3、操作系统和硬件的解耦
虚拟化的三个方面:
1、计算虚拟化:cpu虚拟化、内存虚拟化、io虚拟化。
2、存储虚拟化:磁盘虚拟化
3、网络虚拟化:网卡虚拟化
计算虚拟化
1、cpu虚拟化:有三种模式:全虚拟化,半虚拟化、硬件辅助虚拟化。
×86服务器cpu指令有19是敏感指令,这对虚拟化命令下发有致命的影响,为避免这些敏感指令对虚拟化平台造成崩溃。提出三种解决方法。
全虚拟化:是指上层次虚拟机系统下发的命令全都由虚拟化层转发,敏感指令有虚拟化层进行修改后转发。这会造成虚拟化层很繁忙,影响性能。
半虚拟化:是指无害指令直接下发到底层硬件,敏感指令进行虚拟化层修改转发。但需要修改操作系统代码,大部分代码不公开无法进行修改。
硬件辅助虚拟化:直接使用支持虚拟化的硬件进行虚拟化功能。主流
内存虚拟化:虚拟机运行需要连续的内存空间,底层是按照连续内存提供给虚拟机利用率很低,所以使用提供映射的方式解决内存问题。虚拟机使用内存映射给物理内存,对于虚拟机访问的是连续内存,物理可以是不连续的。虚拟机系统通过访问虚拟化层访问物理内存空间。虚拟化层保存有虚拟机与物理的内存映射表。
io虚拟化:I/O 虚拟化的实现,和 x86 CPU 虚拟化一样,同样具有三种实现方式:全虚拟化、半虚拟化、硬件辅助虚拟化。一般是半虚拟化为主流。
半虚拟化:前端设备驱动将数据通过 VMM 提供的接口转发到后端驱动,后端驱动对 VM 的数据进行分时分通道进行处理。
硬件辅助虚拟化