Cloud Service Models
Cloud services come in three main flavors — IaaS, PaaS and SaaS — that trade control for convenience.
Cloud offerings are usually grouped into three models. The more the provider manages for you, the less you have to worry about, but also the less control you keep.
| Model | You manage | AWS example |
|---|---|---|
| IaaS (Infrastructure as a Service) | OS, runtime, apps | EC2 virtual machines |
| PaaS (Platform as a Service) | Just your app and data | Elastic Beanstalk, Lambda |
| SaaS (Software as a Service) | Nothing — just use it | Amazon WorkMail |
Deployment models
- Public cloud — shared infrastructure run by AWS.
- Private cloud — dedicated infrastructure for one organization.
- Hybrid — a mix of on-premises and cloud.
Example
# IaaS: you launch a raw virtual machine and install everything yourself
aws ec2 run-instances --image-id ami-0abcd1234efgh5678 --instance-type t3.micro
# PaaS: you hand AWS your code and it runs it for you
aws lambda invoke --function-name hello-world response.jsonWhen to use it
- A company uses EC2 (IaaS) to control the OS and runtime for a legacy application that cannot be containerized.
- A team deploys a Node.js app to AWS Elastic Beanstalk (PaaS) without managing underlying servers, focusing purely on application code.
- Employees use AWS WorkMail (SaaS) for corporate email without any infrastructure management, accessing it through a browser.
More examples
Launch EC2 Instance (IaaS)
Demonstrates IaaS by launching a raw virtual machine where you control the OS and all software layers.
aws ec2 run-instances \
--image-id ami-0abcdef1234567890 \
--instance-type t3.micro \
--count 1Create Beanstalk App (PaaS)
Shows PaaS usage where AWS manages the OS, runtime, and scaling while you provide only application code.
aws elasticbeanstalk create-application \
--application-name my-app
aws elasticbeanstalk create-environment \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2 v5.8.0 running Node.js 18"List SaaS WorkSpaces Desktops
Illustrates SaaS-style managed desktops where AWS handles all infrastructure and software delivery.
aws workspaces describe-workspaces \
--query 'Workspaces[].{ID:WorkspaceId,User:UserName,State:State}' \
--output table
Discussion