IaaS / PaaS / SaaS

HelloPong·2025년 9월 22일

공부

목록 보기
32/39
post-thumbnail

☁️ IaaS / PaaS / SaaS

🧭 요약

  • 차이의 기준: “어디까지를 공급자가 관리하고, 어디부터를 사용자가 운영하나”
  • IaaS: 인프라만 제공. OS~앱은 사용자가 관리.
  • PaaS: 인프라+OS+런타임 제공. 사용자는 코드·데이터만.
  • SaaS: 완성 앱 제공. 설정하고 사용.

🧩 Shared Responsibility 모델

계층            On-Prem    IaaS         PaaS          SaaS
앱/데이터        사용자      사용자        사용자        공급자(데이터 공동)
런타임/미들웨어    사용자      사용자        공급자        공급자
운영체제          사용자      사용자        공급자        공급자
가상화/하이퍼바이저 사용자    공급자        공급자        공급자
서버/스토리지/네트워크 사용자  공급자        공급자        공급자

🧱 IaaS (Infrastructure as a Service)

  • 제공: VM, 블록/객체 스토리지, 네트워크(VPC, LB, FW), 스냅샷.
  • 사용자 책임: OS 패치, 미들웨어 설치, 런타임, 배포, 백업, 모니터링, 보안 하드닝.
  • 예시: AWS EC2/EBS/VPC/ALB, Azure VM/Disk/VNet, GCP Compute Engine/PD.
  • 언제: 커스텀 제어가 필요할 때, 레거시 리호스트, 쿠버네티스 워커 직접 관리.

🧰 PaaS (Platform as a Service)

  • 제공: 인프라+OS+런타임을 관리형으로 제공. 배포/스케일/패치 자동화.
  • 사용자 책임: 코드와 데이터, 제한 내 튜닝.
  • 예시: AWS Elastic Beanstalk, App Runner, Google App Engine, Azure App Service, 관리형 DB(RDS/Cloud SQL).
  • 언제: 빠른 출시, 운영 부담 축소, 표준 웹/API 워크로드.

🖥️ SaaS (Software as a Service)

  • 제공: 완성된 애플리케이션.
  • 사용자 책임: 계정·권한·설정, 데이터 거버넌스, SSO·감사로그 연동.
  • 예시: Gmail, Slack, Jira, Salesforce, Notion, GitHub.
  • 언제: 비핵심 기능을 사서 쓸 때 ROI 우수.

🧪 경계 사례 빠른 분류

  • S3: OS/런타임 제어 불가. 스토리지 PaaS.
  • EC2 위 Docker로 DB 직접 운영: OS·DB 당신이 관리. IaaS 사용.
  • RDS: 엔진 패치·백업 관리형. PaaS.
  • GitLab.com: 구독 사용. SaaS.
    자가호스팅 GitLab on EC2: IaaS 위 자가운영.
  • Managed Kubernetes(EKS/GKE/AKS): 컨트롤플레인은 PaaS, 워커노드는 구성에 따라 IaaS 요소 포함.
  • Lambda/Cloud Run 등 FaaS: 실행환경 완전 관리. 보통 PaaS 계열로 분류.

🧠 분류하는 질문 3개

  1. OS 패치를 누가 하나?
  2. 런타임/미들웨어를 누가 운영하나?
  3. 애플리케이션만 올리면 되나?
    → 1·2가 사용자인 경우 IaaS, 1·2가 공급자인 경우 PaaS, 앱까지 공급자가 제공하면 SaaS.

💸 운영·비용 관점 체크리스트

  • IaaS: vCPU/RAM 시간, 디스크(GB-month, IOPS), egress, LB 단위 과금. 패치·백업·DR은 직접.
  • PaaS: 인스턴스 플랜·빌드/런타임 시간·요청 수. 운영 자동화 대가로 제약 존재.
  • SaaS: 사용자 수·기능 티어·데이터 보존. 벤더 종속·데이터 이동 비용 고려.

🧷 실수 포인트

  • “S3는 스토리지니까 IaaS” → 오답. 관리형 스토리지 PaaS.
  • “EKS 쓰면 다 PaaS” → 부분만. 워커 운영 책임 여부 확인.
  • “RDS면 DB 운영 끝” → 스키마·인덱스·쿼리·데이터 품질은 사용자 책임.

🎤 면접 답변 스크립트

30초 버전

“차이는 책임 범위입니다. IaaS는 인프라만 제공해 OS부터 앱까지 제가 운영합니다(예: EC2). PaaS는 인프라와 실행환경을 제공해 저는 코드와 데이터에 집중합니다(예: RDS, App Engine). SaaS는 완성 소프트웨어를 그대로 씁니다(예: Slack).”

1분 버전

“IaaS·PaaS·SaaS는 클라우드와 사용자의 운영 경계를 나누는 모델입니다.
IaaS는 VM·스토리지·네트워크를 제공하고 OS·미들웨어 운영은 사용자가 맡습니다. 세밀 제어가 장점입니다.
PaaS는 런타임까지 관리형으로 제공해 배포와 스케일이 자동화됩니다. 출시가 빠릅니다.
SaaS는 완성 앱을 구독 형태로 사용합니다. 협업·CRM처럼 비핵심 영역에 적합합니다.
선택은 제어 필요도, 운영 비용, 출시 속도로 결정합니다.”

꼬리질문

  • Q. S3는 무엇으로 분류?
    “OS/런타임 제어가 없어 스토리지 PaaS입니다.”
  • Q. EC2에서 Docker로 MySQL 운영하면?
    “OS·DB 모두 제가 운영하니 IaaS 사용입니다.”
  • Q. RDS는?
    “엔진 패치·백업을 공급자가 맡는 PaaS입니다.”
  • Q. EKS는?
    “컨트롤플레인은 관리형 PaaS, 워커는 구성에 따라 IaaS 책임이 남습니다.”

🧱 경험을 한 줄로

  • 핵심 서비스는 IaaS에서 직접 운영했고, 데이터베이스 등은 PaaS로 운영 부담을 이관, 협업 도구는 SaaS로 소비하여 비용·속도·안정성 균형을 맞췄다.”

0개의 댓글