Can you run SQL Server on a Virtual Machine? Sure. Should you? Well..that's another story.
You most certainly can run SQL Server in a virtualized environment - but in most of the cases that I deal with, simply having more Instances of SQL Server installed suits the purpose better. While virtualization allows you to completely abstract the entire machine away, this isn't usually the issue you're trying to solve. With Instances you get no increased licensing, direct access to hardware, and a completely separate security domain for your SQL Server. If it's performance you're after, nothing beats bare-metal access, and if it's not, you need to ask yourself a serious question about what you're trying to solve.