Hello all.
I have production server with:
2x4CPU, 6Gb RAM, SCSI RAID10
FreeBSD-7.1, Apache-2.2, MySQL-5.1
It is heavly use MySQL(mostly 80% of work)
I make it is full copy in ESX4.
And run some our benchmark.
I got VM perfomance 3 times worse then a real hardware.
I start to check it by esxtop and all than I got it is a:
%WAIT - 600-700
%RDY - 7-8
Memory, network and disk seems to ok.
CPU usage never gets more than 50-60%.
RAM about a 4-5Gb in most times.
There I should look further?
How many vCPUs are allocated to VM?
---
VMware vExpert '2009
I got VM perfomance 3 times worse then a real hardware.
Yes. NO WHERE is it written VM's are BETTER or even COMPARATIVELY performs to real hardware. NO WHERE.
VM's give you 2 things. Consolidation and ease of management. That's ALL VM's were meant to do.
So yes, this is probably true, you will NOT be able to find ANY VM on any product that will give CLOSE to performance of REAL hardware, so if that's your goal, keep your hardware.
If you want to save money, consolidate and make management of machines easier NOW you need VM's, otherwise performance is not part of the VM equation, never has been been.
I try 8 vCPU, 4vCPU and 2vCPU.
8 and 2 - shows a most bad performance.
4 - shows max performance what I can get.
Production server never load above 50% of it is power.
So it is about use a half of it is hardware.
Well why then we got more and more maximums of all virtual hardware version to version?
For what we need 8vCPU and 255Gb RAM if we cant use a half of it?
Marketing maybe but most people sad what in low load VM show performance really near real hardware.
I hear about huge email clusters on heavy load based fully on VMware ESX.
Oracles, SAP and so on.
Well - I don`t waiting for miracle. I just want get more good performance then a what i got now.
You can run your services on VMs even faster than on hardware in some cases. But do not treat VMs as hardware machines.
Synchronizing vCPUs is really tough task, so actually there is some limitations for vSMP VMs. Less interprocess communication - faster your vSMP VM can run. Less vCPUs - less overhead.
So fastest Exchange/SQL etc implementations consist of several VMs and architecture was designed specially to run on VMs. You can not just convert you hardware server to virtual and expect that it will run as good as hardware.
Some people really require 8 vCPUs on VMs, so they asked VMware for a long time to implement such feature. But again: vSMP VM is not a hardware server with same number of CPUs (cores).
---
VMware vExpert '2009
Marketing maybe but most people sad what in low load VM show performance really near real hardware.
Ever bought a car? How about a TV? They ALWAYS tell you more than it does. In short they LIE! maybe not on purpose, but they don't know the WHOLE truth.
Sorry to burst your bubble, but that's why they give you 3 things:
A way to test it FIRST!
Consolidation Tool to ensure that those candidates for VM's MAY be a good candidate BEFORE you begin
And also white papers so you can see the data for yourself and how it works, and read the information regarding the little sub text (sometimes referred to as small print). YOU'RE Mileage may vary. NOT everyone has the SAME results.
There are too many variables.
Maybe this particular VM may not work, but hardware, testing AND trying it on DIFFERENT types of machines may yield better results.
I am saying that you can test it on different machines, maybe others will perform better, but not ALL VM's and all conversions will be good for VM. Maybe you need to build a VM and do FRESH installs, when you do a Physical to virtual that may have complications as well (left over drivers, drivers that are not compatible with VM, uneeded drivers, etc..). There are LOTS of reasons.
But overall VM's will not perform even CLOSE to the hardware equivalent, and maybe a 33% of the hardware may be a little low, but 50-60% of the original host is more realistic. Do not expect too much.
Whatever marketing or sales tells you, is based upon IDEAL BEST CASE scenarios also, so before you buy ANY THING ELSE I advise you to ALWAYS try BEFORE you buy...
I hear about huge email clusters on heavy load based fully on VMware ESX.Well Oracle, SAP, Microsoft just wants to SELL you a product. If your ONLY option is VM, of course they won't want to detour you from their product. I can tell you, that Databases and SAP (of which I have personal up close experience with ALL 3) and I can guarantee you, you do NOT want to virtualize ANY of those.
That's just something I have learned, albeit the hard way. People will tell you, "oh it's not that bad...". BULL PUCKY! That is complete and utter HYPE! Don't believe the hype.
You already say it's not performing CLOSE to the hardware you had before, so now tell me who is lying now? Them or me? I see the same as you, I have tried tweaking NO NEW RESULT. Don't waste your time, some things cannot be virtualized and if they are they just won't work as well, that's the PLAIN truth.
Move on to something else, and you may get better results.
To me SAP, Oracle nor SQL Server are NOT viable candidates for VM's, period. I don't care WHAT anyone tells you. Yeah they work, but not as well . . . .
so you have a machine 8 core 32 GB of RAM and you get 25000 IOPs on physical hardware. now you move it to a VM, you get 50% of that.. you paid $10K for a license you want $5k performance from a $10K investment? I wouldn't...
Leave it where you get the MOST out of it, that's what I am saying. Believe marketing or your eyes... and I am telling you, it doesn't get any better.
To me I believe in getting ALL you can, you can't get ALL you can from a VM for SQL/SAP/Oracle, no even close.
You can do more with hardware, which is HOW you should be looking at it however. That SAME 8 x 32 machine can host 40 VM's. Would you expect ideal performance from ALL running processes at once? HARDLY.
That's the bottom line.
You can run your services on VMs even faster than on hardware in some cases
Umm.. what are you smoking? Normally I follow what you say.. but this one, I think you slipped in the tub this AM....
Show me ONE service that runs faster?...
NO WAY!
We have some java that runs faster in a VM....
--Matt
VCP, vExpert, Unix Geek
>Show me ONE service that runs faster?...
Actually any service that scales horizontally can run faster in VMs. Instead of vertically scaling machine to 8 CPUs and run 8 instances of this service in SMP machine we can split machine to 8-9-10-11-12 uniprocessor VMs. I'm not saying that this will happen for sure or any service can be scaled this way, but theoretically actual performance (some actual counter like transaction per second) of this multi VM system can be higher than on the same hardware, but standard SMP Windows / Linux, without VMware.
VMware claims that they even made benchmarks and got such results. So how can I not believe them?
---
VMware vExpert '2009
>some things cannot be virtualized
To be more precise: some things should not be virtualized. And how we say in Russia - you have your head not only to wear your hat.
---
VMware vExpert '2009
Lets stop this holy war, ok?
I still got a question - how can I improve my performance on that scenario?
I got typical "LAMP" server. Any hints? Shamanism?
Consider redesign your service, split it to several 2 vCPU machines, make cluster if needed. In general more vCPUs you have - more overhead you have.
Maybe it would be better to place reverse proxy like nginx, make 2 VMs with Apache, make VM with mysql. Split your load to smaller parts, so ESX can swallow them.
---
VMware vExpert '2009
Well - main goal of this VM is to be a full copy of prod server.
So it is no acceptable now.
Then you have what you have, I doubt you can significantly improve performance of such VM.
---
VMware vExpert '2009
Well, if you are unable to make any concessions to change the VM, that either its not a good choice for virtualization or you get to live with suboptimal performance.