Public cloud vs private cloud: Benefits, risks, and how to choose
Public cloud vs private cloud: Benefits, risks, and how to choose
It’s a time of flux in the world of cloud. While some organizations struggle with mandates to move workloads to the cloud, some early adopters are abandoning the public cloud entirely in the face of ever-increasing bills. All of this storm and stress makes big cloud decisions more confusing than ever.
There are many, many angles to consider when contemplating a cloud migration—in any direction—but let’s zero in on one: public cloud vs private cloud. Too much discussion of this issue remains rooted in the truisms of the last decade (or the decade before that).
Let’s be clear up front: there is no single approach that will be right for everyone. But if we frame our decision with the respective benefits and risks of public and private cloud, it will be easier to make the choice that’s right for you.
What are public and private clouds?
First, let’s define our terms.
Public cloud refers to a model in which you run your workloads on remote, third-party infrastructure managed by the provider. This service is provided over the public internet—hence the name. The term is also a useful reminder that your workloads are sharing server-space with those of other users, which is to say that you’re running in a multi-tenant environment.
Definitionally, “public cloud” refers to cloud services from providers of many sizes and specialties—but often, when people use the term, they’re really thinking of the “Big Three”—Amazon Web Services, Microsoft’s Azure, and Google Cloud. These tech giants’ prodigious resources enable them to provide on-demand service at virtually any scale you might require. This makes them particularly elastic, meaning that they can align resources with demand at any given point in time, raising availability as traffic spikes and rubber-banding it back down as demand recedes. But as we’ll see in a moment, that scale of operation comes with some important drawbacks.
Private clouds, by contrast, adopt the cloud model of delivering on-demand service—but in this case, that infrastructure is dedicated to one organization and one organization only. It is, therefore, single-tenant. Private clouds may be backed by on-premises infrastructure or an offsite host, and likewise may be managed either internally or by a third-party service provider.
The difference between a self-hosted, self-managed private cloud and a traditional on-prem data center lies in the way resources are conceptualized and provisioned. As with a public cloud, users within your organization can easily provision compute, storage, and other resources on-demand through a self-service interface, and those resources may be served up in the form of virtual machines or containers—it doesn’t matter where they’re physically located. With the right cloud native architecture, private clouds can provide impressive elasticity and scalability as well.
Benefits and risks of public and private cloud
Multi-tenancy is a double-edged sword—and for many users, it can be a conversation-ender.
Benefits of public cloud include:
Experts to take care of the hard stuff. Provisioning and maintaining physical machines, upgrading core infrastructure, facilitating easy scaling and elasticity…this is really the core value proposition of public cloud, and it shouldn’t be underrated. You can simply forget about these things.
A wide variety of easy self-service options. The size of the Big Three in particular means that they can provide a dizzying array of options through a self-service portal. Serverless functions! Quantum computing-as-a-service! Artificial intelligence and machine learning as-a-service! There’s a buffet of options to meet every need.
Scalability and elasticity. The scalability and elasticity available through public cloud are unparalleled. Full stop. On your own private cloud, you can provision and de-provision virtual resources as needed, but there will be a ceiling on how much you can provision before needing additional hardware, or a way to leverage an additional provider.
Limited up-front costs. It’s comparatively quite cheap to get up and running on public cloud. If you opt for private cloud, the capital expenditures come up-front, and they can be considerable.
Risks and disadvantages of public cloud—and conversely, benefits of private cloud:
Security and compliance. For many organizations in the public sector and highly regulated industries, multi-tenant environments aren’t allowed on security grounds—sensitive data may be sharing a physical host machine with anyone or anything. Even where multi-tenancy isn’t strictly forbidden, it can be difficult or impossible to validate compliance requirements.
Unpredictable costs. Theoretically, economies of scale should make public cloud services less expensive than private alternatives. Unfortunately, reality hasn’t borne out that theory. Ultimately, you’re a tenant—and you’re subject to a landlord jacking up the price. Between unexpected charges, price fluctuations, and the sorts of cost spirals that can occur when highly scalable services are misconfigured, more and more companies are finding themselves saddled with out-of-control costs.
Downtime and availability issues. Public cloud resources may seem infinite, but they’re most definitely not. You can find yourself competing with other users in your region for resource availability—and sometimes, entire regions go down, leaving you with a major outage that’s out of your control.
A wide variety of “easy” self-service options—and minimal direct expert support. Trying to be everything to everyone always poses some fundamental challenges for the major public cloud providers, which provide a dizzying array of options you probably don’t need. What’s more, it’s very easy to overstate the self-service ease. Even with complicated quotes, policies, and identity management systems, visibility into costs and service utilization on major public cloud providers leaves a lot to be desired. And if you need help running the systems you’re hosting on public cloud (think Kubernetes and its associated ecosystem), you’re often out of luck.
With these respective strengths and weaknesses in mind, there are a few essential questions to ask yourself as you think about your options:
What are your security and compliance requirements? Are you subject to requirements that rule out or complicate multi-tenancy? Do these requirements apply to all or some of your workloads?
How predictable is your utilization? The fact is that many organizations’ resource utilization is boringly predictable—they don’t need to be able to stretch and accommodate massive spikes in usage. The elasticity and scalability of public cloud may be wasted on you.
Where do you want to concentrate your costs? A private cloud is costlier to set up, but will be much more predictable and likely much less expensive over the medium and long term. Are you more concerned about the up-front costs or the costs over time?
Do you have a plan for managing your systems? Whether you wind up using public or private cloud, you will likely need to configure container tooling, CI/CD, developer platforms, and more. Do you have the requisite expertise in-house, and if not, where will it come from?
Depending on your answers to those questions, you may find yourself leaning one way or the other. But it’s important to remember that there are options outside the binary of “public” and “private”—and those two choices aren’t mutually exclusive.
Thinking outside the box
Systems like Kubernetes make it possible to implement hybrid cloud architectures—an infrastructure model that enables you to easily move workloads from one cloud to another, and interoperate across clouds. This way, a security-conscious organization that needs a high degree of scalability on demand could keep sensitive data on a private cloud, while leveraging public cloud as needed to scale less sensitive workloads.
The Kubernetes substrate is often called “the operating system for the cloud” because it provides a common way to run workloads across clouds—and a common language for service providers to speak. On private and hybrid clouds, you can take advantage of services like ZeroOps Cloud on Prem to manage your infrastructure with minimal operational overhead, and Lens Autopilot DevOps-as-a-service can help your developers move quickly.
Cloud decisions don’t have to be either/or—you can get all the benefits of public cloud with the flexibility, predictability, and security of private cloud. Explore our cloud platform services to learn how we can help you identify the cloud strategy that is right for you.