4

I am not very familiar with the world of virtualization, but want to explore the opportunities.

Most of our developers currently develop on their local machines; I want to see if this can be made a bit more streamlined and give everyone a virtual machine to work on. Each VM should be an exact copy of a 'base' VM and I should be able to easily create new VMs.

Apart from knowing some of the brands out there - VMware and Virtualbox being the ones I am most familiar with - , I really don't know enough to make a solid choice.

Requirements:

  • 3-5 VM's. Should be pretty easy to create additional ones
  • Cheap / free: preferable choice would be to install the VM software on our existing Windows 2008 server so that we can experiment with it before actually deploying a dedicated server for it.
  • VMs only need to run a LAMP stack, no GUI. No need for massive amounts of CPU/RAM.

Questions:

  • What would be the best choice considering these requirements?
  • What platform do I need to host this? Is it possible to use our current server for this?
2
  • I have removed the [vmware] tag from your question, as it doesn't describe a product and we're trying to get rid of that particular tag. If you want a VMware related tag, please choose a product specific one from the suggestions. Apr 15, 2011 at 14:04
  • No worries. We're trying to get rid of that tag because although it's almost synonymous with virtualisation it doesn't really help categorise questions. FWIW, VMware player is probably comparible to Virtualbox (i.e you install it on top of the OS, rather than as a hypervisor on bare metal). Apr 15, 2011 at 14:14

7 Answers 7

6

If you're looking at setting up a dedicated server for your Devs to use I would recommend VMware's ESXi. It's free and fairly easy to setup but it does run on the bare metal so you would have to blow away your server or install VMware Server on your 2008 server to play with ESXi before hand.

VMware workstation, VMware Player and Virtual Box are all good choices if want to run the software on the developers local machine. This way they can run the same setup as the live server without walking over each others changes.

I actually use both ESXi and VMWare workstation in my test environment with Workstation on the local developers computer, ESXi running on a QA/internal server, and ESXi running the live site.

2
  • Thanks for the answer! How does ESXi relate to VirtualBox and the other choices? I am trying to figure out why it is the better choice according to your answer. Apr 15, 2011 at 14:04
  • 2
    I think ESXi is a better solution when you're going to dedicate a server to it. Because it runs on the bare metal you don't have to worry about the extra overhead the OS causes when the VM requests resources and it's just one less thing to have to manage. I've used virtual box on my desktop a couple times but I have had a better experience using VMware's products (VMware workstation and WMware Server). Apr 15, 2011 at 14:23
6

I would recommend VirtualBox. It's capable on many levels, easy to use, and free. And yes, use your current servers until you run out of capacity, which will probably be farther down the road when you expect and you'll have a better idea of what you need to expand and grow.

4
  • 1
    +1 for virtualbox great for prototyping hosting configurations I find :)
    – Oneiroi
    Apr 15, 2011 at 13:49
  • For development and testing I would agree with using VirtualBox. If you want to use virtual machines in production I would use ESXi
    – sreimer
    Apr 15, 2011 at 14:26
  • Looking into VirtualBox: does it have some kind of ability to run VMs in the background? Apr 15, 2011 at 14:44
  • I don't know how you do it on windows hosts, but it does have a headless mode on linux that can easily be used to start and manage VMs from the command line, background or otherwise.
    – Caleb
    Apr 15, 2011 at 14:45
1

FWIW, here's some information regarding the "cheap/free" angle from a VMware perspective (based on some digging I did a while ago).

"Workstation class stuff" (my somewhat arbitrary distinction since this can run on a server):

VMWare Player: free, but per this "VMware Player is free for personal non-commercial use." So presumably you can't use it in a commercial environment.

This despite this link where under "Safest Way to Try New Software they suggest it can be used to "Run corporate virtual machines".

However, you can apply to distribute it. I'm not sure what would happen once you distributed it - could it then be used for commercial purposes by the recipients? Beats me, I never investigated any further.

VMWare Workstation: paid commercial version, has a few enhanced features that VMWare Player doesn't have.

"Server class stuff" (again, somewhat arbitrary distinction since the first can run on a workstation):

VMware Server: free, you can use it in a commercial environment, runs on an existing OS.

VMware vSphere Hypervisor (formerly called VMWare ESXi): free, you can use it in a commercial environment, bare metal equivalent of VMWare Server (no underlying OS required).

1

We use Proxmox : http://pve.proxmox.com/wiki/Main_Page and give each developer their own Linux sandbox as a KVM guest.

Proxmox is open source, has a great web-based admin interface and is easy to configure to have multiple hosts (each serving guests) all administrated within one cluster. If you store your images on a SAN or NAS appliance you can even do live transfer of guests from host-to-host.

Its bare-metal install is a stripped down Debian so can't help you on the Windows Server 2008 side of things, but it truly is a remarkable open source project.

Cheers

0

If you're already running server 2008 you should really just enable the hyper-v role and run that.

Pros's:

0 Cost Minimal labor to get up and running.

0

Here's another vote for VirtualBox. These days I do nearly all my development on it. The only thing I really don't like about it is the way VMs have to be exported and imported, rather than allow simple file copies to be made. Other than that I find it more impressive than VMware Workstation or Player as it does a better job of running multiple VMs simultaneously on the one host, at least for my particular setup.

Regardless of which VM system you use, take snapshots at appropriate times and you can simply restore back to those points, which is often a lot quicker than replacing the VM with a "base" copy.

0

If you only need LAMP use Xen or KVM for the best performance for Linux only virtual clients.

Virtualbox, Vmware and others are better for GUI virtual clients.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .