Windows 2008 虚拟机上的内存不足错误

Windows 2008 虚拟机上的内存不足错误

我有一台服务器,其配置如下:

物理服务器(16GB RAM):安装了 Hyper-V 角色的 Windows Server 2012 标准版

该主机服务器上运行 2 台虚拟机:1 台 Windows Server 2008 SP2(64 位),具有以下 RAM 配置:当前分配:8192 MB 启动 RAM:4096 MB 动态内存:最小 RAM:512 MB,最大 RAM:8192 MB 内存缓冲区:20% 内存权重:(处于中间位置)

1 x Windows Server 2008 SP2(32 位),具有以下 RAM 配置:当前分配:1279 MB 启动 RAM:4096 MB 动态内存:最小 RAM:512 MB,最大 RAM:1048576 MB 内存缓冲区:20% 内存权重:(处于中间位置)

上面的 2 台虚拟机是使用 Disk2VHD 物理到虚拟转换工具创建的。

我还禁用了上面第一台虚拟机上的页面文件,因为我读到它是由 2012 Hyper-V 主机管理的(我还没有禁用第二台虚拟机上的页面文件)。

我遇到的问题是,我在第一台机器上看到很多内存不足错误。服务器可能会变得无响应,我必须重新启动它,否则我可能会在事件日志中看到以下错误:

======================================================================================================= COM+ 已确定您的计算机的可用内存非常低。为了确保系统正常运行,已拒绝激活该组件。如果此问题仍然存在,请安装更多内存或增加分页文件的大小。内存统计信息如下:

dwMemoryLoad = 49

ullTotalPhys = 0x1ffea4000

ullAvailPhys = 0x103e81000

ullTotalPageFile = 0x1f802e000

ullAvailPageFile = 0x009f0f000

ullTotalVirtual = 0x7fffffe0000

ullAvailVirtual = 0x7fffac60000

进程名称:w3wp.exe Comsvc​​s.dll 文件版本:ENU 2001.12.6932.18005 shp

===============================================================================

查看第一台虚拟机上的任务管理器,似乎总是有足够的物理 RAM 可用,事件日志中的上述错误支持了这一点。目前它只使用了分配的 8GB 中的 3.36GB。

在 Windows Server 2012 Hyper-V 主机上运行 Windows 2008 VM 时,有人遇到过这种内存不足问题吗?

也许我应该在虚拟机上重新启用页面文件?

多谢你们。

答案1

不要这样做。重新启用访客分页文件。

http://blogs.msdn.com/b/virtual_pc_guy/archive/2010/09/02/guest-paging-vs-virtualization-paging-and-negative-memory-availability.aspx

http://windowsitpro.com/hyper-v/qi-notice-windows-server-2012-virtual-machines-have-smart-paging-file-location-what-smart-p

智能分页功能仅用于提供可靠的虚拟机重启,不用于任何其他情况,包括机器从关闭状态启动而不是重新启动,或任何其他内存过量使用的情况。

VM 主机在分页决策方面仍然不比客户机更智能。

答案2

我重新启用了客户机页面文件,一段时间内似乎一切正常,但随后问题又出现了。现在我不得不将其改回固定内存,它运行良好。我知道这不是一个解决方案,但由于这台服务器上目前只有 1 个虚拟机,所以这不是问题。

相关内容