사용자가 관리 하는 것: OS + 런타임 + 앱 + 데이터 → 사용자가 관리
아무것도 없는 서버 하나를 달랑 줍니다.
그리고 그 서버 하나에 필요한 인프라를 직접 구축하여 사용합니다.
IaaS는 직접 구축해야하기 때문에 배포할 때 직접 세팅해야해서 느릴 수 밖에 없습니다.
하지만 OS부터 인프라를 구축하기 때문에 기존 환경을 그대로 복사하여 서버를 이전하기 쉽다는 장점이 있습니다.(확장성 up)
사용자가 관리 하는 것: 앱 + 데이터 → 사용자가 관리
히로쿠같은 플랫폼을 예시로 들자면 알아서 플랫폼에서 서버하나를 얻습니다.
이때 원하는 인프라를 직접 구축하는 것이 아닌 원하는 인프라를 플랫폼에서 선택하여 구축합니다.
PaaS는 플랫폼에서 알아서 구축해주기 때문에 배포가 빠르지만, 플랫폼에 맞춰서 해야하기 때문에 자유도가 작을 수 밖에 없습니다.
플랫폼의 클라우드에서 정해준 OS를 사용하기 때문에 런타임만 사용 가능하므로 자유도가 작습니다.
그래서 서버를 이전하는 것이 쉽지 않습니다.(확장성 down)
사용자가 관리 하는 것: x 없어용
모두 클라우드가 관리
완전한 서비스를 클라우드 서비스로부터 제공받아 사용합니다.
| 항목 | IaaS | PaaS | SaaS |
|---|---|---|---|
| 제공 범위 | 인프라(서버, 스토리지, 네트워크) | 인프라 + OS + 런타임 + 개발도구 | 완성된 소프트웨어 |
| 사용자 관리 | OS ~ 앱까지 직접 관리 | 앱 + 데이터만 관리 | 없음 |
| 배포 속도 | 느림 (모든 세팅 직접) | 빠름 (코드만 배포) | 즉시 사용 |
| 유연성 | 매우 높음 | 중간 | 매우 낮음 |
| 예시 서비스 | AWS EC2, GCP Compute Engine | AWS Elastic Beanstalk, Heroku | Google Docs, Slack, Netflix |
| 비유 | 땅만 빌려줌 → 건물 직접 지어야 함 | 완성된 아파트 제공 | 호텔 숙박 |