How is this the top comment? I'm sure some of your points may be salient, but practical experience says virtualization works just fine for production. Same with the JVM.
Also...Is Amazon EC2 considered virtualization for you?
Running closer to the metal often means higher development costs, which vastly outweigh the performance overhead abstraction layers they incur.
You're right about some things getting messed up by virtualization, but you're over-estimating the impact this has on running an online service.