How would you 'sell' using VMs for production application servers? What are the compelling benefits in using them in that situation?

I have to maintain a number of applications that are critical but are currently very light on resource need (syslog-ng, openldap, some in house tools), that we want to be redundant. I don't like having a bunch of machines sitting at 0.1% CPU usage, just out of principal.

But if you were trying to convince people who claim "Virtual Machines eat up resources, and are therefore never good for any production situation," what would you tell them?

10 Answers
10

Utilization - in a room full of servers, of which maybe a dozen are doing anything near 50% utilization, I can instead consolidate those servers onto one or two single larger servers and have room to growth.

Capacity planning - becomes less of a concern as you can buy with resources to grow, and $5000 worth of a server gives you lots of flexibility in deploying new services

Virtualization does add overhead, but if the application performance isn't impacted by the overhead then the overhead is irrelevant. If you can put together numbers on application performance in a proposed virtualized environment then you'll be able to refute the "virtualization uses resources" argument.

If you can can show some reasonable hard dollar figures showing decreased expenses for electricity, hardware maintenance contracts, capital investment in server computers, and labor expense to perform hands-on maintenance on server computer hardware I think you can bolster your case.

Don't forget about the cost of licensing the virtualization environment and labor expense associated with maintaining it.

You could, conceivably, do all that work and find out that the numbers don't make sense. Be ready for that, if it happens.

A quick response is "Virtual machines use resources that are being wasted in order to reduce the total cost of ownership." Then show them this cost comparison. Mention other companies they respect that use VMs - they're everywhere.
–
Matt EversonAug 18 '09 at 16:51

Matt -- that is a great response, I wish it was an answer so I could up-vote it.
–
csextonAug 18 '09 at 17:16

Another point you raised was redundancy. Your VM's will be hardware agnostic and therefore will be quicker to redeploy across multiple physical systems (redundant) and speed disaster recovery.
–
QueueHammerAug 18 '09 at 18:09

I compiled a spreadsheet to show the cost savings. It worked - I now have several VM servers.

Just create a couple of sheets and lay out the costs. On one sheet I listed the per-server cost - the server, the OS, etc... which comes to, say, $8000 per server. If you have maybe 10 servers running, you're up to $80,000.

On another sheet, the VM costs. The server is generally beefier, so let's say $12,000 for hardware. Maybe $8000 for VMware (this is very dependent on your needs - this is roughly a dual quad-core cost), and maybe another $8000 for Windows Server licensing (It's about $4000/processor for Datacenter Edition). So we're at about $28,000? Keep in mind these are rough numbers, but they should be fairly close.

Datacenter Edition lets you install an unlimited number of virtual servers on the physical box. So, $80,000 for 10 physical servers, or $28,000 for as many as can run on the box - I have 15 on mine now and room to spare.

Cost savings should be enough (the results of this project nabbed me two more virtual servers), but those managers responsibile for IT uptime should consider this a no-brainer. Some other reasons virtualization isn't some flash-in-the-pan marketing gimmick.

Ease of maintenance - sure your backups are in place, but it's a LOT quicker to roll back to a snapshot if that hotfix/rollup/upgrade didn't go so well.

Flexibility of resources - End of quarter/year and your accounting department is all a-scramble? Nab a couple GB of ram from another VM and allocate them to those servers. It'll take max 10 minutes (and you can VPN in to do it in your jammies at 8pm).

The Disaster Recovery options are tremendous. Imagine the number of options for hosting your critical VMs within a day or two, from your offsite backups? Compare that to the cost/timeline of getting all that warranty hardware replaced.

Your internal processes probably have a lot of application for virtualization as well. For example, the time savings of setting up a duplicate test environment to test a major version upgrade on hardware versus cloning the existing production VM into an isolated test network (which could live on the same physical server, mind you)... (not to mention, it's a better test)

I'm tempted to go on, but you get the idea.

edit - I'll add in that timing is everything. This project took off in large part because I was able to tie specific management fears about outages & downtime to the exact technologies that would be able to solve those problems (such as virtualizing antique hardware - with systems that could no longer be reinstalled - so we could finally pitch it).

You might want to skim the virtualization tag for more arguments. A lot of the projects that people have come up with would never have occurred to me.

I'm not sure articles on A VM vendor's site pass the objective-viewpoint test. That said, there are definitely neutral articles out there.
–
Andrew ColesonAug 18 '09 at 15:43

Not for nothing, but VM-compatible CPUs to eliminate the code-translation issue have been on the market for nearly 4 years now. This should be a non-issue to anyone in the IT field. VMware was the second coming of Christ to some of us.
–
darthcoderAug 18 '09 at 16:57

You can see the benefit of VMs to yourself, but they don't see the benefits to them, so what you've got to do is translate the your benefits into their benefits.

Lower power consumption for you equals lower recurring costs for them.
Larger uptime for you equals more reliability for them.
Easier administration for you equals more time for you to work on other projects.

It's a pretty easy equation to understand after you simplify all the terms and break it down into things management can understand.

I would tell them where to go but that doesnt help your situation. It is difficult to show boards who are not that IT literate the benefits of virtualisation. However if you use VM's for disaster recovery for example, the ROI can be seen pretty quickly as you can have fancy failover systems in place where by you have two servers each with say 4VMs... if one server goes down the other server goes up automatically etc.. You are in affect making better use of your machines power hosting on one box. Just be careful about hard disk usage as thats the normal bottleneck with VMs.

For some work environments you might be able to use the free VM solutions (like ESXi) and migrate things over without interruption; then after testing it out show them the savings from servers being powered down and savings on your time and management abilities.

For features to really be helpful though you may need the pay-for additions; things like live migration aren't necessarily cheap, but the free stuff can go a long way towards showing the feasibility of using the solutions in your environment.

Again, depends entirely on your environment how feasible this is though. And it can show potential issues you'd have in trying to do this; we had a database-driven point of sale server that apparently didn't like being virtualized at the time. I don't know if it was the VMWare Server installation or something with the host, but we didn't get much of a chance to troubleshoot or tune before ending up putting the physical server back in production.

On the other hand we've shut down about seven servers right now into one virtual server running ESXi; it has definitely saved us in power draw in the server room, plus helped with cooling.