Hyper-v 2.0 动态内存分配。Hyper-v是否支持动态的内存分配:比如分配给一台虚拟机4G内存,如果这台虚拟机只使用了2G,多余的2G能否被Hyper-V保留,并在其他虚拟机需要的时候暂时分配给他们?
虚拟机vhd文件的上限是否可以变小:因为考虑性能问题,我需要将动态虚拟硬盘转化成固态硬盘,但是由于VHD文件所在的host机器的分区较小,承载不了此次转化,能否将动态硬盘的上限调低?

回答:根据您的描述,我对这个问题的理解是:您对Hyper-V有一些疑问。
Q1: 想了解下Hyper-v是否支持动态的内存分配:比如分配给一台虚拟机4G内存,如果这台虚拟机只使用了2G,多余的2G能否被Hyper-V保留,并在其他虚拟机需要的时候暂时分配给他们?您看到的文章来自活动目录seo http://gnaw0725.blog.51cto.com/156601/d-3

A1: 很抱歉,目前的Hyper-V并不支持这样的功能。当您分配给一台虚拟机4G内存,这台虚拟机启动时就会从当前的物理内存中划分出4G给这台虚拟机。多余的内存并不会分配给其他的虚拟机。因此您可能需要根据不同的虚拟机的要求合理的分配您的虚拟机的内存。

但是在马上就要发布的Hyper-V 2.0中(既Windows 2008 R2)中,已经包含了动态内存的这个功能。这个功能能够让您给虚拟机内存设定一个内存的最大和最小的区间。关于Hyper-V 2.0的更多的信息请您参考一下的文章:

Server Hyper-V
http://msdn.microsoft.com/en-us/library/dd464644(VS.85).aspx

Q2:另外,关于虚拟机vhd文件的上限是否可以变小:因为考虑性能问题,我需要将动态虚拟硬盘转化成固态硬盘,但是由于VHD文件所在的host机器的分区较小,承载不了此次转化,能否将动态硬盘的上限调低?

A2:目前在 Hyper-V中您只能够增大VHD文件的容量而不能缩小。我明白您想把动态虚拟硬盘转换为固态硬盘,但是由于物理机的分区不够导致无法执行这样的操作。

根据我的经验,我建议您这样做:
1.给当前的虚拟机创建一个完全的备份,然后存储在一个网络的路径(您可以用Ntbackup或者三方的工具如Ghost)
2.创建一个新的虚拟机,并且创建一个小的VHD文件(在您的分区能够承受的范围内),安装和原来的虚拟机一样的操作系统。您看到的文章来自活动目录seo http://gnaw0725.blog.51cto.com/156601/d-3

3.在这个新的虚拟机中还原您做的那个备份,这样相同的虚拟机就创建在一个相对小的VHD文件中了。
4.这时候您再对这个VHD做动态到固态的转换。

John Huang 黄吉 微软全球技术支持中

Hyper-V的相关文章请参考
Hyper-V产品释疑
虚拟服务机迁移到Hyper-V
Hyper-V网卡无法被卸载
hyper-v bin文件
---gnaw0725