티스토리 뷰

기업에서 서버나 스토리지가 필요하다고 하면 과거에는 장비를 직접 구매해 데이터센터나 전산실에 설치하는 방식이 일반적이었다.

서버를 구매하고 운영체제를 설치한 뒤 네트워크와 스토리지를 구성하고, 그 위에 필요한 애플리케이션을 설치해야 했다.

클라우드 인프라 계층에서  IaaS·PaaS·SaaS의 서비스 범위를 비교한 구조

클라우드 컴퓨팅은 이러한 IT 자원을 필요한 만큼 서비스 형태로 사용할 수 있도록 제공하는 방식이다.

사용자는 실제 물리 서버가 어느 랙에 설치되어 있는지 직접 관리하지 않아도 가상 서버, 스토리지, 데이터베이스, 애플리케이션 등을 네트워크를 통해 이용할 수 있다.

하지만 클라우드라고 해서 모든 서비스가 같은 방식으로 제공되는 것은 아니다.

사용자가 어느 영역까지 직접 관리하는가에 따라 대표적으로 IaaS(Infrastructure as a Service), PaaS(Platform as a Service), SaaS(Software as a Service)로 구분할 수 있다.

이 세 가지 모델의 차이를 이해하는 핵심은 클라우드 사업자가 어디까지 관리하고, 사용 기업이 어디부터 관리하는가를 살펴보는 것이다.

클라우드는 서버가 사라지는 기술이 아니다

클라우드를 처음 접하면 서버나 네트워크 같은 기존 IT 인프라가 없어지는 것으로 생각할 수 있다.

하지만 실제 클라우드 데이터센터에도 물리 서버, 네트워크 장비, 스토리지와 전원 시설이 존재한다.

차이는 이러한 기반 인프라를 사용 기업이 직접 구매하고 운영하는 대신 클라우드 사업자가 대규모로 구축하고, 사용자는 필요한 자원을 서비스 형태로 이용한다는 점이다.

서버 사양 결정 → 구매 → 배송 → 랙 설치 → 네트워크 연결 → 운영체제 설치 → 서비스 구성

클라우드에서는 관리 콘솔이나 API를 통해 가상 서버를 생성하고 빠르게 사용할 수 있다.

따라서 클라우드의 핵심은 물리적인 IT 인프라가 사라지는 것이 아니라 IT 자원의 제공과 소비 방식이 변화하는 것이라고 이해하는 편이 정확하다.

클라우드의 기본 구조는 여러 IT 자원을 서비스로 제공하는 것이다

클라우드 환경을 단순화하면 다음과 같은 계층으로 볼 수 있다.

물리 데이터센터 → 서버·스토리지·네트워크 → 가상화 및 클라우드 인프라 → 운영체제와 실행 환경 → 애플리케이션 → 사용자

이 계층 가운데 어떤 부분을 클라우드 사업자가 관리하고 어떤 부분을 사용자가 관리하는지에 따라 서비스 모델이 달라진다.

IaaS에서는 사용자가 운영체제와 애플리케이션을 상당 부분 직접 관리한다.

PaaS에서는 운영체제와 실행 환경을 클라우드 사업자가 관리하고 사용자는 애플리케이션 개발과 배포에 집중한다.

SaaS에서는 애플리케이션까지 사업자가 제공하고 사용자는 완성된 서비스를 이용한다.

클라우드에는 다섯 가지 대표적인 특성이 있다

On-demand Self-service

사용자가 필요할 때 서버나 스토리지 같은 컴퓨팅 자원을 직접 요청하고 사용할 수 있는 특성이다.

Broad Network Access

클라우드 자원은 네트워크를 통해 접근할 수 있다.

Resource Pooling

클라우드 사업자는 여러 사용자에게 제공하기 위한 컴퓨팅 자원을 공동 풀 형태로 운영한다.

Rapid Elasticity

서비스 사용량이 증가하면 자원을 빠르게 확장하고 필요가 줄어들면 다시 축소할 수 있다.

Measured Service

CPU, 저장 공간, 네트워크 사용량이나 사용자 수 등 서비스 사용량을 측정하고 관리할 수 있다.

IaaS는 IT 인프라를 서비스 형태로 제공한다

IaaS는 Infrastructure as a Service의 약자다.

서버, 스토리지, 네트워크 등 기본적인 컴퓨팅 자원을 클라우드 사업자가 제공하고 사용자는 그 위에 운영체제와 애플리케이션을 구성한다.

