我在少数主机上备份 Hyper-V 时遇到了很大的问题。在软件完成备份期间,一些机器变得不可用,主机开始死机等。我们跟踪的不是软件本身,而是文件复制。只需将文件从驱动器 D 复制到大小为 30GB 的 C 将在文件传输期间杀死主机。文件复制前的 ram 使用量是 64GB 中的 48GB。当您开始传输 30GB 文件时,ram 的使用会发生变化,并且在 1 分钟内,64 台服务器中的 64 台开始爬网,甚至 RDP,物理访问停止工作,直到文件复制完成。因此,在备份期间,服务器可能需要数小时才能可用。
这是 DELL Server R515,RAID 控制器处于回写模式。我在其他 Windows 2012 服务器上注意到了这一点。我尝试使用一些旧的解决方案来禁用 2003 年的缓存,但没有一个有效。我已经在 IBM 和 Dell 服务器上对其进行了测试,并且行为非常相似。内存使用率上升。首先它以 700MB/s 的速度复制开始,然后在使用 ram 后它会变得缓慢。所以问题是如何禁用文件缓存或将其限制为正常值。
请不要建议使用 robocopy 或其他“复制”工具,因为虽然它可以解决使用外部软件复制的问题,但我的问题实际上是关于我无法影响的 3rd 方软件进行的备份。我希望“Explorer”能够正常运行:-)
在命令行以管理员身份运行:
您可以为此条目设置三个值:0 表示未设置,1 表示默认值,2 表示增加。
杀死您的服务器的不是磁盘缓存或内存使用本身,而是复制操作本身。事实上,如果出现内存压力,可以立即回收非脏页。
基本上,在复制过程中,您不断提交 I/O 请求的速度超过了磁盘的处理速度,从而使系统陷入瘫痪。虽然禁用回写缓存(在操作系统和 RAID 卡级别)可以提供更好的性能,但真正的解决方案是在低负载时间(例如:夜间)安排此类操作,或者,您可以限制复制速度(不消耗所有可用的 IOPS)。
正因为如此,任何人都想知道......它在 Windows Server 2012 上的行为就像在 Windows Server 2012 上一样。升级到 Windows Server 2012 R2 有所帮助。微软拒绝修补它,因为他们说这是戴尔的问题(他们做了所有的故障排除并指出缓存问题),而戴尔拒绝提供帮助,因为显然服务器是在没有许可证的情况下购买的,这只是部分正确,因为服务器实际上是使用戴尔的许可证购买,但通过经销商很可能确实从 2 个不同的来源销售。
所以我们购买了一个新的许可证,之后服务器就可以工作了。还是疼。