Benefits of Public Cloud Computing

Businesses that want to use cloud computing have a choice of using a public cloud or private cloud, or a mixture of the two in the form of a hybrid cloud.

Cloud Computing is moving into 3 separate distinct directions:
  • Public Cloud Computing: like Amazon’s EC2 and Rackspace, designed to provide the lowest cost shared computing service with a utility delivery model where you can pay for services by the hour. 
  • Private Cloud Computing: the opposite end of the spectrum where the entire cloud infrastructure (servers, storage and network) is dedicated to a single company. 
  • Managed Cloud Computing: where a secure private cloud is sold by the server.

In this post, we’ll discuss the benefits of public cloud computing along with some of its drawbacks.

Benefits of public cloud:

Utility Price Model 
One of the most attractive benefits of public cloud computing is that you can pay for your computing by the hour. If you only need a test server to run a 1 hour regression test, you can spin up the server, run your test, and turn down the server for less than $0.10. Amazon even sells compute cycles at spot demand prices through an auction process.

API access 
Many public cloud hosts provide APIs (albeit proprietary) which allow users to programmatically spin up & kill servers through API access. These can be very beneficial for systems that need to spin up a massive number of servers such as research and test environments.

Configure & Pay Online 
As opposed to a private cloud where the entire infrastructure is designed around a client’s specific requirements, the public cloud can be purchased online, configured and deployed, in most cases, automatically through the provider’s web site.

At the same time there are some drawbacks to also be aware of with the public cloud:
Security & Compliance  
Mid-size and large enterprises overwhelmingly prefer private clouds because of network and data security issues associated with the public cloud. You simply cannot achieve HIPAA Compliance or PCI Compliance in a public cloud.

Data Loss – No High Availability Fail Over 
If a host crashes at Amazon, all of the virtual servers and data on that hardware host is lost. Public cloud servers are not built for high availability or automatic fail over. There are numerous Twitter posts & blogs on the pain felt when Amazon’s cloud crashed and there was no one to call at Amazon. Here’s an article on Amazon’s cloud crash wiping out their customers’ data and their impersonal response to their customers.

Fraud & Spammers 
One public cloud hosting provider has fraud rates as high as 80%. Because sign up & deployment is fast & easy, a fraudulent user can spin up a cloud server on a stolen credit card, launch attacks and be gone before the credit card fraud is found. The only concern for legitimate users is if the shared server hardware is seized under warrant because of another user’s fraud.

Not all applications are a good fit for the public cloud. Many mid-size and large enterprises that want to assure the security & safety of their corporate and client data will move to the private cloud and won’t deploy their critical systems in the public cloud. However, there are a number of applications that are ideal for public cloud hosting including:
  • Development & Test Environments: Regression testing is a great example of an application for the public cloud. In a past software development life, I’d spin up a dozen servers to run thousands of test scenarios every 24 hours. With the ability to spin up 1000’s of servers programmatically, the test time can be reduced to minutes, speeding up software development cycles.
  • Compute Intensive Research Applications: At the University of Michigan, researchers are spinning up 1000’s of cores to run their DNA, genome and weather analysis programs. Most of these programs are written to withstand the crash of a server or two so the public cloud with spot demand pricing can provide tremendous resources very cost effectively for research computing.
  • Noncritical Web Servers and other applications where a crash of the server or loss of data isn’t critical to the organization.