如何从DomU中更改内存资源?

对于某个工作,我有时需要更多的内存在DomU(CentOS 5)。 启动工作的触发条件是我只能在该DomU中检查的一些条件:DomU正在等待上传。 一旦完成,它需要处理接收到的数据 – 最合适的将是一个RAM磁盘。

在这种情况下,我已经设置了DomU,内存设置为1 GB min,最大为16 GB。

现在我正试图find一个优雅的方式来调整从DomU内的最大/最小的内存。

第一个解决scheme是使用DomU的ssh到所有可能的Dom0,然后在那里触发“xm mem-set”命令(使用sudo)。

我读过一些关于xen-store的东西。 触发器被提及…所以这使我认为应该有一个更好的方法。 事实certificate,记忆式投票将是一个更好的方法。

这应该在DomU内工作:

echo $((4096*1024*1024)) >/proc/xen/balloon 

应该将内存大小调整为4 GB。

但是:cat / proc / xen / ballon说:

 Current allocation: 2165536 kB Requested target: 4192256 kB Low-mem balloon: 14611680 kB High-mem balloon: 0 kB Driver pages: 0 kB Xen hard limit: 2165536 kB 

那么xen硬限制从哪里来呢?

结果现在我的DomU有2 GB RAM。 Dom0中的xm列表指出DomU仍然在1 GB RAM内

这里怎么了? 是的 – 由于DomU版本低于3.0.4,我添加了“mem = 16G”作为我的DomU的内核引导参数。

有了Dom0 SLES11 SP1(XEN 4.0.1)和CentOS 5.6 DomU(还是XEN 3.0.3?), echo 4G >/proc/xen/ballon没有做任何事情 – 但是在我做了一些成功的xm mem-sets Dom0(高达16 GB – 哪些工作), / proc / xen / ballon也在DomU中工作。

你可以使用xen具有最小内存和最大内存的气球驱动程序……它都是dynamic的,并内置在内存中