IaaS, PaaS, SaaS는 모두 클라우드 컴퓨팅을 기준에 따라 분류한 분류체계입니다. 과거엔 IT 인프라의 모든 부분을 개발자가 관리해야 했지만, 이제는 일정 부분만 개발자가 관리하고, 나머지는 클라우드에서 제공하는 형태가 도입되었습니다. 이에 따라 얼마만큼을 개발자가 관리하고, 얼마만큼을 클라우드에서 제공받는가에 따른 분류로 나누어진게 바로 IaaS, PaaS, SaaS인 것이죠.
이 표에서 흰 부분이 개발자 관리 영역, 노란 부분이 기업(클라우드)에서 관리해주는 영역입니다.
On-premise(온프레미스) 라고도 합니다.
물리적인 장치, 하드웨어, 환경을 직접 구성해야 합니다. 이 환경에는 OS, 네트워크, 트래픽 등이 포함됩니다. 이 모든 것을 사용자가 관리해야 하기 때문에 매우 많은 비용을 소비하게 됩니다. 온프레미스는 클라우드 컴퓨팅 기술이 나오기 전까진 일반적인 인프라 구축 방법이였습니다.
서버, 네트워크, 스토리지를 가상화하여 제공하고 관리합니다. 따라서 사용자는 OS와 그 상위 계층만 구성하면 됩니다. 대표적인 예로 AWS의 EC2가 있습니다. EC2에선 서버와 네트워크, 스토리지를 준비하지 않아도 원하는 스펙과 OS를 선택해 사용할 수 있습니다. OS를 AWS에서 제공한다는 느낌이 나긴 하지만, 사용자가 OS를 직접 선택하므로 대표적인 IaaS라고 부를 수 있습니다.
사용자가 응용 프로그램을 작성할 수 있도록 플랫폼을 제공하는 모델입니다.
OS, 네트워크, 스토리지 등을 고려할 필요가 없습니다. 따라서 사용자가 응용 프로그램을 빠르게 개발하고 서비스 할 수 있게 도와줍니다.
IaaS와의 차이점은 IaaS가 EC2같은 가상환경을 제공하는거라면, PaaS는 Node.js, Java와 같은 런타임을 미리 깔아놓고, 그곳에 사용자가 소스코드를 넣어 돌리는 구조입니다. 따라서 사용자는 이미 런타임 등이 설치된 플랫폼에 소스코드만 넣어서 빌드하는 것이기 때문에 관리가 매우 편리합니다.
대표적으로 Heroku가 있습니다.
설치할 필요 없이, 클라우드를 통해 이용하는 서비스입니다.
위 그림처럼 사용자는 어떠한 부담 없이 Service를 사용할 수 있습니다.
대표적으로 Mail서비스, Cloud서비스가 있습니다.
틀린 정보 지적 환영합니다~