例如,在VMware中,Linux作为VM guest虚拟机运行时支持热添加内存。(有时您需要手动通知来宾操作系统。)
有没有一种安全的方法来进行逆操作-减少分配给虚拟机的内存量,如果这样,您是否需要在进行此操作之前手动通知Linux guest虚拟机?(如果是这样,那么该过程是特定于VMware工具的,还是对任何类型的虚拟化机制通用?)
例如,在VMware中,Linux作为VM guest虚拟机运行时支持热添加内存。(有时您需要手动通知来宾操作系统。)
有没有一种安全的方法来进行逆操作-减少分配给虚拟机的内存量,如果这样,您是否需要在进行此操作之前手动通知Linux guest虚拟机?(如果是这样,那么该过程是特定于VMware工具的,还是对任何类型的虚拟化机制通用?)
Answers:
ESXi不支持从VM上热删除内存或CPU。几个月前,我在一家酒吧认识的一个人告诉我,他表弟*咳嗽*的一个朋友的姐姐得到的答案是,几乎没有顾客需要此功能。换句话说:不必费心实施热删除。
如果希望ESXi支持此功能,请转到VMware并告诉他们。做的人越多,实施它的机会就越高。
我不能肯定地说在vmware中,但是当使用kvm时,减少正在运行的虚拟机的内存可以正常工作。当然可以,但软件会告诉您。减少它时,虚拟机中的内存将逐渐减少,直到无法再进一步减少为止。如果将内存设置为小于停止位置,则需要重新引导虚拟机以使其完全降低。
我最近在运行有约20个虚拟机的kvm的系统上进行了此操作,有人认为过分提交内存是明智的,这会导致某些虚拟机以交换方式运行(doh!)。为了解决这个问题,我将内存减少了2/3的虚拟机的20-40%,大多数虚拟机在运行时能够完全降低内存。有一些需要重新启动才能使新的内存设置完全生效。
因此,我假设vmware虚拟机也可以允许这种行为。但是,在vmware player中进行的快速测试告诉我,它将需要重新启动才能生效(更高级的vmware软件的行为可能会更好)。否则,在正在运行的系统上这样做是安全的。当然,剩下的内存量是否足以正常运行是另一回事。