none
Hyper-V启动内存、最大内存自动调整原理 RRS feed

  • 问题

  • 环境:

    一台Hyper-V物理服务器(Windows Server 2008 R2 企业版),上面分别安装有2台虚拟机(Windows Server 2008 R2 标准版)VC01、VC02

    VC01 启动内存为1024MB , 最大内存4096 ,内存缓冲:20%(默认),连接至VC01 ,任务管理器显示内存已使用81%,电脑属性显示“安装内存:1.39GB”

    VC02 启动内存为1024MB , 最大内存4096 ,内存缓冲:20%(默认) , 连接至VC02 ,任务管理器显示内存已使用52%,电脑属性显示“安装内存:3.39GB”

    请问动态内存在内存使用到百分之多少的情况下会进行扩展?

    2016年3月24日 8:39

答案

  • 您好!

    1. 关于VM1VM2内存使用的不同,动态内存有赖于负载在来宾操作系统上的服务和驱动。

    2. 很抱歉目前没有相关文档来解释Hyper-V动态内存调整基数。

    3. 性能监视器中内存显示忙碌说明此时Hyper-V正动态地将内存从空闲的虚拟机上重新分配给忙碌的虚拟机。

    如果您需要有关Hyper-V动态内存更细致的解答,我们建议您到我们的服务器虚拟化论坛进行提问:

    https://social.technet.microsoft.com/Forums/zh-CN/home?forum=2222

    感谢您的理解。

    Best Regards,

    Alvin Wang


    Please remember to mark the replies as answers if they help and un-mark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    2016年4月6日 9:11
    版主

全部回复

  • 您好!

    以下文档可能对您更深入的了解该问题有所帮助:

    Hyper-V 动态内存配置指南

    https://technet.microsoft.com/zh-cn/library/ff817651%28v=ws.10%29.aspx?f=255&MSPPError=-2147217396

    虚拟化: 优化 Hyper-V 内存使用量

    https://technet.microsoft.com/zh-cn/magazine/hh750394.aspx

    Hyper-V 动态内存技术预览

    https://technet.microsoft.com/zh-cn/library/hh831766.aspx

    Best Regards,

    Alvin Wang


    Please remember to mark the replies as answers if they help and un-mark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    2016年3月25日 3:05
    版主
  • Alvin Wang

    你好!谢谢你的协助,以上三篇文章根本没有提到动态内存是如何自动调整的说明!

    按通常思路,当我将虚拟机内存分配最大为4096MB , 电脑属性显示“安装内存:1.39GB”,当使用内存超过一定比率会自动增大内存才对,那这个比率是多少??

    2016年3月25日 3:54
  • 您好!

    VM会通过performance counterHyper-V提交系统内存请求。比如以下例子:

    如果当前的系统需求没有达到2048M的内存需求,那么Host主机就会分配给VM请求的内存。内存缓冲区20%在此时不起作用。如果这时VM系统中有一个应用程序突然要求很高的内存请求,那么Hyper-V就可以立刻分配那些为系统VM保留的2048*20%的内存量给VM使用,而不必等待内存分配。

    您环境中设置的最大RAM4096,而VM请求的内存并未超过这个最大值,所以内存缓冲区的设置并不会起作用。也就是说此时所显示的内存是VM所请求的,并没有相应的比率。

    Best Regards,

    Alvin Wang


    Please remember to mark the replies as answers if they help and un-mark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    2016年3月28日 8:43
    版主
  • 谢谢Alvin Wang的协助,简单说明一下吧!

    1. 使用动态内存分配虚拟机VM1 ,开机内存4096MB, 最大6144MB

    现在虚拟机VM1,  从Windows 任务管理器中可以看到 , 总物理内存6133MB, 物理内存已经使用了80%

    2.使用动态内存分配虚拟机VM2,开机内存4096MB,  最大16384MB

    现在虚拟机VM2 , 从Windows 任务管理器中可以看到,总物理内存4095MB, 物理内存已经使用了98%

    问题一:为什么虚拟机VM1在 从Windows 任务管理器中显示6133MB(分配的最大内存)?虚拟机VM2在 从Windows 任务管理器中显示4096MB(分配的最小内存)?

    问题二:如果根据虚拟机所安装的应用或功能自动调整分配内存,那调整的基数是什么?是物理内存使用100%后?还是持续100% 24H??

    问题三:在VM2中,有运行“性能监视器”运行CPU、内存、磁盘等状态,内存一直显示“忙碌”,Hyper-V也不自动调大内存,为什么??

    2016年4月5日 8:18
  • 您好!

    1. 关于VM1VM2内存使用的不同,动态内存有赖于负载在来宾操作系统上的服务和驱动。

    2. 很抱歉目前没有相关文档来解释Hyper-V动态内存调整基数。

    3. 性能监视器中内存显示忙碌说明此时Hyper-V正动态地将内存从空闲的虚拟机上重新分配给忙碌的虚拟机。

    如果您需要有关Hyper-V动态内存更细致的解答,我们建议您到我们的服务器虚拟化论坛进行提问:

    https://social.technet.microsoft.com/Forums/zh-CN/home?forum=2222

    感谢您的理解。

    Best Regards,

    Alvin Wang


    Please remember to mark the replies as answers if they help and un-mark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    2016年4月6日 9:11
    版主