I have a thesis that I would like to present to the community in general and hear what others think.
For the longest time system management at the infrastructure level has been focused on the server. The server was the box at the center of things. The server ran applications, accessed storage and communicated over networks. So justifiably in the industry, managing infrastructure meant focusing on the physical server (and storage and networks) and the OS that ran on it. The physical server became more powerful, applications became distributed, but the focus remained on individual physical servers and their OS. Even today there are many companies selling the story of how their products discover these physical boxes, explore them, understand the OS, discover application bits running on these boxes and then painstakingly and erratically discover and compose the full application running on a collection of these boxes.
Well, we are finally at an inflection point. There will be more Virtual machines deployed than physical boxes and it is time to think about what is the new box and its implications for the management story. Virtualization has transformed the core of this concept from the physical server to the virtual machine, and this is just the start of the story. The physical server in this picture is now a low-level component that is needed to support the core concept of the virtual machine. There will be qualitative and quantitative differences between these physical boxes (across vendors and product lines), but at the end of the day they will be aggregated and treated as capacity to run VMs. It is the VM with its malleability and mobility that will become the base concept that most high-level applications and services will care about.
The analogy is to the disk drive which at some point in the past was the core storage element that the user cared about. However, these days they are aggregated into storage devices in the hundreds, made redundant and highly available because of the numbers. What the user cares about is the LUN that is logically carved out across these drives. Nobody today manages an individual disk in a storage element; that is way too low a level to work at. Higher level apps and services deal with the LUN and the guarantees that the storage element as a whole provides by way of the LUN carved out of it.
The new box in the shape of a VM comes with many benefits. You no longer have to maintain inventories of the few different configurations of the physical box that you support for your users or incur ordering and delivery delay. Physical boxes are just capacity and you need to maintain some excess capacity to keep the pipeline of VMs from stalling. VMs can be created very quickly in almost any shape and size that your users want without even breaking a sweat. The users’ needs grow for this app or service, no more hard decisions about when to reinstall on a larger box or bring down service for a while, etc. Just feed the same VM more resources, and you are ready to go, with zero disruption to the user.
The story does not really end there. The VM in essence can be customized to the needs of an application. Now what do we do for multi-system, multi-tier applications? At this point we go to the next step in the progression, the vApp, which is a set of VMs expressing the needs of a multi-system application. So in essence what we are saying is that an App always fits in one instance of the new box regardless of how large and distributed it is (Before some folks start agitating about this point, I admit that there will always be exceptions). This is a big change from the scenario with physical systems I described earlier, where multi-system apps have to be painfully discovered and pieced together.
There is one more step in this progression describing the new Box, the Virtual DataCenter (VDC). Here you get to bring together all the resources needed to run one or more applications into a single abstraction; server, storage and networking. Now this is truly revolutionary, a single "box" that encapsulates and abstracts the old physical concepts of server, storage and networking and delivers this as customized capacity to run one or more of your applications. In addition, it can be grown or shrunk or changed as needs change and is mobile across physical elements.
So the new box is this progression of the VM, the vApp, the VDC. Thinking in terms of the public cloud - the separation of the provider and the consumer - helps define issues starkly. Where they might be fuzzy in an enterprise datacenter, in the public cloud they are in black and white terms. The new box is the container for the cloud. Even with the hard separation between the provider and the consumer, the new box can be exposed to the consumer in a way that makes sense and this can be kept consistent over time. One could never do this with the physical box.
So, I would like to hear comments on whether folks agree with this thesis or think that this Virtual Emperor has no clothes!!!
Thanks for taking the time to share your thoughts. As I read the post I initially thought "oh no" he is stopping at the VM but was pleased to see you bring it up to the vApp and vDC. In short, I could not agree more. As a matter of fact I have challenged our team to do exactly as you describe. Stop thinking about servers or even VM's and focus on vApps. After all, it has always been the app we care about, we just haven't been able to show it.
As our organization dives into the Spring framework and begins migrating legacy applications and deploys new applications entirely we are working hard to start building vApp containers for all new virtual machines. While I think the vApp has some growing up to do within the virtual infrastructure I am 100% sold on this new empire and am excited about where it is headed.
To answer your question, I think the emperor is clothed but may be dressed a little futuristic to many people at the moment. In time fashion always changes.