I have been having this ongoing conversation with my fellow citrites on provisioning and virutualization. The big question is whether to provision the hypervisor, or to virualize the provisioning server. Each has its pluses and minuses, but they are both equally valid solutions.

If we look at provisioning the hypervisor, the advantages are that we could re-provision bare metal servers to be anything, but we would also have to worry about where write cache for the hypervisor would be located, and then there is the whole cloning of a hypervisor thing.

If we look at virtualizing the provisioning server, the advantages are that we could move the provisioning server to other hosts, which would be a major added benefit to the already robust HA features of Provisioning Server. The negative would be that we would have to allocate more virtual resources for more provisioning servers or use fewer guests per host to achieve the same thing.

I gave a presentation at PubForum 2008 Dublin earlier this year, where I took a similar approach to something wonderful. I used provisioning server to stream to a target device and OS that was itself a provisioning server, and that in turn was used to stream to a target device a client OS. The purpose of the demo was to show you how one could use provisioning and virtualization to truly build a dynamic environment, whether it is a lab, or a production environment. But the main goal was, if I had a rack of servers, that had nothing on them, zip, nada, zilch, and from that I wanted to hit the big green go button, and turn them into whatever, you should be able to do so.

At present we can provision Windows Server 2008 with Hyper-V, but not XeServer. I’m not trying to get into a this product, that product debate, but I want to try and flush out what you think about the pluses and minuses of either of these scenarios.