IaaS PaaS SaaS | Cloud

이주원·2021년 10월 19일
8

클라우드

목록 보기
1/2
post-thumbnail

IaaS, PaaS, Saas가 뭔가요?

IaaS, PaaS, SaaS는 모두 클라우드 컴퓨팅을 기준에 따라 분류한 분류체계입니다. 과거엔 IT 인프라의 모든 부분을 개발자가 관리해야 했지만, 이제는 일정 부분만 개발자가 관리하고, 나머지는 클라우드에서 제공하는 형태가 도입되었습니다. 이에 따라 얼마만큼을 개발자가 관리하고, 얼마만큼을 클라우드에서 제공받는가에 따른 분류로 나누어진게 바로 IaaS, PaaS, SaaS인 것이죠.

이 표에서 흰 부분이 개발자 관리 영역, 노란 부분이 기업(클라우드)에서 관리해주는 영역입니다.

Packaged Software

On-premise(온프레미스) 라고도 합니다.
물리적인 장치, 하드웨어, 환경을 직접 구성해야 합니다. 이 환경에는 OS, 네트워크, 트래픽 등이 포함됩니다. 이 모든 것을 사용자가 관리해야 하기 때문에 매우 많은 비용을 소비하게 됩니다. 온프레미스는 클라우드 컴퓨팅 기술이 나오기 전까진 일반적인 인프라 구축 방법이였습니다.

장점

  • 정보의 보안성을 높게 관리할 수 있다

단점

  • 시스템 구축에 많은 비용이 들어간다

IaaS (Infrastructure As A Service)

서버, 네트워크, 스토리지를 가상화하여 제공하고 관리합니다. 따라서 사용자는 OS와 그 상위 계층만 구성하면 됩니다. 대표적인 예로 AWS의 EC2가 있습니다. EC2에선 서버와 네트워크, 스토리지를 준비하지 않아도 원하는 스펙과 OS를 선택해 사용할 수 있습니다. OS를 AWS에서 제공한다는 느낌이 나긴 하지만, 사용자가 OS를 직접 선택하므로 대표적인 IaaS라고 부를 수 있습니다.

장점

  • 가상서버 하위레벨(서버, 스토리지 등)에 대해선 사용자가 고려할 필요가 없습니다.

단점

  • 가상서버 하위레벨에 접근하거나 관리할 수 없습니다.
  • 따라서 하위레벨에 접근할 필요가 없는 사용자가 쓰기에 적합합니다.

PaaS (Platform As A Service)

사용자가 응용 프로그램을 작성할 수 있도록 플랫폼을 제공하는 모델입니다.
OS, 네트워크, 스토리지 등을 고려할 필요가 없습니다. 따라서 사용자가 응용 프로그램을 빠르게 개발하고 서비스 할 수 있게 도와줍니다.

IaaS와의 차이점은 IaaS가 EC2같은 가상환경을 제공하는거라면, PaaS는 Node.js, Java와 같은 런타임을 미리 깔아놓고, 그곳에 사용자가 소스코드를 넣어 돌리는 구조입니다. 따라서 사용자는 이미 런타임 등이 설치된 플랫폼에 소스코드만 넣어서 빌드하는 것이기 때문에 관리가 매우 편리합니다.

대표적으로 Heroku가 있습니다.

장점

  • 사용자는 소스코드만 넣어서 돌리면 되기 때문에 관리가 매우 편합니다.

단점

  • 클라우드가 제공하는 환경을 이용해야 하기 때문에 개발 환경의 자유도가 제한될 수 있습니다.

SaaS (Software As A Service)

설치할 필요 없이, 클라우드를 통해 이용하는 서비스입니다.
위 그림처럼 사용자는 어떠한 부담 없이 Service를 사용할 수 있습니다.

대표적으로 Mail서비스, Cloud서비스가 있습니다.

장점

  • 사용자는 웹만 접속하면 되기 때문에 사용하기 쉽습니다.
  • 웹 상에서 제공되는 서비스 이기 때문에, 업데이트 시 그 즉시 업데이트가 제공됩니다. 따라서 항상 최신 버전의 서비스를 이용할 수 있습니다.

단점

  • SaaS 서비스를 사용할 경우, 클라우드 서버에 대한 권한은 없으므로 해당 서비스의 보안도 전체적으로 서비스 제공업체의 몫입니다. 따라서 서비스 제공업체에서 보안이 제대로 이루어지지 않는다면 데이터 유출 사고로 이어질 수 있습니다.

References..

클라우드 서비스 이해하기

[백엔드] 클라우드 컴퓨팅

틀린 정보 지적 환영합니다~

0개의 댓글