Linux作为VM guest虚拟机运行时支持热添加内存,例如在VMware中。 (有时您需要手动通知客户操作系统 。)
有没有一种安全的方法可以做相反的操作 – 减less分配给虚拟机的内存量,如果是这样的话,在这样的操作之前是否需要手动通知Linux客户机? (如果是这样,VMware工具特有的程序,还是通用的虚拟机制?)
ESXi不支持从VM中热卸下内存或CPU。 几个月前我在酒吧见过的人告诉我,表哥*咳嗽的朋友的妹妹得到了答案,实际上没有客户要求这个function。 换句话说,它不会付出麻烦来实施热删除。
如果您希望ESXi支持此function,请转至VMware并告诉他们。 人越多,他们实施的机会就越高。
我不能肯定地在vmware中说,但是当使用正在运行的虚拟机的kvm递减内存时工作正常。 当然达到了极限,但软件会告诉你。 当你减less虚拟机的内存时,它会逐渐降低,直到不能再降低。 如果将内存设置为低于停止的位置,则需要重新启动虚拟机才能完全降低内存。
我最近在一个运行kvm的系统上做了大约20个虚拟机,有人认为过度提交内存很明智,导致一些虚拟机在交换(doh!)中运行。 为了解决这个问题,我把内存降低了2/3的虚拟机的20-40%,而且大部分都能够在运行的时候完全降低内存。 less数需要重新启动才能使新的内存设置完全生效。
从这个angular度来看,我认为虚拟机虚拟机也可以允许这种行为。 然而,vmware播放器的快速testing告诉我需要重新启动才能生效(vmware软件可能会更好)。 否则,在运行的系统上这样做是安全的。 当然,剩下的内存量是否足以正确运行是另一回事。