Cloud computing is the act of running workloads within clouds—which are IT environments that abstract, pool, and share scalable resources across a network. Neither cloud computing nor clouds are technologies unto themselves.
- Cloud computing is an act—the function of running a workload in a cloud.
- Clouds are environments—places where applications run.
- Technologies are things—software and hardware used to build and use clouds.
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’ve tried our best to define the main cloud types, we do so with an eye to the future—knowing the explanations of yesterday may not indicate how clouds will be used tomorrow.
A cloud environment created from resources not owned by the end user that can be redistributed to other tenants.
Loosely defined as a cloud environment solely dedicated to the end user, usually within the user’s firewall and sometimes on premise.
Multiple cloud environments with some degree of workload portability, orchestration, and management among them.
An IT system that includes more than 1 cloud—public or private—that may or may not be networked together.
Cloud services for cloud-native development
There’s no single, perfect cloud architecture or infrastructure. All clouds require operating systems—like Linux®—but the cloud infrastructure can include a variety of bare-metal, virtualization, or container software that abstract, pool, and share scalable resources across a network. This is why clouds are best defined by what they do rather than what they’re made of. You’ve created a cloud if you’ve set up an IT system that:
- Can be accessed by other computers through a network.
- Contains a repository of IT resources.
- Can be provisioned and scaled quickly.
You can build a private cloud on your own or use prepackaged cloud infrastructure like OpenStack®, and there are thousands of cloud service providers all over the world. Here are some of the most popular:
Creating a hybrid cloud strategy requires some degree of workload portability, orchestration, and management. Application programming interfaces (APIs) and virtual private networks (VPNs) have been the standard ways to create these connections. Many of the major cloud providers even give customers a preconfigured VPN as part of their subscription packages:
- Google Cloud offers Dedicated Interconnect.
- Amazon Web Services offers Direct Connect.
- Microsoft Azure offers ExpressRoute.
- OpenStack provides the OpenStack Public Cloud Passport.
Another way of creating a hybrid cloud is to simply run the same operating system in every environment and build container platform-based, cloud-native apps that are managed by a universal orchestration engine like Kubernetes. The operating system abstracts all the hardware while the management platform abstracts all the apps. So you deploy almost any app in almost any environment without retooling the app, retraining people, splitting management, or sacrificing security.
With their dependence on virtual infrastructure, hybrid clouds introduce significant complexity around self-service, governance and compliance, resource management, financial controls, and capacity planning. Cloud management, automation, and enterprise resource planning (ERP) tools help maintain greater visibility and oversight across these disparate resources.
Today’s automation technologies (like Red Hat® Ansible® Automation Platform) are capable of automating assets across environments. Adding modern automation capabilities to multicloud environments limits the environment’s complexity while enhancing cloud security and workload performance for traditional and cloud-native applications.
Because no matter what type of cloud you deploy—public, private, or hybrid—it should be open. Many cloud infrastructures are based on Linux and other open source software, and nobody does open source better than Red Hat. Red Hat Enterprise Linux® is certified on hundreds of clouds and with thousands of hardware and software vendors, like Azure. We make cloud computing easy with cloud automation features, automated deployment of enterprise software to any cloud, comprehensive consulting, and hands-on training from expert instructors. Red Hat Enterprise Linux, Red Hat OpenStack, Red Hat OpenShift, and Red Hat Ansible create a comprehensive stack for provisioning, automating, and securing a cloud platform using public cloud providers, private, or hybrid environments.