How to Set Up VMware Workstation as a Server
- select the contributor at the end of the page -
Almost all modern physical machines can sense that the power is back and start, but how to make the host start the VM after completing the boot process without any user interference?
Back in 2009, I had the need, but did not have the resources, to get my own dedicated server, so I hosted virtual machines on my always-on workstation. I just needed a way to start VMs with Windows. After a long search I had one of two alternatives:
Virtual Machine as a Service
The first was to run virtual machine as a service, which was a rather involved process. The procedure required editing the registry, deploying exotic utilities from the Windows resource tools and typing odd, long commands. It was intimidating to say the least, but it worked as it should and I learned a lot while applying it.
The other option was to install VMware Server (GSX as it used to be called at some point). I did not really like VMware Server: it lacked the ability to clone VMs, it required a server operating system as its host and it was later discontinued by VMware after establishing ESXi as a free product.
With VMware Server reaching the end of its life, VMware workstation had to be promoted to a “server” that could host VMs on top of an operating system. This means that in addition to other much needed features, VMware Workstation 8 has created an easy direct way to enable virtual machines to auto-start and stay always-on regardless of whether a user is logged on or not.
Establishing Workstation as a Server
Before you start you need to make sure that the VM is turned off.
The first step is to share the VM:
Right click on the VM, then chose “Manage” and you will find the share option (Figure 1).
Figure 1 - How to share virtual machines
This will start a wizard that will ask you if you want to move the virtual machine to the “Shared Virtual Machines” directory or make a full clone of it in that directory (Figure 2).
Figure 2 – Share the Virtual Machine Wizard
The location of the “Shared Virtual Machines” directory can be changed from the preferences (Figure 3). Notice that this is a general setting that affects all VMs and not a VM specific setting.
Figure 3 – Shared VMs Preferences
After sharing a VM you will have machine(s) that you can manage AutoStart for them (Figure 4)
Figure 4 – AutoStart Virtual Machines
You can adjust the delay between starting each VM (figure 5), but you cannot change the order in which they start from the interface.
It is not uncommon to be in a position where you need to set a specific order (like starting an SQL server, before its application). For that you still need to edit an XML file named C:\ProgramData\VMware\hostd\vmAutoStart.xml using the IDs as listed in the C:\ProgramData\VMware\hostd\vmInventory.xml file.
Figure 5 – Delay between starting each virtual machine
Mission accomplished: The VM(s) should start with windows regardless if a user is logged in or not. So, what does all this talk about sharing VMs mean?
It simply means that you can make VMs available to other workstation clients. For example my main PC that has 16GB of RAM can run a VM that I can connect to and manage from my laptop that has only 4GB of RAM. In a testing or development environment you can even assign different users different roles and permissions on the VMware Workstation and/or the individual VM(s) according to your need.
Figure 6 – Shared VMs Permissions
What else is new in VMware Workstation?
VMware Workstation 8 added search and improved inventory. Search may not look important on a workstation, after all how many VMs can a workstation host? But with the ability to connect to remote vSphere servers that manage hundreds of VMs at the data center (Figure 7) search proves to be very useful.
So, VMware Workstation can connect vSphere? Not only that, it can upload VMs to it (since Workstation 8 was made available) and download VMs from it (new with version 9).
The last new feature to make Workstation more than a complete replacement of the discounted VMware Server is a web interface: The VMware WSX server is a separate MSI download file that needs to be installed to provide web access to your shared VM(s).
The VMs will be available on the URL http://localhost:8888/ without the need to install any plugin on HTML5 browsers (Figure 8), which means that you will be able to access your windows VM from your lovely tablet anywhere anytime.
VMware Workstation is much more than what its name implies. It can stand on its own as a viable server solution. It can augment your existing server infrastructure and even make your VMs available to any HTML5 browser. I just hope that the addition of all those great features, with enhanced performance on all levels, will give VMware Workstation a fighting chance against Hyper-V 3 which will be shipped with Windows 8 for free.