Hyper-V内存获取模式 内存权重

来源:http://wangshujiang.blog.51cto.com/225623/947817

分配方式

Hyper-V部署的虚拟机,通过“内存权重”模式为虚拟机临时分配内存。

内存权重设置可以让用户指定在内存资源短缺时,哪台虚拟机可以优先获取没存资源。Hyper-V动态内存技术总是不断地平衡内存的使用,但有时内存资源无法满足所有虚拟机的需求。或许启用过多的虚拟机,或者某台虚拟机运行特殊线程时可能会突然需要大量内存资源。当发生这种情况时,内存权重设置可以对虚拟机的优先级分类。低优先级的虚拟机在高优先级虚拟机内存分配未完成前无法获得内存资源。

如果主机提示进行虚拟内存设置,往往意味着内存资源很紧张。只有在可用内存耗尽时主机才会提示内存权重问题。因此在多数时间内,Hyper-V不会用到它。但是如果发生这种情况,所有缺少内存资源的虚拟机都需要把内存数据写入硬盘,性能会大幅降低。虽然可以通过设置优先级清单来保障高优先级的虚拟机,但是首先还是要配置好虚拟主机尽量不要用到内存权重。管理员可以设置“内存权重”,拖动滑动条即可改变虚拟机内存应用级别。如图所示。

注意,“内存权重”对于内存足够多的物理机(物理机指运行虚拟机的主机)而言没有任何作用。拥有充足物理内存的物理机可以为其上运行的所有虚拟机提供所需的所有内存,也就不需要动态内存技术。当出现物理内存不足的情况时,Hyper-V需要判断哪个虚拟机可以得到内存,那些不能得到。“内存权重”正是扮演了这个角色。

clip_image002

“内存权重”的作用

高优先级的虚拟机得到更多的内存。当虚拟机需要更多的内存时,高优先级的虚拟机可以第一时间得到所需的内存。

低优先级的虚拟机会被优先“夺走”内存。其实和和上面相同:当虚拟机需要更多内存时,Hyper-V会把低优先级的虚拟机内存“夺”过来给高优先级的虚拟机。

当启动一台“新”虚拟机时,所给予它的内存来源于已经运行的虚拟机占有的内存。具体分配多少,则要看要启动虚拟的内存权重的高低。如果运行一个混合的Hyper-V环境(开启动态内存模式、没有开启动态内存模式虚拟机混杂运行),设置内存权重的但没有开启动态内存的虚拟机会影响新启动虚拟所能得到的内存数量。开启动态模式的虚拟机会被夺走内存,没有开启动态模式的虚拟机则不会,这些由Hyper-V拿走的内存会根据虚拟机设定的内存权重分配给它们,而不考虑它们是否开启动态内存。

评论关闭。