나의 블로그
25/04/21 IaaS, PaaS, SaaS 란 무엇인가? (특징과 차이점) 본문
SaaS, PaaS, IaaS, CaaS

(출처 - PaaS, IaaS, SaaS 비교: 차이점은 무엇인가요? | Google Cloud)
IaaS: Infrastructure as a Service
- 정의
- 클라우드 서비스 제공업체가 서버(컴퓨팅 리소스), 스토리지, 네트워킹, 가상화 등을 인프라 수준에서 제공
- 사용자 책임
- 고객이 자체 데이터 센터 인프라 관리, 유지관리 또는 업데이트 필요 없음. 운영체제, 미들웨어, 가상 머신, 앱 또는 데이터를 책임
- 예시
- AWS - EC2
- Azure - VM
- Google Cloud - Compute Engine
- 장점
- 인프라에 대한 제어 수준이 가장 높음 (운영체제 및 애플리케이션 설치, 네트워킹 등 자유도가 큼)
- 필요에 따라 확장 가능
- 단일 장애점(?)이 없어 안정성이 높은 편임
- 초기 자본 지출 감소 (물리 서버를 마련할 필요 없음, 사용한 만큼만 지불)
- 프로비저닝 지연과 리소스 낭비 감소
- 개발 및 TTM(time to market) 가속화
- 단점
- 자체 데이터 보안 및 복구에 대한 책임
- 직접 구성 및 유지보수 (OS부터 모든 애플리케이션 스택까지 직접 관리해야 하므로 설정 및 운영이 복잡)
- 클라우드 기반 인프라에서 기존 애플리케이션을 보호하기 어려움
CaaS: Containers as a Service
- 정의
- 인프라를 가상머신(VM) 형태로 제공하는 대신 컨테이너 단위로 제공하고, 컨테이너 오케스트레이션 환경을 포함하여 관리해주는 서비스
- 사용자 책임
- 컨테이너 내부에 들어갈 애플리케이션과 그 환경(Dockerfile, 의존 라이브러리 등)을 준비하여 배포
- 예시
- AWS - ECS(Elastic Container Service), EKS (Elastic Kubernetes Service)
- Azure - AKS(Azure Kubernetes Service)
- Google - GKE(Google Kubernetes Engine)
- 장점
- 애플리케이션을 컨테이너로 패키징만 하면 어디서든 동일하게 동작
- 빠른 배포 및 확장성 (TTK 단축)
- VM대비 시스템 자원 효율성이 높은 편
- 마이크로 서비스 실행, 관리, 확장에 이상적
- 네트워크 및 애플리케이션 구성요소의 제어 및 구성 세분화
- 하이브리드 클라우드 및 멀티 클라우드와 같은 환경 간 워크로드 이동성 증가
- 성능 모니터링 및 컨테이너 조정 기본 제공
- 단점
- 클라우드 서비스 제공업체에 따라 일부 CaaS 솔루션에 제공되는 언어 지원이 제한
- CaaS를 사용할 경우 OS와 동일한 커널을 공유하므로 (VM보다 안전하다고 간주되지만) 컨테이너 보안 위험이 증가할 수 있음
- 컨테이너 환경 자체(Docker, Kubernetes 등)를 이해해야 함
- 어느 정도의 DevOps 역량이 필요함
- VM대신 컨테이너를 사용하여 개발 및 배포에 필요한 HW와 SW 리소스를 제공 및 관리
PaaS: Platform as a Service
- 정의
- 클라우드 서비스 제공업체가 자체 인프라(서버, 스토리지, 네트워크)뿐 아니라, OS, 런타임, 미들웨어 등을 통합하여 ‘플랫폼’ 형태로 제공
- 사용자 책임
- 애플리케이션 코드 개발 및 데이터 관리(데이터 베이스 셋업이 아닌 데이터 자체)
- 플랫폼이 제공하는 환경에서 코드를 바로 배포하여 실행
- 예시
- AWS - Beanstalk
- Google - App Engine
- Azure - App Service
- 장점
- 완전하고 사용하기 쉬운 개발 플랫폼에 즉시 액세스 가능 (개발에 집중 가능)
- 유지보수 및 인프라 보안을 책임 지는 클라우드 서비스 제공 업체
- 모든 기기에서 모든 인터넷 연결을 통해 사용 가능
- 필요에 따라 확장 가능 (자동 스케일링 기능을 제공하는 경우가 많아 트래픽 증가 시 확장 편리)
- 단점
- 애플리케이션 스택이 가장 관련성 높은 구성요소로 제한될 수 있음
- 클라우드 서비스 제공업체에 따라 공급업체 종속이 문제가 될 수 있음
- 운영 및 전체 인프라에 대한 낮은 제어 수준 (플랫폼 환경 커스텀이 어려울 수 있음)
- 제한된 맞춤 설정(지원되는 플레임 워크나 언어 제약이 있을 수 있음)
SaaS: Software as a Service
- 정의
- 서비스 제공업체가 고객이 액세스하고 사용할 수 있는 완성된 소프트웨어(애플리케이션)를 클라우드 기반으로 제공
- 사용자 책임
- 사용과 관련된 최소한의 책임만 있음. 로그인 및 데이터 입력 등 ‘최종 소비’만을 담당
- 예시
- Google - Workspace
- MS - Office 365
- 장점
- 모든 업데이트, 버그 수정, 전반적인 유지보수를 포함하며 즉시 사용 가능
- 웹 브라우저를 통해 직접 액세스됨
- 즉, 고객이 다른 기기에 어떤 것도 다운로드하거나 설치할 필요 없음
- 단점
- 커스터마이징이 어렵다.
- 특정 SaaS에 종속 (*벤더 락인) 되는 경우가 생길 수 있음
'클라우드 컴퓨팅 > Azure' 카테고리의 다른 글
| 25/02/27 Azure 시작하기 (0) | 2025.02.27 |
|---|