I'm working at a public library, we have 20 or so Windows 7 PCs available for the public to use. At the moment they use Deepfreeze to maintain the base state of the OS so that users can't mess things up. We use Clonezilla to deploy a sysprepped image to the PCs. (atm we're not using Clonezilla server - we do each one by hand.)

The problem is that, if the master image ever gets updated (software updates, etc) each computer needs to be managed one by one. (I guess we're lacking knowledge on how to use Clonezilla server to deploy via broadcast, and also Sysprep scripting to automate the post-imaging set up.)

I would like to investigate virtualisation to help make things easier (also for hardware changes, etc). I'm not particularly familar with what's available or the terminology, I'm sorry. I'm currently looking at VMWare vSphere Hypervisor.

I imagine a setup that works like this:

  1. PCs run some sort of minimal OS whose sole purpose is to load the VM. (Is this vSphere Hypervisor?)

  2. The VM image file is stored locally on the PC. The minimal OS mentioned above will regularly check some server to see if an updated image is available, and if so, it will rsync or copy the image file.

  3. The VM is stored in a fixed state. Changes that the users make, will not be saved after they log off / reboot. The VM always reverts back to the original state on reboot.

  4. Some sort of automation is required so that the Win7 Guest OS's on each PC has their own static IP and hostname. PC_01, PC_02, etc. Naively, I'm imagining that there's some text file with this info stored on the PC, and the "minimal OS" can be scripted to configure the Win7 VM with this hostname/IP.

So, on to the questions:

  1. So, is vSphere Hypervisor actually the type of product I'm looking for, when I say, "Minimal OS"? Or did I get my jargon wrong and it's some other VMWare product? (VMWare Player combined with some sort of linux as the Host OS, for example.)

  2. Can vSphere Hypervisor fulfill the scenario I've written above? Is there a better way doing things, that still fulfills our needs? (Although we don't want a remote desktop client/server model.)

  3. How can I achieve the automation I describe in step 4? Each Win7 Guest OS needs to have a particular unique hostname and static IP address.

I hope this isn't a "recommend a product" type question, but I imagine this is a common situation in schools, libraries, internet cafes, etc, so I'd like to get some advice on whether people have successfully used virtualisation for this sort of thing, and what they did.

  • Sorry, TL;DR, but VMware View seems to be more in line with what you're looking to do - vmware.com/products/view/overview.html - youtube.com/watch?v=xP2Gf67vEd4&feature=youtu.be – joeqwerty Nov 21 '12 at 2:30
  • View seems to work off a remote desktop model. We don't have good network speeds for that, nor do we really have a server that can handle all our clients. There's a "local mode", but it still seems intended for the client/server style of interaction and is just used for temporary sessions. I already stated in my question that remote desktop wasn't suitable for us. – AlternateZ Nov 21 '12 at 4:27
  • Granted, but something like VMware View might be a better long term solution. Also, if you don't have good network connectivity what exactly do patrons use the workstations for? My understanding has always been that most patrons use library computers for web surfing. – joeqwerty Nov 21 '12 at 4:43
  • Maybe, but at any rate, it's outside the scope of what's possible for us right now. (We receive hand-me-down old hardware from our parent organisation.) As for network connectivity, our internet is heavily congested and people already experience terrible speeds just surfing the web. I don't think a remote desktop would work very well in this situation. (Patrons also do things like edit and print documents as well, btw.) It's ok for client PCs to download a VM image slowly overnight when the library is closed, but a remote desktop would be unusable. – AlternateZ Nov 21 '12 at 5:07
  • without a HYPERVISOR you can boot win7 from and vhd natively, this file can be roled back between reboots if needed. VMWARE does not currently have this feature. – tony roth Nov 21 '12 at 5:41

For reference, here are wikipedia articles on desktop virtualizaton and hypervisors.

Most of the time when people talk about desktop virtualization, they are talking about something like vmware view/VDI, where the windows images all run on a local server and are displayed over the LAN on clients. Wikipedia calls this "Centralized virtual desktops."

What you're looking for is another form of desktop virtualization, where a bare-metal hypervisor runs on each PC, and runs a single guest OS, which is the desktop operating system you want to virtualize. The Wikipedia article calls this "Remote Synchronized virtual desktops."

VMWare ESXi can't act as the hypervisor in this case, because it has no graphics or sound drivers. So while it can run a windows image as a VM, it can't display the windows image (it expects it to be displayed by a client, over the network).

It looks like citrix has a product that is along the lines of what you're looking for, XenClient. I suspect you can't afford it.

There are a couple variations on how you could approach this for a lower cost.

You could roll your own XenClient-like solution, with linux/xen (I haven't looked very closely at this) or linux/kvm. You might do the same thing with Windows/HyperV but I think HyperV requires a windows server license.

Another option is to install Windows or Linux as a base OS, and run a type 2 hypervisor like vmware workstation, Virtual PC, Virtualbox, or Parallels under the native linux/windows. Then run your client OS in full-screen mode under the type 2 hypervisor. There are several windows options for type 2 hypervisors, which may be better for you if you don't know linux.

The distinction between type 1 & type 2 hypervisors above is probably not very important, from your point of view the configuration would probably be similar.

Note that most hypervisors require hardware virtualization support in your CPU; Older versions of vmware desktop did not, but it looks like the current does.

One final thought. You say your network can't handle VDI traffic - you're probably wrong. If internet connectivity is slow that is almost certainly due to your upstream internet connection (cable modem, dsl, t1, etc). Your local ethernet is way faster than that connection. Even with printing & other local traffic, it would very likely be able to handle local VDI traffic.

You wouldn't be able to handle "Hosted" virtualized desktops (again, wikipedia's definition), which would come in over the internet connection.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.