클라우드 사업자는 일반적으로 다음과 같은 기반 영역을 관리한다.

  • 데이터센터
  • 물리 서버
  • 물리 네트워크
  • 물리 스토리지
  • 가상화 기반 환경

사용 기업은 일반적으로 다음 영역을 관리한다.

  • 운영체제
  • 운영체제 패치
  • 서버 계정
  • 미들웨어
  • 애플리케이션
  • 데이터
  • 일부 네트워크 및 보안 설정

IaaS는 기존 서버 환경과 가장 비슷하다

IaaS는 물리 서버를 직접 운영하던 기업이 클라우드로 이동할 때 이해하기 쉬운 모델이다.

기존 서버 대신 가상 서버를 사용하는 차이는 있지만 그 위의 운영체제와 애플리케이션 관리 방식은 상당 부분 기존 환경과 유사할 수 있다.

인프라 구성의 자유도가 높은 대신 관리 책임도 상대적으로 많다.

PaaS는 애플리케이션 실행 환경까지 제공한다

PaaS는 Platform as a Service의 약자다.

IaaS에서 한 단계 더 올라가 운영체제와 애플리케이션 실행 환경까지 클라우드 사업자가 관리한다.

사용자는 서버 운영보다는 애플리케이션 개발과 배포에 집중할 수 있다.

IaaS에서는 가상 서버를 만들고 운영체제와 실행 환경을 직접 구성해야 할 수 있지만 PaaS에서는 이러한 기반 환경이 이미 제공될 수 있다.

PaaS는 운영 부담을 줄이는 대신 제어 범위도 줄어든다

PaaS의 장점은 운영체제나 실행 환경 관리 부담을 줄일 수 있다는 것이다.

반면 사업자가 제공하는 플랫폼의 범위 안에서 서비스를 구성해야 하기 때문에 IaaS보다 자유도가 제한될 수 있다.

따라서 PaaS는 무조건 IaaS보다 우수한 방식이 아니라 운영 편의성과 제어 수준 사이에서 선택하는 모델이다.

SaaS는 완성된 소프트웨어를 서비스로 이용한다

SaaS는 Software as a Service의 약자다.

사용자가 직접 애플리케이션을 설치하고 운영하기보다 클라우드 사업자가 제공하는 완성된 소프트웨어를 네트워크를 통해 이용하는 형태다.

  • 웹메일
  • 협업 도구
  • CRM
  • 온라인 문서 작성 서비스
  • 화상회의 서비스
  • 클라우드 기반 업무 애플리케이션

사용자는 일반적으로 웹 브라우저나 전용 앱을 이용해 서비스에 접속한다.

SaaS에서도 기업의 관리 책임이 사라지는 것은 아니다

SaaS에서는 서버나 운영체제를 직접 관리하지 않지만 기업은 여전히 다음과 같은 영역을 관리해야 한다.

  • 사용자 계정
  • 접근권한
  • MFA
  • 관리자 권한
  • 데이터 공유 범위
  • 외부 사용자 접근
  • 보안 설정
  • 서비스 사용 정책
  • 사용자 퇴사 시 계정 회수

클라우드 모델이 SaaS 방향으로 이동할수록 기업의 인프라 관리 책임은 줄어들지만 신원, 권한, 데이터 사용과 같은 책임까지 없어지는 것은 아니다.

IaaS·PaaS·SaaS의 가장 큰 차이는 관리 범위다

관리 영역 IaaS PaaS SaaS
물리 데이터센터 사업자 사업자 사업자
물리 서버·스토리지 사업자 사업자 사업자
가상화 기반 사업자 사업자 사업자
운영체제 사용자 중심 사업자 중심 사업자
실행 환경·미들웨어 사용자 중심 사업자 중심 사업자
애플리케이션 사용자 사용자 사업자
사용자 데이터 사용자 관리 필요 사용자 관리 필요 사용자 관리 필요
계정·접근권한 사용자 관리 필요 사용자 관리 필요 사용자 관리 필요

온프레미스부터 SaaS까지 기업과 클라우드 사업자의 관리 범위가 변화하는 구조

실제 책임 범위는 개별 서비스와 계약에 따라 달라질 수 있으므로 기본 개념을 이해하기 위한 구조로 보는 것이 적절하다.

IaaS → 사용자의 제어 범위가 넓고 운영 책임도 큼

PaaS → 플랫폼 운영 부담 감소

