개발 지식

클라우드 서비스 IaaS, PaaS, SaaS란?

연구소장 J 2022. 10. 25. 21:28

As-a-service 

 

IaaS(Infrastucture-as-a-service), PaaS(Platform-as-a-service), SaaS(Software-as-a-service)의 차이점은 뭘까?

 

우선 "As-a-service" 가 무슨 뜻인지 알아야 한다. "As-a-service"는 보통 제 3자로부터 제공받는 클라우드 컴퓨팅 서비스를 뜻한다. 클라우드 컴퓨팅 서비스를 이용하면 사용자는 더 적은 온-프레미스 인프라를 관리하게 된다. 

 

온-프레미스 인프라는 사용자에게 많은 책임을 전가한다. 만약 모든 하드웨어와 소프트웨어가 온-프레미스라면, 사용자는 모든 것을 유지보수 및 관리해야 한다. 하지만 제 3자로부터 클라우드 컴퓨팅 서비스를 제공받는다면 많은 부분의 관리를 제 3자에게 맡기고 더 중요한 것에 집중할 수 있다.

 

클라우드 컴퓨팅에 더 알고싶다면 다음을 참고하자.

 

 

 

[AWS] AWS란? 온프레미스(On-premise)와 클라우드(Cloud)

온-프레미스(On-premise)와 클라우드(Cloud) AWS에 대해 알기 위해선 온-프레미스와 클라우드에 대해 알아야 한다. 온-프레미스 저장소는 회사의 서버가 조직의 인프라 내에 호스트 되어 있으며, 많은

code-lab1.tistory.com

 

 

이러한 클라우드 컴퓨팅 서비스들을 대표하는 3가지 타입이 바로 IaaS, PaaS, SaaS이다.

 

간단하게 설명하자면 IaaS, PaaS, SaaS는 다음과 같다.

 

 

1. IaaS(Infrastucture-as-a-service) : 서비스로 제공하는 인프라

-> 클라우드를 통해 저장공간, 가상화와 같은 인프라를 제공한다.

 

2. PaaS(Platform-as-a-service) : 서비스로 제공하는 플랫폼

-> 클라우드를 통해 플랫폼을 제공한다.

 

3. SaaS(Software-as-a-service) : 서비스로 제공하는 소프트웨어

-> 클라우드를 통해 소프트웨어를 가상화하여 제공한다. 

 

 

위 3가지 서비스가 어떤 것들을 제공하는지 좀 더 자세히 알아보자.

 

 

 

IaaS PaaS SaaS
[그림 1] IaaS, PaaS, SaaS (출처 : 참고1)

 

[그림 1]은 On-site(사용자가 모든 것을 관리하는 환경), IaaS, PaaS, SaaS에서 사용자가 관리하는 것과 서비스 제공자가 관리하는 것들을 정리한 것이다.

 

 

IaaS(Infrastucture-as-a-service)

IaaS는 네트워킹, 저장공간, 서버, 가상화 등 사용자가 온-프레미스 인프라를 갖추지 않아도 될 정도의 인프라 서비스를 제공한다. 사용자는 O/S 이상의 것들만 신경 써서 관리하면 된다. 즉 O/S, 미들웨어, 런타임, 애플리케이션, 데이터 등만 관리하고 그 하위의 것들은 제 3자에게서 클라우드 서비스로 관리받는다.

 

보통 사용자는 API나 대시보드 등을 통해 인프라에 접근 및 통제할 수 있다. 만약 사용자가 인프라를 확장하고 싶다면 필요한 만큼의 컴포넌트만 구매할 수 있어 유연한 대처가 가능하다. 따라서 필요한 만큼만 사용하고 사용한 정도만 금액을 내면 되기 때문에 온-프레미스 방식보다 비용을 줄일 수 있다.

 

IaaS를 사용할 때 믿을만한 제공자를 선택한다면 보안상의 이슈에도 큰 장점을 얻을 수 있다. AWS, Microsoft Azure, Google Cloud와 같은 제공자의 IaaS를 제공받는다면 신뢰성 높은 보안의 인프라를 사용할 수 있게 된다.

 

 

장점

  • 사용자가 인프라를 직접 관리하지 않아도 된다.

 

단점

  • 장점이 곧 단점이다. 사용자가 인프라를 직접 관리할 수 없기 때문에 컨트롤할 수 없다.

 

 

 

예시

 

AWS의 EC2를 이용하면 사용자는 물리적인 서버를 구축하지 않아도 원하는 OS를 설치해 서버로 사용할 수 있다. 

 

 

 

PaaS(Platform-as-a-service)

PaaS는 클라우드 서비스를 통해 플랫폼을 제공한다. PaaS는 O/S, 미들웨어, 런타임과 같은 플랫폼을 가상화하여 제공하고 관리해준다. 따라서 사용자는 애플리케이션과 데이터만 관리하면 된다. 

 

주로 애플리케이션을 개발하는 사용자에게 유리하다. 빌드와 배포를 위한 환경을 제공자가 제공해주기 때문에 사용자는 소프트웨어를 업데이트하거나 하드웨어를 유지 보수하는데 신경 쓰지 않고 오직 애플리케이션 개발에 집중할 수 있다.

 

 

장점

  • 플랫폼을 제공받기 때문에 사용자가 애플리케이션 개발에 집중할 수 있다.

 

단점

  • 플랫폼이 제공되기 때문에 애플리케이션이 플랫폼에 종속되어 다른 플랫폼으로의 이동이 어려울 수 있다.

 

 

예시

 

Heroku, Red Hat OpenShift 등 

 

 

SaaS(Software-as-a-service)

SaaS는 클라우드 컴퓨팅 서비스 중 가장 포괄적인 형태로, 웹브라우저를 통해 제공자가 제공하는 하나의 애플리케이션이다. 

 

SaaS는 제공자가 소프트웨어를 업데이트하고, 버그를 고치고, 유지보수를 한다. 소프트웨어를 사용하기 위해 로컬에 따로 설치할 필요 없이  API 또는 대시보드를 통해 애플리케이션에 접근할 수 있다. 

 

 

 

장점

  • 웹에 접속할 수 있으면 언제 어디서나 소프트웨어를 사용할 수 있다. 
  • 사용하기 간단하고 최신 업데이트를 빠르게 제공받을 수 있다.
  • 구독 기반으로 여러 요금제 옵션을 제공해 확장성과 유연성을 가진다.

 

단점

  • 데이터 노출과 같은 보안상의 이슈가 있을 수 있다.

 

예시

 

구글 클라우드, 웹 메일, MS 오피스 등 우리가 자주 사용하는 서비스들

 

 


참고

 

1. https://www.redhat.com/en/topics/cloud-computing/iaas-vs-paas-vs-saas

2. https://www.whatap.io/ko/blog/9/

3. https://freshdesk.com/ko/kblogs/iaas-paas-saas/

반응형