Platform as a Service (PaaS): This “as a service” model provides a cloud infrastructure to the customer that enables the development and deployment of consumer-created or acquired applications developed for the cloud. The provider ensures that the required programming languages, libraries, services, and tools are available for the customer. Typically, this is done on a pay-per-use or charge-per-use basis. Notice that the customer does not manage or control the underlying cloud infrastructure, including the network, servers, operating systems, and storage, but has control over the deployed applications and possibly configuration settings for the application-hosting environment. The AWS competitor of Microsoft Azure started as a simple PaaS offering, but then quickly followed in the footsteps of AWS to offer more “as a service” models.
Infrastructure as a Service (IaaS): This cloud service model allows the customer to provision processing, storage, networks, and other fundamental computing resources. The customer is then able to deploy and run arbitrary software, which can include operating systems and applications. The customer does not manage or control the underlying physical infrastructure but has control over operating systems, storage, and deployed applications. The customer might also have limited control of select networking components such as host firewalls. Notice that this level of control is much greater than is found with PaaS and SaaS models.
How are cloud technologies commonly deployed? These deployment models are all in use today:
Private cloud: With this model, the cloud infrastructure is provisioned for exclusive use by a single organization comprising multiple consumers, which might be business units. It might be owned, managed, and operated by the organization, a third party, or some combination of both, and it might exist on or off premises. The key is that this cloud is not for use by multiple organizations.
Community cloud: With this model, the cloud infrastructure is provisioned for exclusive use by a specific community of consumers from organizations that have shared concerns (for example, an overall mission or shared security requirements). It might be owned, managed, and operated by one or more of the organizations in the community, a third party, or some combination of both. It might exist on or off premises. A classic example of this deployment model is cloud.gov, which is a conglomeration of various cloud tools and technologies for the US government that are provided by a wide variety of vendors.
Public cloud: With this model, the cloud infrastructure is provisioned for open use by the general public. It might be owned, managed, and operated by a business, an academic institution, a government organization, or some combination of the three. It exists on the premises of the cloud provider, and these premises are typically located all over the globe to facilitate reduced latency from any location. This is the model presented by AWS and its main competitors, Microsoft Azure and the Google Cloud Platform (GCP).
Hybrid cloud: With this model, the cloud infrastructure is a composition of two or more distinct cloud infrastructures (private, community, or public) that remain unique entities but are bound together by standardized or proprietary technology that enables data and application portability. This is a widespread deployment model today. For example, an organization might build a private cloud for operational financial transactions while relying on a public cloud model for encrypted archiving of legacy transactions that must be maintained for compliance reasons.