I've been taking part in an online discussion of virtualization over on LinkedIn. Stowe Spivey, Owner, Intermarket Solutions LLC, posed an interesting question "Is VM here to stay in and of itself or will it morph into, become a part of, the cloud?" That's an interesting thing to consider.
From my vantage point, virtual machine software, one of five different types of virtualization technology found in the virtual processing layer, one of seven layers of virtualization technology found in my model of virtualization technology, is a useful tool in creating cloud computing environments, but may be used by itself.
Bert Armijo, 3Tera's SVP Sales and Marketing, added this comment:
Cloud and virtualization are interlinked in much the same way cars and spark plugs are interlinked - they are different layers of a comprehensive service. In the car analogy, what we ultimately want is transportation, and along the way we become consumers of both spark plugs and cars. Some of the technology which provides our transportation we know about as consumers, while others disappear under the hood. This is what's happening with virtualization and cloud today.
VMs, while actually a very old technology from the mainframe days, have had a major impact on the way we think about and use PC based servers. As a technology, though, virtualization is focused on resource usage, how to leverage excess capacity in servers by running multiple OS instances on the same physical box. (btw - while someone pointed out virtulization isn't required for cloud, all successful clouds today use virtualization.)
Cloud computing (referring to infrastructure services rather than SaaS) is about more than VMs on-demand; it's about turning data centers into online services. All the infrastructure components you'd have deployed in a physical data center in the past now have to be exposed programmatically for the cloud to accommodate your applications. Security, storage, networking, life-cycle control, inventory, HA are all required to be part of the cloud. This is obviously quite a different technology space from virtualization.
Cloud computing could not have happened without virtualization as the complexities of trying to expose a traditional data center as an online service are too complex to have ever been reliable. However, as cloud matures, VMs will disappear under the hood.
While interesting, it seems to me that analogy is incomplete. While the spark plug/automobile analogy has some merit, it doesn't really work with the idea that spark plugs don't necessarily have to be installed in an automobile. I've seen them in chain saws, scooters, motorcycles, ATVs, boats and many other motorized tools and vehicles.
Virtual machine software, in the same fashion, need not be part of a cloud computing environment. Furthermore, cloud computing can be accomplished without a virtual machine in sight.
Some forms of cloud computing, such as infrastructure as a service (IaaS) is likely to often be based upon utilization of virtual machine software. Even this form of cloud computing might be running on a physical machine if the goal is high performance computing or "extreme" transaction processing.
What do you think?