HCIE-Cloud Computing面试学习笔记-云计算(3)

虚拟化的本质

1. 分区

分区意味着虚拟化层为多个虚拟机划分服务器资源的能力;每个虚拟机可以同时运行一个单独的(相同/不相同的)操作系统,使您能够在同一台服务器上运行多个应用程序;每个操作系统只能看到虚拟化层为其提供的“虚拟硬件”(虚拟网卡、CPU、内存等),以使它认为运行在自己的专用服务器上。

2. 隔离

虚拟机之间是相互隔离的。一个虚拟机的崩溃或者故障不会影响到同意服务器上的其他虚拟机。一个虚拟机中的病毒等与其他虚拟机相隔离,就像每个虚拟机都位于单独的物理机器上一样。
可以进行资源控制以提供性能隔离:您可以为每个虚拟机指定最大或者最小资源使用量,以确保某个虚拟机不会占用所有的资源而使得同一系统中的其他虚拟机无资源可用。
可以在单一机器上同时运行多个负载/应用程序/操作系统,而不会出现传统x86服务器体系结构的局限性所涉及到的问题(应用程序冲突、DDL冲突等)

3.封装

封装意味着将整个虚拟机(硬件配置、BIOS配置、内存状态、磁盘状态、CPU状态)储存在独立于物理硬件的一小组文件中。这样,就只需要复制几个文件就可以随时随地根据需要复制、保存和移动虚拟机。

4.相对于硬件独立

因为虚拟机是运行于虚拟化层的,所以只能看到虚拟化层提供的虚拟硬件;此虚拟硬件也同样无需考虑到物理服务器的情况;这样,虚拟机就可以在任何x86服务器上运行而无需进行任何修改。这打破了操作系统和硬件以及应用程序和操作系统/硬件之间的约束。

基于X86架构的CPU虚拟化如何实现?

  • 方法1:半虚拟化技术

修改Guest OS规避虚拟化漏洞,简化VMM软件
消除了半虚拟化和二进制翻译

< 关键点:经典CPU虚拟化,主要采用“特权解除”、“陷入-模拟”的方式>

为什么x86架构的CPU有这三种方法呢?其原因在于x86架构的CPU在非特权级别存在19条敏感指令。这三种方法就是为了解决这个问题,但请注意,特权级别指令也属于敏感指令,并不能把原因直接描述成解决x86架构下的敏感指令。
目前,x86架构的CPU虚拟化实现绝对的主流是“硬件辅助虚拟化”,即Intel-V和AMD-V。
在某些场合,描述硬件辅助虚拟化为全虚拟化,也就是此时需要注意,全虚拟化即可以是软件实现的全虚拟化,应对上述的方法2;也可以是硬件实现的全虚拟化,对应上述的方法3.

内存虚拟化如何实现?

内存虚拟化的核心,在于引入一层新的地址空间-客户机物理地址空间,客户机会以为自己运行在真是的物理地址空间中,实际上是通过VMM访问真实的物理地址。在VMM中保存客户机地址空间和物理地址空间的映射
2.内存置换:虚拟机长时间未访问的内存内容被置换到存储中并建立映射,当虚拟机再次访问该内存内容时再置换回来。
3.内存气泡:Hypervisor通过内存气泡将较为空闲的虚拟机内存释放给内存使用率较高的虚拟机,从而提高内存利用率。
<内存气泡的原理:Ballon Driver从源虚拟机申请可用内存页面,通过Grant Table授权给目标虚拟机,并更新虚拟机物理地址和机器地址映射表>

内存共享,写时复制
HCIE-Cloud Computing面试学习笔记-云计算(3)
如图所示,虚拟机之间共享统一物理内存空间(蓝色部分),此时的虚拟机只可以对内存做只读操作。当虚拟机需要对内存进行写操作(橙色部分),需开辟另一内存空间(多台虚拟机共享数据内容为零的内存页),并修改映射。

内存置换
HCIE-Cloud Computing面试学习笔记-云计算(3)
内存气泡
HCIE-Cloud Computing面试学习笔记-云计算(3)
系统主动回收虚拟机暂时不用的物理内存,分配给需要复用内存的虚拟机。内存的回收和分配均为系统动态执行,虚拟机上的应用无感知。整个物理服务器上的所有虚拟机使用的分配内存总量不能超过该服务器的物理内存总量

打开内存复用功能之后,由内存复用策略接管物理内存的分配,在内存不紧张时虚拟机可以使用全部物理内存。当出现竞争时,由内存复用策略为虚拟机实时调度内存资源,综合运用内存复用技术释放虚拟机空闲内存,为其他虚拟机的内存需求提供条件。
通过内存复用技术,可降低运营商或企业的成本。
当计算节点的内存数量固定时,可以提高计算节点的虚拟机密度。
当计算节点的虚拟机密度固定时,可以节省计算节点的内存数量。

内存复用依赖关系

1.如果集群下存在使用iNIC网卡的主机,则不能开启集群内存复用功能。
2.每个计算节点上运行的所有虚拟机的预留内存之和不能大于虚拟机使用的实际可用物理内存总和。
3.同时开启主机内存复用和Guest NUMA或者同时开启主机CPU资源隔离模式和Guest NUMA,会导致Guest NUMA功能失效。

内存复用怎么配置?

在同通过VRM管理界面的集群资源控制,对CNA主机的内存复用进行开/关操作。

内存复用的比值是多少?

华为虚拟化平台,通过智能复用以上三种技术可将内存复用比提升至150%。

内存复用的三项技术对主机性能有没有影响?

要视乎一台主机存在多少台虚拟机,并且每台虚拟机所分配的内存量大小超配内存量与物理内存量的比率。如果比率过高,虚拟机数量多过,业务过于繁忙,性能肯定有影响。

Third Day 继续在学习的路上前进!

版权声明:玥玥 发表于 2021-06-09 0:20:31。
转载请注明:HCIE-Cloud Computing面试学习笔记-云计算(3) | 女黑客导航