You have a nice new server with a large of amount of RAM and yet when you try to allocate it to a new virtual machine; the creation wizard resets the amount of RAM down to 32 gigabits.

In many cases, 32 gigabits of RAM is sufficient for a virtual machine. Xencenter has a built-in limitation. However, it is possible to increase the RAM used by a VM. You have to use the command line.

Note: this is the point where you get the disclaimer that you should test usage of the increased RAM settings before going production.  So far I have not seen any side effects.

Go ahead and create the VM with the 32 gig setting.

As usual with many command line options; you will need the UUID of the VM.

Click the console tab of the host running the virtual machine and enter the following command:

[root@host ~]# xe vm-list name-label=”your virtual machine name”
uuid ( RO)           : be7d0423-e851-b044-97b1-bb810564fc31
name-label ( RW): your virtual machine name
power-state ( RO): running

If you are running Xenserver 5.6 you may use a rounded number for the RAM amount and use the GiB designation.  Otherwise, you will need the full number for the RAM size(for exampe 128 gig would be 137438953472).

To increase the RAM of the new virtual machine to 64 gig; you would enter:

# xe vm-memory-limits-set uuid=be7d0423-e851-b044-97b1-bb810564fc31 static-min=64 GiB dynamic-min=64 GiB dynamic-max=64 GiB static-max=64 GiB

If you check the properties of the VM, you will see the new number.   Give the VM a reboot and you are good to go.

Note: You will not be able to allocate all RAM to a virtual machine as xenserver, etc., uses part of it.   You may be thinking “duh” but I have had people ask….