With the XenServer Windows client called XenCenter it is possible to manage multiple XenServer hosts, create virtual machines, watch the console of virtual machines, etc. One of the limitations I recently ran into (this is a luxury problem, I know) is that it doesn’t allow you to assign more than 8 virtual CPUs (vCPUs) to a single VM.
However, on the command line you can increase this value to 32 for Linux VMs. First, let’s see which uuid is assigned to the VM we want to give more than 8 vCPUs:
Now make sure that the VM is halted and then use this uuid in the following commands:
xe vm-param-set VCPUs-max=32 uuid=replace_with_uuid xe vm-param-set VCPUs-at-startup=32 uuid=replace_with_uuid
If you want to increase the memory size beyond 16GB as well, e.g. to 32GB, add the following commands:
xe vm-param-set memory-static-max=34359738368 uuid=replace_with_uuid xe vm-param-set memory-dynamic-max=34359738368 uuid=replace_with_uuid xe vm-param-set memory-dynamic-min=34359738368 uuid=replace_with_uuid xe vm-param-set memory-static-min=34359738368 uuid=replace_with_uuid
Restart the VM and enjoy! For a quick look if everything worked out, watch the output of this command inside the VM:
cat /proc/cpuinfo | grep processor | wc -l