Recently commented on eBizQ's Forums about a question that on first read seemed rather silly: Is it better to use Virtualization for some business apps rather than the Cloud? Here's what I said about it:
"It's hard to picture how it is better to use one than then other, when both could be perfectly applicable. I would expect virtualization to be a commonly accepted precursor to leveraging cloud-based environments for applications."
The discussion here, especially in posts by Ian and Lori, does a great job of making sure we aren't lulled into thinking of Virtualization and Cloud as either/or propositions. You are talking about two totally different things. But let's play devil's advocate and discuss how they are not very different.
1. Near-Ubiquity. Virtualization, as in hardware/desktop VMs and system images, is now par for the course. And we expect Cloud Computing as defined here to also become a major part of every enterprise IT strategy - in fact, we think it truly arrived this year. Therefore, both are present in most major IT shops already.
2. Complimentary Value Proposition. Obviously, you have compelling reasons to do both - I like Satoru's quip on "selfishly" utilizing several different Virtual images on an Amazon EC2 Cloud environment - perfect for quickly launching or freezing several different versions of his software lab depending on their reliability or versioning needs. To an extent, you can use both for similar value reasons: cost efficiency, more optimal use of computing resources (and/or capacity), system flexibility or elasticity... again, different things but similar value props.
3. Constrained by External Factors. Lastly we have discovered that Virtualization and Cloud are most similar in what they CAN'T optimize conventionally. Almost the same behavioral rules apply here - if it's a system or server you have access to and control over, it is easy to image as a VM, and also logical and cost-effective to deploy it in a Cloud. If you are dealing with an Over-Utilized (high traffic and size) system, or one that is Out-of-Scope (external to your dept. or a major service outside your company's authority), BOTH hardware virtualization and Cloud quickly become ineffective or constrained. Here's what I commented on that:
"There will still be some over-utilized business app resources that are also resistant to both - it doesn't make sense to try to replicate a 2TB mainframe as a VM, or stick it in a public cloud..."
A solution to the above constraints for both, is a technology we call Service Virtualization - this is now a very mature solution space and something we've been discussing for more than 3 years here, since we introduced LISA Virtualize product features. Virtual Services provide a companion to VMs, and simulate the behavior and performance of those Out-of-Scope items, so when and if you do deploy both in a Cloud, you truly get an elastic, constraintless environment for software development and testing purposes.

Comments