在Linux虚拟机中热删除内存


11

例如,在VMware中,Linux作为VM guest虚拟机运行时支持热添加内存。(有时您需要手动通知来宾操作系统。)

有没有一种安全的方法来进行逆操作-减少分配给虚拟机的内存量,如果这样,您是否需要在进行此操作之前手动通知Linux guest虚拟机?(如果是这样,那么该过程是特定于VMware工具的,还是对任何类型的虚拟化机制通用?)

Answers:


7

ESXi不支持从VM上热删除内存或CPU。几个月前,我在一家酒吧认识的一个人告诉我,他表弟*咳嗽*的一个朋友的姐姐得到的答案是,几乎没有顾客需要此功能。换句话说:不必费心实施热删除。

如果希望ESXi支持此功能,请转到VMware并告诉他们。做的人越多,实施它的机会就越高。


1
读完这篇文章,然后说:“我的最好朋友的姐姐的男朋友的兄弟的女友从这个家伙那里听到消息,他知道这个孩子和昨晚看到弗里斯在31味精中死亡的女孩一起去。我想这很严重。”
沃伦

有趣的是,像vmware这样的商业公司不支持热删除内存,而KVM(免费软件)则支持。我会说这是自由软件的另一个很好的论据。
aseq 2015年

@aseq虽然我是自由软件的忠实拥护者,但我不认为一个功能是(或反对)该功能的充分理由。
Mario Lenz

这取决于功能,但是kvm还有很多其他用途。这一特定因素可能只是决定因素。
aseq 2015年

@aseq内存热删除可能是选择KVM而不是ESXi的原因,但这是一个非常具体的决定,与自由软件的一般优势无关。让我这样说:如果是相反的话(ESXi支持热移除内存,而KVM不支持),这是否是专有软件的一个很好的论据?我觉得不是。
Mario Lenz

4

我不能肯定地说在vmware中,但是当使用kvm时,减少正在运行的虚拟机的内存可以正常工作。当然可以,但软件会告诉您。减少它时,虚拟机中的内存将逐渐减少,直到无法再进一步减少为止。如果将内存设置为小于停止位置,则需要重新引导虚拟机以使其完全降低。

我最近在运行有约20个虚拟机的kvm的系统上进行了此操作,有人认为过分提交内存是明智的,这会导致某些虚拟机以交换方式运行(doh!)。为了解决这个问题,我将内存减少了2/3的虚拟机的20-40%,大多数虚拟机在运行时能够完全降低内存。有一些需要重新启动才能使新的内存设置完全生效。

因此,我假设vmware虚拟机也可以允许这种行为。但是,在vmware player中进行的快速测试告诉我,它将需要重新启动才能生效(更高级的vmware软件的行为可能会更好)。否则,在正在运行的系统上这样做是安全的。当然,剩下的内存量是否足以正常运行是另一回事。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.