Filed under: Industry Insights
Server virtualization and cloud computing are often talked about – even by service providers — as if the terms were interchangeable. This is, in part, because both were developed to solve a similar business problem: more computing with less resources. Virtualization is amongst the technologies used to provide cloud computing services. The core difference is management of the hardware; virtualization requires internal management whereas cloud services are managed by the provider of the WAN.
Q: What is virtualization?
Virtualization is a way to make more efficient use of today’s high-performance CPUs, by letting you run multiple servers on the same hardware. One or more virtual – guest servers share computing resources under the control of a hypervisor. More servers on a machine reduces the need for physical servers, which reduces hardware, space and power costs. Virtual servers can also be moved across physical systems to further align available resources with demand.
Q: What is cloud computing?
Cloud computing is a service that relies on a highly virtualized physical infrastructure. In the cloud, applications generally run on virtual servers that are independent of the underlying hardware. (Indeed, a virtual server environment for your application can be one of the services a cloud computing provider offers.) But there’s more to the cloud than virtualization, in that cloud computing is based on the concept of a “utility computing” service, where RAM, CPU cycles, storage and network bandwidth are commodities to be consumed on a “pay per use” basis, like water or electricity.
A cloud computing environment relies on many physical and virtual servers. It is configured in both hardware and software to provide high reliability and availability. Clouds are also very flexible and scalable, in the sense that an application can simply consume resources as needed.
Q: What are the basic pros and cons of virtualization?
Virtualization lets you reduce the cost and complexity of your IT infrastructure by maximizing the utilization of your physical computing resources. But you still need to purchase and maintain servers and software. Multiple virtual servers all share a single network connection which requires optimal performance.
Q: What are the basic pros and cons of cloud computing?
The benefit of cloud computing is that the provider takes care of the infrastructure your application runs on. You can eliminate the start up costs associated with hardware. But that’s only a benefit if the provider does a good job. Now all your applications are dependant on the performance of a single WAN link. It is possible to lose data, as well as access to business-critical services, when cloud services fail.
Q: What is a quick way to tell if a vendor is really talking about true cloud computing services or about virtualization?
As Salesforce.com CEO Marc Benioff recently pointed out, virtualization is a software-based technology. “They have versions with numbers after it. That is when you know you are dealing with software; if you hear about versions, you know you are not in the cloud.” Cloud computing is a service that goes beyond what software alone can provide.
Q: Should we choose virtualization or cloud computing?
Which approach is right for your application? Virtualization can certainly save companies money in both the short- and long-term. But it is still necessary to purchase and provision hardware and software upfront in order to run an application on virtualized infrastructure. The IT costs associated with managing the virtualized application is also a factor.
Cloud computing, in contrast, costs less upfront because you don’t have to buy and manage the infrastructure. But the more cloud-based resources you use, the higher your costs will be. Ultimately, cloud computing might cost more than running virtual servers on your own hardware, depending on your expertise and many other factors.
Another key choice factor is data security. In a virtual environment, you control the hardware, the access permissions, the backup/recovery, etc. In a cloud computing environment the service provider handles those concerns, for better or worse.
Q: What about application performance?
Whether you choose virtualization or cloud computing, or maybe even both, the performance of your applications is paramount. Both cloud and virtualization place new and often hard-to-predict demands on the network.
To ensure application performance levels to your distributed users, you need to be able to efficiently manage and troubleshoot network performance. Factors like bandwidth, latency, packet loss and jitter can play havoc on both virtualized and cloud-based applications. Whichever path you choose, the ability to ensure network performance is a prerequisite for acceptable application performance.