Types of cloud computing
There are 4 main types of cloud computing: private clouds, public clouds, hybrid clouds, and multiclouds. There are also 3 main types of cloud computing services: Infrastructure-as-a-Service (IaaS), Platforms-as-a-Service (PaaS), and Software-as-a-Service (SaaS).
Choosing a cloud type or cloud service is a unique decision. No 2 clouds are the same (even if they’re the same type), and no 2 cloud services are used to solve the same problem. But by understanding the similarities, you can be more informed about how the caveats of each cloud computing type and cloud service might impact your business.
What's the same?
Every cloud abstracts, pools, and shares scalable computing resources across a network. Every cloud type also enables cloud computing, which is the act of running workloads within that system. And every cloud is created using a unique mix of technologies, which almost always includes an operating system, some kind of management platform, and application programming interfaces (APIs). Virtualization and automation software can also be added to every kind of cloud for additional capabilities or increased efficiencies.
The differences between public clouds, private clouds, hybrid clouds, and multiclouds were once easily defined by location and ownership. But it’s just not that simple anymore. So while we compare the differences below, there are plenty of caveats.
Public clouds are cloud environments typically created from IT infrastructure not owned by the end user. Some of the largest public cloud providers include Alibaba Cloud, Amazon Web Services (AWS), Google Cloud, IBM Cloud, and Microsoft Azure.
Traditional public clouds always ran off-premises, but today's public cloud providers have started offering cloud services on clients’ on-premise data centers. This has made location and ownership distinctions obsolete.
All clouds become public clouds when the environments are partitioned and redistributed to multiple tenants. Fee structures aren't necessary characteristics of public clouds anymore, since some cloud providers (like the Massachusettes Open Cloud) allow tenants to use their clouds for free. The bare-metal IT infrastructure used by public cloud providers can also be abstracted and sold as IaaS, or it can be developed into a cloud platform sold as PaaS.
Private clouds are loosely defined as cloud environments solely dedicated to a single end user or group, where the environment usually runs behind that user or group's firewall. All clouds become private clouds when the underlying IT infrastructure is dedicated to a single customer with completely isolated access.
But private clouds no longer have to be sourced from on-prem IT infrastructure. Organizations are now building private clouds on rented, vendor-owned data centers located off-premises, which makes any location and ownership rules obsolete. This has also led to a number of private cloud subtypes, including:
Managed private clouds
Customers create and use a private cloud that's deployed, configured, and managed by a third-party vendor. Managed private clouds are a cloud delivery option that helps enterprises with understaffed or underskilled IT teams provide better private cloud services and infrastructure.
A cloud within another cloud. You can have a dedicated cloud on a public cloud (e.g. Red Hat OpenShift® Dedicated) or on a private cloud. For example, an accounting department could have its own dedicated cloud within the organization's private cloud.
A hybrid cloud is a seemingly single IT environment created from multiple environments connected through local area networks (LANs), wide area networks (WANs), virtual private networks (VPNs), and/or APIs.
The characteristics of hybrid clouds are complex and the requirements can differ, depending on whom you ask. For example, a hybrid cloud may need to include:
- At least 1 private cloud and at least 1 public cloud
- 2 or more private clouds
- 2 or more public clouds
- A bare-metal or virtual environment connected to at least 1 public cloud or private cloud
But every IT system becomes a hybrid cloud when apps can move in and out of multiple separate—yet connected—environments. At least a few of those environments need to be sourced from consolidated IT resources that can scale on demand. And all those environments need to be managed as a single environment using an integrated management and orchestration platform.
Multiclouds are a cloud approach made up of more than 1 cloud service, from more than 1 cloud vendor—public or private. All hybrid clouds are multiclouds, but not all multiclouds are hybrid clouds. Multiclouds become hybrid clouds when multiple clouds are connected by some form of integration or orchestration.
A multicloud environment might exist on purpose (to better control sensitive data or as redundant storage space for improved disaster recovery) or by accident (usually the result of shadow IT). Either way, having multiple clouds is becoming more common across enterprises that seek to improve security and performance through an expanded portfolio of environments.
Cloud services are infrastructure, platforms, or software that are hosted by third-party providers and made available to users through the internet. There are 3 main types of as-a-Service solutions: IaaS, PaaS, and SaaS. Each facilitates the flow of user data from front-end clients through the internet, to the cloud service provider’s systems, and back—but vary by what’s provided.
IaaS means a cloud service provider manages the infrastructure for you—the actual servers, network, virtualization, and data storage—through an internet connection. The user has access through an API or dashboard, and essentially rents the infrastructure. The user manages things like the operating system, apps, and middleware while the provider takes care of any hardware, networking, hard drives, data storage, and servers; and has the responsibility of taking care of outages, repairs, and hardware issues. This is the typical deployment model of cloud storage providers.
PaaS means the hardware and an application-software platform are provided and managed by an outside cloud service provider, but the user handles the apps running on top of the platform and the data the app relies on. Primarily for developers and programmers, PaaS gives users a shared cloud platform for application development and management (an important DevOps component) without having to build and maintain the infrastructure usually associated with the process.
SaaS is a service that delivers a software application—which the cloud service provider manages—to its users. Typically, SaaS apps are web applications or mobile apps that users can access via a web browser. Software updates, bug fixes, and other general software maintenance are taken care of for the user, and they connect to the cloud applications via a dashboard or API. SaaS also eliminates the need to have an app installed locally on each individual user’s computer, allowing greater methods of group or team access to the software.
Common cloud computing questions
Which cloud should I use?
That depends on what you're doing.
- Workloads with high volume or fluctuating demands might be better suited for a public cloud.
- Workloads with predictable use patterns might be better off in a private cloud.
- Hybrid clouds are the catch-all, because any workload can be hosted anywhere.
Which cloud is safest?
That's a loaded question.
- Public clouds tend to have a wider variety of security threats due to multi-tenancy and numerous access points. Public clouds often split security responsibilities. For instance, infrastructural security can be the provider’s responsibility while workload security can be the tenant's responsibility.
- Private clouds are thought to be more secure because workloads usually run behind the user's firewall, but that all depends on how strong your own security is.
- Hybrid cloud security is made up of the best features of every environment, where users and admins can minimize data exposure by moving workloads and data across environments based on compliance, audit, policy, or security requirements.
Which cloud costs more?
Another loaded question.
- You usually pay for what you use in a public cloud, though some public clouds (like the Massachusetts Open Cloud) don't charge tenants.
- Whoever set up a private cloud is usually responsible for purchasing or renting new hardware and resources to scale up.
- Hybrid clouds can include any on-prem, off-prem, or provider's cloud to create a custom environment that suits your cost requirements.
Which cloud has the best resources?
That depends on how you want to spend money. Do you want to incur capital expenses (CapEx) or operating expenses (OpEx)? This is the classic scale-up vs. scale-out question.
- Public cloud users seem to have unlimited access to resources, but accessing those resources is usually an operational expense.
- Deploying more private cloud resources requires buying or renting more hardware—all capital expenses.
- Hybrid clouds give you the option of using operating expenses to scale out or capital expenses to scale up.
Why Red Hat?
Because—if you're reading this—you’re likely having trouble figuring out where to start. But don’t worry: Everyone started where you are right now. And we don't just help people get to the cloud. We help people be productive once they're there.
Our open source technologies bring a consistent foundation to any cloud deployment: public, private, or hybrid. With a standard operating system that works consistently in almost any environment, a container platform that packages and moves cloud-native apps from cloud to cloud, and tools that help you manage and automate it all, we give you the portability needed to succeed in any cloud.
Everything you need to build and deploy a full cloud computing stack.
A standard operating environment that integrates SELinux so you can feel confident running workloads in every environment.
Automated deployment of certified software on Red Hat OpenShift.