IaaS, PaaS, SaaS – as a Service의 개념과 역할
IaaS? PaaS? SaaS? – as a Service의 시초와 종류에 대해 알아보고, 비유를 통해 쉽게 이해해보자.
들어가며…
안녕하세요, 오픈마루입니다.
여러분은 as a Service에 대해 얼마나 잘 알고 계신가요? as a Service 라고만 하면 조금은 생소하지만, SaaS라는 단어는 대부분 들어보셨을 겁니다.
특히 SaaS 같은 경우 일상에 아주 깊숙히 스며들어 일상생활에서도 많이 사용하고 있는 서비스들인데요.
오늘은 마케터가 보는 관점에서의 쉽게 이해 할 수 있는 as a Service에 대해 자세히 알아보도록 하겠습니다.
~as a Sevice (~aaS) 란?
~as A Service를 이해하기 위해 등장 배경에 대해 알아봅시다.
아주 처음엔 컴퓨터를 사용하기 위해선 물리적인 장비를 모두 갖추어야 했습니다. 실물로서 존재하는 컴퓨터 장비가 있어야만 사용할 수 있었죠.
하지만 기술이 발전하면서 가상화라는 개념이 등장하게 됩니다. 가상화는 물리 서버에서 리소스를 나누어 가상서버 여러 개를 기동할 수 있는 컴퓨팅 환경입니다.
이전엔 각각의 서버를 두어 사용해야 했기에 물리 서버에 대한 비용이나 공간적 부담이 있었지만, 하나의 물리서버에 여러 가상서버를 띄울 수 있게 되면서 효율적인 운영이 가능해졌습니다.
과거 기업들은 데이터 센터를 직접 구성하거나, IDC센터, 호스팅 업체에 맡기는 방식들로 운영하였습니다. 특히 사내 데이터는 아주 중요한 회사 자산이기때문에, 외부에 유출되지 않도록 하는 게 가장 중요했습니다. 하지만 가상화가 발전하고 퍼블릭 클라우드의 개념도 생기면서, As A Sevice 형태의 클라우드도 발전하게 되었습니다.
퍼블릭 클라우드를 처음 만든 회사는 바로 모두들 알고있는 아마존입니다. 아마존이 만든 AWS(Amazon Web Service)를 통해 아마존 내부의 업무 방식 개선은 물론 이윤도 창출하게 됨으로써 ~As A Service의 시초가 되었습니다. 아마존 웹서비스의 탄생 배경에 대해서는 아마존이 블랙 프라이데이 같이 사용자가 폭주하는 이벤트를 위해서 많은 서버를 가지고 있어서 평소 남는 서버를 외부에 빌려주는 서비스로 시작한 것이라는 설이 있지만, 실제로는 사용자가 원하는 만큼 사용할 수 있는 독자적인 주문형 컴퓨팅 사업을 기획한 것이라고 합니다.
2000년대 초, 아마존은 개발에 집중해야 할 개발자들이 개발 외에 필요한 다른 운영 환경에 들이는 리소스가 너무 많아 고민이었습니다. 개발만 해도 바쁜데, 운영 관리까지 하느라 정작 중요한 개발 업무에 지장이 있었으니까요. 물론 개발 운영 환경을 관리하는 건 꼭 필요한 일이지만, 개발 외에 들이는 리소스를 줄이기 위해 운영에 필요한 모든 자원을 가상 컴퓨터 환경으로 전환하기 시작했습니다. 클라우드 컴퓨팅 환경으로 전환 후 효과적인 인적, 물적 자원 개선하게 된 아마존은 이를 서비스 상품으로 만들어 다른 기업에게 운영 관리에 대한 댓가로 구독료를 지불 받게 됩니다.
구독료를 지불한다는 말, 익숙하지 않으신가요?
우리가 흔히 네이버 클라우드, 노션, MS 오피스 등 다양한 서비스를 구독료만 지불하면 이용할 수 있습니다.
말 그대로, 고객들은 각각의 독립적인 가상 컴퓨터를 제공 받아 사용한 만큼 돈을 지불하고, 서비스 제공 회사는 가상 컴퓨터의 서비스를 제공하는 역할을 합니다.
그 가상 컴퓨터 환경은 인프라가 될 수도, 소프트웨어가 될 수도 있습니다. 종류에 구애 받지 않고 클라우드 컴퓨터로 제공되는 모든 서비스를 뜻합니다.
이렇듯 보통 IT 관련하여 월 구독료를 지불하고 이용할 수 있는 모든 상품들은 ~As A Service (~aaS) 서비스의 일종이라고 보면 됩니다.
IaaS(Infrastructure as a Service)
아마존 웹 서비스(AWS)와 같이 컴퓨팅, 메모리 등의 가상 인프라를 제공하는 것을 뜻합니다.
가장 기본이 되는 인프라만 제공 받기 때문에 사용자는 인프라를 제외한 운영 환경의 전반적인 관리 책임을 갖게 되며, 인프라 운영을 하드웨어로 하지 않기 때문에 물리적 자원에 대한 부담과 공간의 제약을 줄일 수 있게 됩니다.
PaaS(Platform as a Service)
각종 인프라를 편리하게 사용하고 개발할 수 있게 플랫폼 형태로 제공됩니다.
대부분 개발에 특화된 기능들이 PaaS로 제공되기 때문에 시중에서 접할 수는 없고, 보통 B2B에 맞춰져 있습니다.
IaaS에서 제공되는 기본 인프라 위에 개발, 테스트, 배포를 위한 환경을 제공합니다.
따라서 개발자는 다른 운영환경에 신경 쓸 필요 없이 개발 및 실행에 집중할 수 있고, 다양한 개발 언어가 지원되어 유연하게 개발할 수 있습니다.
SaaS(Software as a Service)
이미 완성된 소프트웨어를 동일한 가격 혹은 차등을 두고 제공하는 서비스를 말합니다.
인프라, 애플리케이션 등 형태에 국한되지 않고 소프트웨어로 서비스한다면 전부 해당됩니다.
SaaS는 B2B, B2C를 가리지 않고 다양하게 서비스되어 널리 알려져 있죠.
노션, MS 오피스처럼 개인과 기업에 차등을 두기도 하고, 서비스 사용량이나 기능을 금액대 별로 차등 제공하기도 합니다.
IaaS / PaaS / SaaS 별 관리 책임 범위
위에 설명드린 것처럼, 어떤 범위까지 제공 받느냐에 따라 명칭이 달라지므로,
제공 범위를 한눈에 이해하자면 다음 표와 같습니다.
On-Premise | IaaS | PaaS | SaaS |
애플리케이션 | 애플리케이션 | 애플리케이션 | 애플리케이션 |
데이터 | 데이터 | 데이터 | 데이터 |
런타임 | 런타임 | 런타임 | 런타임 |
미들웨어 | 미들웨어 | 미들웨어 | 미들웨어 |
운영체제 | 운영체제 | 운영체제 | 운영체제 |
가상화 | 가상화 | 가상화 | 가상화 |
서버 | 서버 | 서버 | 서버 |
스토리지 | 스토리지 | 스토리지 | 스토리지 |
네트워크 | 네트워크 | 네트워크 | 네트워크 |
온프레미스는 모든 구성을 단계를 직접 구성 해야 하므로 운영 범위부터 유지 보수에 대한 비용이 정말 많이 듭니다.
초기 구성에서도 많은 돈이 들지만 시간이 흘러 데이터 양이 많아지면 더더욱 커지게되고, 3년에서 5년 주기의 수명을 가진 하드웨어 관리도 쉽지 않습니다.
그에 반해 IaaS / PaaS / SaaS는 위 표에서보는 것처럼 점점 직접 관리해야하는 범위가 줄어드니 크게 신경 쓸 필요가 없죠.
물론 월, 연 단위 구독료를 지불하다 보면 어느 시점에선 하드웨어의 비용을 넘어서기도 합니다.
하지만 유지보수와 운영에 대한 리소스가 줄어드는 것만으로도 만족하는 경우도 많아 기업의 상황에 맞게 적절히 선택하여 도입하게 됩니다.
IaaS | PaaS | SaaS | |
자유도 | 자유롭게 구성 | 중간 | 거의 불가 |
책임 및 관리 | 직접 책임 및 관리 | 중간 | 거의 없음 |
건물에 비교하여 as a Service 쉽게 이해하기
~as a Sevice를 건물에 비유하여 조금 더 쉽게 이해해볼까요?
IaaS(Infrastructure as a Service)
사옥을 짓기 위한 땅을 임대하는 것과 같습니다.
토지에는 기본적인 수도, 전기, 가스가 연결돼있고, 그 땅을 임대해 그 위에 무엇을 짓고 관리하든 고객의 주체로 이루어집니다.
PaaS(Platform as a Service)
이미 지어진 건물을 사옥으로 임대하는 것과 같습니다.
그 건물 안에서 어떤 층을 어떤 방식으로 구성하고 관리하든 고객 주체로 이루어지지만, 건물 부지는 고객이 관리할 필요가 없습니다.
SaaS(Software as a Service)
건물부터 사무실 구성까지 전부 세팅 돼있는 공유오피스를 임대하는 것과 같습니다.
공유오피스는 사무실의 위치나 사무실 가구, 환경 등 커스텀 할 수 있는 건 거의 없지만 고객은 사무실을 관리할 필요 없이 임대료만 지불하면 됩니다.
마치며
TaaS, LaaS, MaaS 등 계속해서 새로운 as A Service들이 나오고 있지만, 가장 근간이 되는 IaaS, PaaS, SaaS에 대해 알아보았습니다.
as a Service를 처음 접하신 분들은 많이 어려울 수도 있겠지만, 오픈마루 블로그에 다른 기술 컨텐츠들도 마련되어있으니 하나씩 읽다 보면 도움이 되시리라 생각됩니다.
오픈마루는 클라우드 네이티브, 오픈소스, 다양한 IT 자료는 물론 주기적으로 다양한 기술 컨텐츠를 업데이트 중이니 계속 지켜봐주세요.
NoSQL 데이터베이스 분류와 제품들 – SQL 없는 데이터베이스
/in JBoss, Tech Talk/by 오픈마루 마케팅3JBoss EAP 7 웹컨테이너 Undertow – 핵심 이해와 활용 방법
/in JBoss, Tech Talk/by 오픈마루 마케팅3JBoss Datagrid Queue 자료구조 구현 방법: Infinispan 설명
/in JBoss, Tech Talk/by 오픈마루 마케팅0Infinispan (http://infinispan.org/)은 레드햇/JBoss의 오픈소스 분산 메모리 Key/Value 데이터 그리드 솔루션입니다.