Ergo logo Consulting, Software Solutions, IT Infrastructure

News

RSS feed

Cloud vs. in-house: Where to run that app?

01 Mar 2010

Source: Computerworld

By Bill Claybrook

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 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.

Different clouds to choose from
There are basically two types of clouds: public clouds and private clouds. Cloud types can generally be characterized by their location (on-premises or off-premises) and the perceived degree of security that they provide.

A public cloud is one in which a cloud service provider makes resources such as servers, storage, networking and, possibly, applications available to users over the Internet. Public clouds are off-premises by definition. A customer's applications may be running in an intermingled style on the same physical server as another customer's applications, meaning public clouds are multitenant. Public cloud services, such as Amazon's EC2, are usually offered on a pay-per-usage model -- you pay for what you use.

Private clouds take two forms: internal clouds and external private clouds. An internal cloud is inside your data center (on-premises), giving IT managers complete control over the available resources. A typical internal cloud relies on the security measures available within the cloud and within your data center. Ubuntu Enterprise Cloud and Microsoft Azure are examples of packaged software for creating internal clouds.

External private clouds combine characteristics of internal clouds and public clouds. They are like public clouds because they are off-premises. But unlike public clouds, applications run on dedicated servers, and the cloud provider has built container walls around the external private cloud to make it more secure than public clouds. IT managers have more control over the resources in a private cloud than over resources in a public cloud. Amazon's Virtual Private Cloud is an example of an external private cloud.

« Back to news listing