Public and private cloud comparison, how to choose a cloud platform and when to use both (English)

Public and private clouds

Companies benefit from cloud solutions by having computer system resources, especially data storage and computing power, on demand available, without direct active management by the user. These resources are mostly handed out by an API and orchestration tooling or via a web-based dashboard available at any time from any location. Resulting in the ability to spin up compute, networking and storage resources quickly and similarly decommission when they are no longer required.

A cloud is called public if it is open for the public, whereas a private cloud operates solely for one organization. Amazon Web Services has a market share in public clouds ahead of Google, Microsoft and others. In the private cloud marketshare, OpenStack leads in front of viable alternatives such as Microsoft AzureStack and VMware. The strength as well as fallbacks of the public clouds lies in numbers.

“Be your own cloud service provider”

BeYourOwn

Be Your Own

This article compares public and private clouds following the differences between Amazon Web Services and OpenStack as follows:

  • How do the business characteristics of the two platforms compare?
  • How do the costs compare?
  • How to decide which platform to use and how to use both.

Business comparison of OpenStack and Amazon Web Services

In the overview below we will highlight some business differences between the two solutions

  • Multi-tenancy segregates users by business unit, department or organization to meet legal requirements or to set quota on resources. While in OpenStack this is set by quote for each project or tenant, with AWS segregation is achieved using AWS Virtual Private Cloud.
  • Service Level Agreement (SLA) assures to run mission critical applications with minimal downtime or performanceloss. The SLA on a public cloud is prescribed by the supplier and takes away all responsibility for the company, while the SLA on a private cloud is agreed between two departments and requires managed or externally sourced managed services.
  • Ownership and control of data is managed with contracts and laws in case of a public cloud, while in a private cloud the organization remains full control, with all infrastructure in a datacentre of its choice. Because users should know who can access data stored in the cloud, legal regulations for industries such as healthcare, financial services and government limit what applications and data can be hosted on public clouds. Some users/countries fear that government security and spying agencies can gain access to public cloud data.
  • High availability provides applications that are hosted on the cloud solutions to fail over in case of incidents and disruptions so users will experience less interruption of the services. Public cloud solutions mostly not only provide local high availability but also redundancy over different geographical regions, often for latency or legal requirements. Private clouds provide the same technologies, but in general are limited by the available hardware. Often additional high availability is often realized through burst out clouds.

How do costs compare?

The cost of running servers and applications in a cloud can be operational (OPEX) or capital (CAPEX). In the table below you find the different models to setup both clouds.

Opex

How the combined costs relate to eachother vary per situation. For example running a managed serviced cloud or a public cloud can be expensive but can also save companies costs because they will not need to manage their own infrastructure anymore. So engineers can manage applications or development processes with which money is made.

Purchasing distribution subscriptions from a vendor involves upfront costs as well as costs for annual support and subsequent subscription renewals. Plus still you will need your own engineers to do the basic maintance of the infrastructure and to for example carry out upgrades. With AWS billing by the minute/hour, on the other hand, cause potentially unpredictable costs as usage is billed as used.

Off course you can also freely download open source software such OpenStack and employ engineers to install, maintain, enhance, upgrade et cetera. This cost model can be difficult to estimate because of the cost of employees required to run the cloud. How many engineers do you need? How do you know when to hire more? How do you reduce the size of your workforce if the demand for your cloud decreases?

 So which do you use?

Since all cloud platforms provide similar services and technical possibilities don’t vary much, you should consider your specific needs. For instant and temporary needs, public cloud solutions and its on-demand pricing model often fit well. Gartner recommends using private cloud for:

  • DevOps-style software development: Developers can access the OpenStack API and work with infrastructure as code.
  • For development/testing support: A more traditional IaaS with a self-service portal for the developers and testing groups.
  • High-performance computing/grid computing is a solid use case for private clouds, specifically OpenStack because many of these environments are implemented with open-source components, and OpenStack is well-suited to support the flexible infrastructure provisioning required in these environments.
  • Scale-out commodity infrastructure to support big data technologies such as Hadoop, Apache Spark and Apache Cassandra.
  • Line-of-business application hosting... Focusing on the emerging cloud-native applications, rather than trying to chase legacy compatibility, is the scenario used by most IaaS private cloud implementers.

If I choose a private cloud, can I still use a public cloud when it fits best?

Yes, by combining private and public cloud solutions, you can create your own optimal cloud infra mix. For example if you want to enable outbursting, real time disaster recovery and migration, automated backup, etc over your private cloud, you can extend to a public cloud solution. The combination of an (often on-premise) private cloud and a public cloud is one of the hybrid cloud architectures. A cloud management platform provides tools to administer both cloud environments. Thymos offers an open hybrid cloud, a fully managed cloud offering that lets you build and manage an open, private Infrastructure-as-a-Service (IaaS) cloud and ease your way into a highly scalable, public-cloud-like infrastructure.

So which is right for you? Ultimately, it all boils down to the business you are running and the control you need to have on your data, both from business- or compliancy perspective.