[Users] Ovirt Memory Page Sharing or to less memory

Hello, I have only 3 host with less amount of memory for test purpose and i like to run more vms but i cant start them because they are under the defined memory threshold. It is possible to increase the level of memory page sharing on a cluster above the 200% with a option and start the vms after that change ? or it is possible to deactivate the memory threshold with any option? regards mathok

Short answer: not really Long answer: you can go in to the engine DB -> 'vds_groups' (clusters) table and change the 'max_vds_memory_over_commit' column to what ever value you like. Word of caution: This isn't supported, and i cannot guarantee how will the Ovirt UI or the Host react to this change ------------------ Noam Slomianko Red Hat Enterprise Virtualization, SLA team ----- Original Message ----- From: "Mathok" <mathok1@googlemail.com> To: users@ovirt.org Sent: Tuesday, October 16, 2012 12:51:05 AM Subject: [Users] Ovirt Memory Page Sharing or to less memory Hello, I have only 3 host with less amount of memory for test purpose and i like to run more vms but i cant start them because they are under the defined memory threshold. It is possible to increase the level of memory page sharing on a cluster above the 200% with a option and start the vms after that change ? or it is possible to deactivate the memory threshold with any option? regards mathok _______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users

I stand corrected, it seems that this change is supported. If you go and check the memory optimisation tab you'll find that it is set to "Custom Value" ------------------ Noam Slomianko Red Hat Enterprise Virtualization, SLA team ----- Original Message ----- From: "Noam Slomianko" <nslomian@redhat.com> To: mathok1@googlemail.com Cc: users@ovirt.org Sent: Tuesday, October 16, 2012 5:38:51 PM Subject: Re: [Users] Ovirt Memory Page Sharing or to less memory Short answer: not really Long answer: you can go in to the engine DB -> 'vds_groups' (clusters) table and change the 'max_vds_memory_over_commit' column to what ever value you like. Word of caution: This isn't supported, and i cannot guarantee how will the Ovirt UI or the Host react to this change ------------------ Noam Slomianko Red Hat Enterprise Virtualization, SLA team ----- Original Message ----- From: "Mathok" <mathok1@googlemail.com> To: users@ovirt.org Sent: Tuesday, October 16, 2012 12:51:05 AM Subject: [Users] Ovirt Memory Page Sharing or to less memory Hello, I have only 3 host with less amount of memory for test purpose and i like to run more vms but i cant start them because they are under the defined memory threshold. It is possible to increase the level of memory page sharing on a cluster above the 200% with a option and start the vms after that change ? or it is possible to deactivate the memory threshold with any option? regards mathok _______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users _______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users

On Wed, Oct 17, 2012 at 6:22 AM, Noam Slomianko <nslomian@redhat.com> wrote:
I stand corrected, it seems that this change is supported. If you go and check the memory optimisation tab you'll find that it is set to "Custom Value"
I'm not seeing that. I select my cluster, then click Edit > Memory Optimization, and i just have the 3 radio buttons: None, Server (150%) and Desktop (200%). Am I looking in the wrong place? Running a different versions than you are referring to (oVirt Engine Version: 3.1.0-3.19.el6)?

2012/10/17 Alan Johnson <alan@datdec.com>
On Wed, Oct 17, 2012 at 6:22 AM, Noam Slomianko <nslomian@redhat.com>wrote:
I stand corrected, it seems that this change is supported. If you go and check the memory optimisation tab you'll find that it is set to "Custom Value"
I'm not seeing that. I select my cluster, then click Edit > Memory Optimization, and i just have the 3 radio buttons: None, Server (150%) and Desktop (200%). Am I looking in the wrong place? Running a different versions than you are referring to (oVirt Engine Version: 3.1.0-3.19.el6)?
Same here with ovirt 3.1.0-2 i can't see a change in the UI. But i'm able to start more VMs and hava a higher usag of my swap partiotion so i think the change had the desired effect thank you for your help

On Mon, Oct 15, 2012 at 6:51 PM, Mathok <mathok1@googlemail.com> wrote:
It is possible to increase the level of memory page sharing on a cluster above the 200% with a option and start the vms after that change ? or it is possible to deactivate the memory threshold with any option?
First, let me be clear that this is complete speculation. That said, my interpretation of these features based on how the GUI behaves is that the Cluster Memory Optimization (CMO) setting changes the default Physical Memory Guarantee (PMG) on new VMs under the Resource Allocation tab. However, you could set that number manually to whatever you want. I have been setting it to 1/4 of the Memory Size (MS) on the General tab as a general rule, but varying it by VM as needed. So, to restate, when CMO is set to None, PMG=MS when creating a new VM. When CMO is set to Server, PMG=MS/150%. When CMO is Desktop, PMG=MS/200%. But you can still set the PMG to any custom value any time the VM is not running. That much I am sure of. What I have not tested is my expectation that the engine will pile the VMs on the hosts based purely on their the greater of PMG and actual VM use. It would be reasonably plausible that the engine limits VMs on the hosts based on CMO as well as PMG and actual use, but I just don't know for sure either way. I would greatly appreciated it if some guru could school me on this point. _______________ Alan Johnson alan@datdec.com

On 10/17/2012 11:16 PM, Alan Johnson wrote:
On Mon, Oct 15, 2012 at 6:51 PM, Mathok <mathok1@googlemail.com <mailto:mathok1@googlemail.com>> wrote:
It is possible to increase the level of memory page sharing on a cluster above the 200% with a option and start the vms after that change ? or it is possible to deactivate the memory threshold with any option?
First, let me be clear that this is complete speculation. That said, my interpretation of these features based on how the GUI behaves is that the Cluster Memory Optimization (CMO) setting changes the default Physical Memory Guarantee (PMG) on new VMs under the Resource Allocation tab. However, you could set that number manually to whatever you want. I have been setting it to 1/4 of the Memory Size (MS) on the General tab as a general rule, but varying it by VM as needed.
that is correct. the default value for "reserved memory" at vm level is based on cluster over commit. cluster over commit can be set to a custom value via the api/sdk/cli. you should validate ksm is up and running. you should also note ksm by default only kicks in around 80% host memory utilization. so if you want to be more aggressive on sharing memory pages (at the expense of a bit more cpu cycles for ksm), you can configure it at vdsm level to start at a lower threshold. also, you should note that during vm startup, until vm goes to up, engine assumes it is taking all of its defined RAM, then moves to check actual ram consumption of the VM. so between ksm configuration, and the time VMs go to up state, you may need to throttle the launch of multiple VMs on same host.
So, to restate, when CMO is set to None, PMG=MS when creating a new VM. When CMO is set to Server, PMG=MS/150%. When CMO is Desktop, PMG=MS/200%. But you can still set the PMG to any custom value any time the VM is not running. That much I am sure of. What I have not tested is my expectation that the engine will pile the VMs on the hosts based purely on their the greater of PMG and actual VM use. It would be reasonably plausible that the engine limits VMs on the hosts based on CMO as well as PMG and actual use, but I just don't know for sure either way.
CMO - total potential RAM of the VMs on the host should not exceed host ram * CMO. PMG - total reserved RAM of the VMs on the host, should not exceed host ram (that's "close enough to the truth", calculation is taking some overheads into account, etc.)
I would greatly appreciated it if some guru could school me on this point.
_______________ Alan Johnson alan@datdec.com <mailto:alan@datdec.com>
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users
participants (4)
-
Alan Johnson
-
Itamar Heim
-
Mathok
-
Noam Slomianko