I want to start off by saying I love virtulization, the ability to protype an multiple tier architecture on a laptop, conduct learning without 20 physical machines is incredible and consolidate a test lab from 10 physical servers to one. . I do have some concern about the Infrastructure Architects that rush to virtualize every server without thinking thru the approach. First I would like to say that virtualization trives because of the inability or percieved inablity of being able to run multiple applications on a single server and the current server consolidation climate. The reality is most applications need to have a good isolation layer as most are not designed to be good citizens on a server with other applications (in my experience of looking over leakying, poor performer applications) So we went thru the deploy a server for every application phase and now that we look around, that has left us with thousands of under utilized servers and the need to rid the infrastructure of the costs associated with them.
Here marches in virtualization with the promise of reduced costs, less physical servers, easier maintenence and a way for easy consolidation without any architectural thought to the actual needed end state of the consolidated service. The exercise generally goes like this: CIO issues server consolidation directive Infrastructure folks immediately look over the infrastructure for consolidation targets and what naturally goes first is stuff under thier control (file/print, DNS, terminal services,etc) So lets take one of these services and consolidate terminal services for instance, one of the engineers attended a session from a virtualization vendor and they say it is a great idea to move your terminal servers to virtual machines. Wow, what an idea we could buy an 8 processor machine and run mutliple terminal server instances supporting 40 users per instance (I am being generous). Great idea we can eliminate 8 physical machines and all of the costs associated like power, datacenter footprint, physical server maintenence costs. I picked terminal services as an example because it is a workload that in the past benefited from a scale out approach to achieve scalability hence the reason why most large shops have alot of Terminal servers. Ok before someone should have of even considered the Virtualization approach I would have looked at the service from a holistic viewpoint. Why are we interesting in consolidating this service, what has caused us to have 50 terminal servers, how do we think we can achieve consolidation, what are the long term business goals of the service, who will run the consolidated terminal service, what new approaches or enhancements should we consider as an approach. This should be the first part of any consolidation exercise of any service only after that is completed can the different architectural approaches be determined. So here is the question is it a better architectural option to run 300-400 users per single terminal server (with redundant servers) or create 10 virtual terminal servers each supporting 40 users. I want to leave this an a exercise for us to mull on and come up with an answer and it is of course loaded with things I did not list that you will have to think thru.
Allen