I was reading Andys Techie Blog about some recent dramas he had when applying Sharepoint patches. Now, I’m no stranger to those problems and a few months back I had a similar issue where a patch creamed all my Sharepoint sites. Since then I’ve taken what I reckon are some pretty simply steps to reduce potential downtime.
The first step is simply to virtualize all my servers. Originally, I used Microsoft Virtual PC but I have since migrated all these virtual machines to Hyper V on Windows 2008 64 bit edition. So prior to applying recent patches I simply used the Hyper V manager to take a snapshot of the machine (i.e. image backup). I then applied the patches, made sure everything was working and if so deleted the snap shot backup. In the event of problems, I could easily restore the previous snapshot in a matter of minutes.
I also maintain a “clean” virtual Sharepoint server for disaster recovery. All I need to do it fire up the “clean'” server, join it to my domain and restore my stsadm –o backup file and I’m basically up and running again. Because the “clean” machine is virtual I can leave it suspended until I need it.
Another great thing about virtualization is that you can tune many of the attributes of the virtual machine. Let’s take memory for starters. If I determine a machine needs 1,012MB of RAM then I can allocated exactly that amount. I know RAM is cheap but I’d rather allocate it so I get the best utilization out of the memory in the host machine. Next, let’s look at hard disks. All virtual hard disks are stored in a compressed format so even though my host machine has 300GB of disk space I can run virtual machines that use over 300GB of disk space. Need to add more hard disk space? Simply allocate another hard disk to the virtual pc and you’re away. No need to open a case, connect wires, etc, just attach and use. Finally, I can have any number of networks on my host machine. I can easily assign any machine to a different network connection without the need for plugging cables at a patch panel. This comes in extremely handy if you want to isolate a machine from the network to work on. Simply change the connected adapter and viola, isolated.
Now, I’ve been using virtual machines for a long while but with products like Hyper V and VMServer I think we will start to see virtual machine hits mainstream. If you aren’t using virtual machines then I think you REALLY need to look at them. If you are planning an upgrade of your own infrastructure then you REALLY need to consider Hyper V as an option, simply because it just provides so much flexibility and ease of use.
I can see the day when most clients will simply access a remote facility to get access to their data. In most cases, their machine and good deal of other customers, will all be running on a single piece of hardware but thanks to the wonders of virtualization, will appears to be multiple machines. I would also seriously consider selling clients a Hyper V solution to run their next server upgrade in their own offices. Sure, I know its not a perfect solution, but these days in IT what is? In my experience virtualization make infrastructure management much simpler.
My message? Go forth and virtualize.