Michael McGovern
asked on
Linux VM running WordPress/vNUMA/Performance issues
Hello,
We have 4 ESXi hosts with (2 socket x 4 cores per socket/256 GB RAM) for each, storage is running over a dedicated 1GbE network for iSCSI traffic to a Nimble Storage array.
I'm trying to convince my boss to virtualize our physical WordPress boxes running multiples of our client sites on CentOS 7. So we created 4 VM with 4 vCPU (4 socket/1 core) and 32GB of RAM per VM to fit in 1 NUMA node for optimal placement and performance. The underlying physical layers has 2 NUMA Nodes (4 cores and 128 GB of RAM per NUMA node). We did a load test and it failed miserably compared to the same load test to the physical boxes (2 boxes with 2 x 4cores and 64GB of ram w/ HT enabled in BIOS). During the load test on the VMs, it was pegging out the CPUs. The new VMs as well as the physical boxes are load balanced behind the F5. Could of questions:
1. If wordpress is a multi-threading application, how can I expose the HT to the VM, even thought I've set the numa.setcpu.preferHT=TRUE at the VM-level? Because when I run lscpu from linux I only see Thread(s) per core = 1, instead of 2.
2. Also, I know vNUMA automatically kicks in for VMs > 8 vCPU, however, I explicitly force it to use vNUMA by setting the numa.vcpu.min = 4 on the VM. But how can I confirm that it's working from the Guest OS?
3. Anyone here running multiple WP VMs serving up sites in VMware? If so, how is it configured at the VMware level as well as the Guest OS and/or WP application level to get the best performance.
Appreciate you inputs! Thanks.
We have 4 ESXi hosts with (2 socket x 4 cores per socket/256 GB RAM) for each, storage is running over a dedicated 1GbE network for iSCSI traffic to a Nimble Storage array.
I'm trying to convince my boss to virtualize our physical WordPress boxes running multiples of our client sites on CentOS 7. So we created 4 VM with 4 vCPU (4 socket/1 core) and 32GB of RAM per VM to fit in 1 NUMA node for optimal placement and performance. The underlying physical layers has 2 NUMA Nodes (4 cores and 128 GB of RAM per NUMA node). We did a load test and it failed miserably compared to the same load test to the physical boxes (2 boxes with 2 x 4cores and 64GB of ram w/ HT enabled in BIOS). During the load test on the VMs, it was pegging out the CPUs. The new VMs as well as the physical boxes are load balanced behind the F5. Could of questions:
1. If wordpress is a multi-threading application, how can I expose the HT to the VM, even thought I've set the numa.setcpu.preferHT=TRUE at the VM-level? Because when I run lscpu from linux I only see Thread(s) per core = 1, instead of 2.
2. Also, I know vNUMA automatically kicks in for VMs > 8 vCPU, however, I explicitly force it to use vNUMA by setting the numa.vcpu.min = 4 on the VM. But how can I confirm that it's working from the Guest OS?
3. Anyone here running multiple WP VMs serving up sites in VMware? If so, how is it configured at the VMware level as well as the Guest OS and/or WP application level to get the best performance.
Appreciate you inputs! Thanks.
Hyperthreading is not exposed to the guest OS, the threads are just extra cores for VMware, albeit not very performant ones. This can help or hurt performance, depending on the type of load.
I'm wondering how old your physical servers are, having only 4 core CPUs. Any recent enterprise server typically has 16 cores/CPU or more. Newer CPUs are also much more optimised for VMware, reducing the impact of virtualising an application.
What type of server and CPUs do you use?
I'm wondering how old your physical servers are, having only 4 core CPUs. Any recent enterprise server typically has 16 cores/CPU or more. Newer CPUs are also much more optimised for VMware, reducing the impact of virtualising an application.
What type of server and CPUs do you use?
What else is in the VMware environment as well? Are you seeing any memory blooming or high cpu wait times?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
thanks! we ended up taking bare metal path for this project. thanks for your input and expertise.
You've gone from 8 cores to 4 cores, and 64 GB to 32 GB of memory, both of these are a reduction, so presumably the cores under vmware are significantly faster than the physical cores ?
From my experience of wordpress, cpu speed is usually the biggest influence on the performance of a single site.
Without knowing the actual specs of the esxi and physical hosts, and how you are testing, it is "difficult" for anyone to assist.
I would however suggest that if you were to configure the VM the same as the physical box, as opposed to half the memory and half the CPU) it would be a better test of the environment.