The question of why one would virtualize OS X came up on the Mac Enterprise mailing list this week. I got asked that question elsewhere this week too, so it seems like it’s time for a blog post on the topic.
Given that the OS X EULA requires that you virtualize OS X on Apple hardware, and given that the only Apple hardware that is fully supported by VMware isn’t the most current Mac Pro1, what are the benefits of virtualizing OS X?
- More efficient use of resources. Even if you’re just running two VMs on a Mini, that’s half the capex of needing two Minis for the same purpose.
- The ability to add new servers quickly, without needing to buy new hardware.
- You can add services that you would never be able to justify the hardware spend.
- If you get an idea for something that might work in your environment, it’s pretty quick and easy to try it out. You can create a new VM or clone an existing one and try it out. It lets you tinker.
- Easy creation of test environments. For those of us who are developing Apple apps (either Mac or iOS), virtualization makes running different test environments a whole lot easier. I’ve heard from a lot of iOS dev shops that have thousands of OS X VMs that run Xcode for dev and test purposes.
- If you’ve got That One App that only runs on Snow Leopard, you don’t have to have dedicated hardware for it.
- If you upgrade something in a VM and it doesn’t go well, you can roll back to an earlier snapshot quickly and easily.
- In a disaster recovery scenario, you can replicate VMs off-site so that you don’t lose anything.
- High availability increases your uptime.
- Storing a VM on external storage allows you to bring up that VM on another host (that’s running Apple hardware, of course).