One of the biggest decisions IT managers have to make is how and where to run data center applications. Fortunately, there are multiple choices that lower costs and increase business agility, including server virtualization, internal clouds, public clouds and external private clouds.
Many IT organizations are taking advantage of these options. Server virtualization is currently being used by more than 70% of enterprises to reduce costs, and cloud computing is being used or planned for use by more than 10% of corporations, according to Antonio Piraino, research director at Tier1 Research.
It can be confusing and difficult to determine which cloud environment to use (see sidebar below for descriptions of the most popular types of clouds). There are few, if any, guidelines, and each company will almost certainly have a unique discussion about its choices because each will have varying requirements and different views of what cloud computing means.
To take advantage of the new opportunities afforded by cloud computing, IT organizations have to learn the differences between server virtualization and various types of clouds, and understand the risks associated with using each execution environment in terms of the characteristics of various applications.
What is a cloud?
One may wonder why there's an interest in cloud computing when server virtualization is already providing significant cost savings by reducing the number of physical servers that enterprises buy. But it's not the same thing at all.
"Clouds provide automation and orchestration not found with server virtualization," says Jeff Deacon, cloud computing principal for Verizon Business. (Although Deacon's day job is helping figure out which of Verizon's internal applications should go on the cloud, his company also sells a public-cloud offering called Computing as a Service.)
In other words, Deacon says, cloud computing involves imposing a layer of abstraction between the applications and servers -- physical or virtual -- that automates many tasks typically done manually.
"Clouds can be viewed differently, depending on what you want from a cloud," adds David Escalante, director of IT security at Boston College. "We view cloud computing as running software applications that you would normally run in your own data center in someone else's data center. It is very important to create a definition of cloud computing for your organization." Armed with that definition, Boston College can focus on determining whether cloud computing is right for its data center needs, and which applications can be run on clouds.
Because clouds are based on virtualization, applications have to be virtualized before being moved to any of the cloud environments. But some cloud vendors can help with this, especially if the vendor supports a specific hypervisor.
On the other hand, organizations that already have their applications virtualized in a server virtualization environment may be able to move them to a public cloud without any extra work. Also, the operating systems supported by server virtualization and clouds play a role in where applications can be run. For example, clouds based on Microsoft's Azure support only Windows applications.