SaaS → 완성된 애플리케이션 중심으로 사용

같은 기업에서도 세 모델을 함께 사용할 수 있다

기업이 IaaS, PaaS, SaaS 중 하나만 선택해야 하는 것은 아니다.

실제 기업에서는 업무 특성에 따라 여러 모델을 동시에 사용할 수 있다.

기업이 IaaS·PaaS·SaaS를 업무별로 함께 사용하는 클라우드 아키텍처

기업 홈페이지 → IaaS 가상 서버

신규 웹 애플리케이션 → PaaS

이메일과 협업 도구 → SaaS

클라우드 전략은 어느 한 모델이 가장 좋다는 판단보다 각 업무에 필요한 제어 수준, 운영 역량, 비용, 보안 요구사항을 기준으로 적합한 모델을 선택하는 것이 중요하다.

클라우드를 사용하면 확장 방식도 달라진다

기존 온프레미스 환경에서는 서버 사용량이 증가하면 장비를 추가 구매해야 할 수 있다.

클라우드에서는 필요에 따라 가상 서버 수를 늘리거나 CPU와 메모리를 확장하고 추가 스토리지를 할당할 수 있다.

서비스 수요가 감소하면 자원을 줄이는 것도 가능하다.

그러나 자원을 쉽게 추가할 수 있다는 점은 관리가 부족할 경우 비용 증가로 이어질 수도 있다.

따라서 클라우드에서는 자원 사용량과 비용을 지속적으로 관리하는 운영 체계도 중요하다.

클라우드와 온프레미스는 관리 책임의 위치가 다르다

온프레미스에서는 기업이 데이터센터나 전산실부터 서버, 네트워크, 운영체제와 애플리케이션까지 대부분 직접 관리한다.

클라우드에서는 사용하는 서비스 모델에 따라 이러한 책임의 일부를 클라우드 사업자가 담당한다.

온프레미스 → 대부분 기업 관리

IaaS → 물리 인프라 중심 사업자 관리

PaaS → 플랫폼까지 사업자 관리

SaaS → 애플리케이션까지 사업자 관리

서비스 모델이 SaaS 방향으로 이동할수록 기업의 인프라 운영 부담은 줄어들 수 있지만 사업자 서비스 구조에 대한 의존도는 높아질 수 있다.

클라우드 보안에서는 공유 책임을 이해해야 한다

클라우드 사업자가 물리 데이터센터와 기반 인프라를 안전하게 운영한다고 해서 기업의 모든 보안 책임이 사라지지는 않는다.

IaaS에서는 운영체제 패치가 사용 기업의 관리 영역이 될 수 있고, SaaS에서는 사용자 계정과 접근권한, 데이터 공유 설정이 중요한 관리 영역이 될 수 있다.

따라서 클라우드에서는 서비스 제공자가 담당하는 영역과 사용 기업이 담당하는 영역을 명확히 구분해야 한다.

클라우드를 사용한다고 보안 책임이 없어지는 것이 아니라 보안 책임의 범위와 위치가 달라진다.

IaaS·PaaS·SaaS는 서비스 수준의 차이다

IaaS·PaaS·SaaS를 단순히 세 가지 클라우드 제품 종류로 외우면 실제 구조를 이해하기 어렵다.

IaaS는 서버·스토리지·네트워크와 같은 기본 인프라를 제공한다.

PaaS는 그 위에 애플리케이션을 실행할 수 있는 플랫폼까지 제공한다.

SaaS는 완성된 애플리케이션 자체를 제공한다.

IaaS → 인프라를 빌린다.

PaaS → 애플리케이션 실행 환경을 빌린다.

SaaS → 완성된 소프트웨어를 사용한다.

기업이 클라우드 서비스를 선택할 때는 기술 이름보다 다음 세 가지를 먼저 확인하는 것이 도움이 된다.

어디까지 직접 제어해야 하는가.

어디까지 직접 운영할 역량이 있는가.

어떤 영역의 책임을 클라우드 사업자에게 맡길 것인가.

이 기준을 이해하면 이후 퍼블릭·프라이빗·하이브리드 클라우드, 공유 책임 모델, VPC, 클라우드 IAM과 같은 개념도 자연스럽게 연결해 이해할 수 있다.

참고자료

  1. NIST SP 800-145 - The NIST Definition of Cloud Computing
  2. NIST SP 500-322 - Evaluation of Cloud Computing Services Based on NIST SP 800-145
  3. NIST CSRC - Cloud Computing