Cloud Computing Deployment Models
Cloud computing can broadly be broken down into three main categories based on the deployment model. Here is a definition of each one, courtesy of Wikipedia:
Public cloud applications, storage, and other resources are made available to the general public by a service provider. These services are free or offered on a pay-per-use model. Generally, public cloud service providers like Amazon AWS, Microsoft and Google own and operate the infrastructure and offer access only via Internet (direct connectivity is not offered).
Private cloud is cloud infrastructure operated solely for a single organization, whether managed internally or by a third-party and hosted internally or externally. Undertaking a private cloud project requires a significant level and degree of engagement to virtualize the business environment, and it will require the organization to reevaluate decisions about existing resources. When it is done right, it can have a positive impact on a business, but every one of the steps in the project raises security issues that must be addressed in order to avoid serious vulnerabilities.
Hybrid cloud is a composition of two or more clouds (private, community or public) that remain unique entities but are bound together, offering the benefits of multiple deployment models. By utilizing “hybrid cloud” architecture, companies and individuals are able to obtain degrees of fault tolerance combined with locally immediate usability without dependency on internet connectivity. Hybrid cloud architecture requires both on-premises resources and off-site (remote) server-based cloud infrastructure. Hybrid clouds lack the flexibility, security and certainty of in-house applications. Hybrid cloud provides the flexibility of in house applications with the fault tolerance and scalability of cloud based services.
Evaluting Private and Hybrid Cloud Solutions
We’re currently involved in several projects that require a hybrid cloud approach. Under this approach, some processing or storage would be handled inside the organization’s data center (private cloud) and other processing or storage would be handled using a public cloud such as Amazon Web Services or Rackspace Cloud. The decision on what workloads to run on the public cloud is generally driven by compliance requirements. An example would be: development and test systems, which use dummy data are candidates for public cloud where the production system is not due to data compliance requirements.
This type of approach is becoming more common and could be viewed as an improvement upon previous IT hardware virtualization initiatives.
In this post we’re going to describe the initial steps to evaluate existing private cloud solutions. This post does not dive into the technical differences between the software solutions, but rather looks at them from the standpoint of – which organization appears to be the most likely to become the market leader.
Private Cloud Computing Software
There are three primary software solutions in the private cloud space – Openstack, Cloudstack, Eucalyptus. Each have their strengths and weaknesses and are complex products. Relative to other IT industry trends, cloud computing is still relatively immature. Relative to the public cloud, the concept of private cloud is even more immature.
Below is a quick overview of each of the projects.
From their website:
OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface.
From their website:
What is CloudStack?
Apache CloudStack (Incubating) is software designed to deploy and manage large networks of virtual machines, as a highly available, highly scalable Infrastructure as a Service (IaaS) cloud computing platform. CloudStack is used by a number of service providers to offer public cloud services, and by many companies to provide an on-premises (private) cloud offering, or as part of a hybrid cloud solution.
CloudStack is a turnkey solution that includes the entire “stack” of features most organizations want with an IaaS cloud: compute orchestration, Network-as-a-Service, user and account management, a full and open native API, resource accounting, and a first-class User Interface (UI).
CloudStack currently supports the most popular hypervisors: VMware, KVM, XenServer and Xen Cloud Platform (XCP).
Users can manage their cloud with an easy to use Web interface, command line tools, and/or a full-featured RESTful API. In addition, CloudStack provides an API that’s compatible with AWS EC2 and S3 for organizations that wish to deploy hybrid clouds.
From their website:
What is Eucalyptus?
Eucalyptus enables the creation of on-premise Infrastructure as a Service clouds, with no requirements for retooling the organization’s existing IT infrastructure or for introducing any specialized hardware. The Eucalyptus Infrastructure as a Service (IaaS) platform maintains high fidelity with the Amazon Web Services (AWS) API, allowing support for both on-premise and hybrid IaaS clouds.
This compatibility allows any Eucalyptus cloud to be turned into a hybrid IaaS deployment, capable of moving workloads between AWS and on-premise data centers. Eucalyptus is compatible with a wealth of tools and applications that also adhere to the de facto AWS API standards.
Openstack vs. Cloudstack vs. Eucalyptus: Quick Analysis
We’re always analyzing and reviewing new and upcoming technologies. One of the best ways to do this quickly is to simply look at Google Trends. This tool gives you a quick way to get a line graph of search trends over time, and drill down by different factors. This method can be done very quickly and works for almost any technology trend that is, or is going, mainstream.
We compared openstack vs cloudstack vs eucalyptus vs amazon aws. We only included searches over the past twelve months from the United States in the “Computers & Electronics” category. Here is a link to the full report and here are the results:
Interest over time:
The main takeways from this is that, all technical capabilities aside, Openstack is far more popular than its two main competitors. This is especially true once you get outside of California. While its far too early to say who will win the private cloud platform war, its pointing towards Openstack. Its good to see some consistency across the US for both Openstack and Amazon Web Services (AWS).
The question that a development company must ask is: Does it matter if there are other solutions that are technically superior, if the target market hasn’t heard of them?
Because of the Google Trends results and the fact that our business centers around Metro Detroit, we’re primarily focusing on Openstack for private cloud and Amazon Web Services (AWS) for public cloud solutions. We’ll still be working with the other solutions, but will likely be looking at them in a different light going forward.