우리는 실생활에서 많은 클라우드 서비스를 이용하고 있습니다. 그러나 지금 이용하고 있는 서비스가 클라우드 서비스인지 잘 인지하지 못하는 것도 사실입니다. 그러면 어떤 서비스들을 클라우드 서비스라고 할 수 있을까요?
우리가 쉽게 예로 들 수 있는 서비스에는 대표적으로 구글이 있습니다. 우리는 구글 계정만 가지고 있으면 별도로 무언가를 설치하지 않아도 메일(지메일)을 보낼 수 있고 동영상(유튜브)을 감상할 수도 있으며, 파일을 저장(구글 드라이브) 할 수도 있습니다. 이렇게 웹 기반으로 다양한 서비스를 이용할 수 있는 부분도 일종의 클라우드 서비스라고 할 수 있습니다.
클라우드 서비스에는 여러 가지 서비스 유형들이 있습니다. 보통 IaaS, PaaS, SaaS라고 부르는 게 일반적인데 아마 생소한 분들도 계시고 아마 어디선가 한 번쯤 용어를 접해보신 분들도 계실 것이라고 생각합니다. 오늘은 위 세 가지 유형에 대해 같이 이야기를 해보고자 합니다.
우선 단어의 풀 네임부터 살펴보겠습니다.
IaaS : Infrastructure as a Service
PaaS : Platform as a Service
SaaS : Software as a Service
위 세 가지 단어에는 모두 as a Service라는 단어가 포함되어 있습니다. "서비스로 제공된다."라는 의미를 가지고 있는데 각각 인프라, 플랫폼, 소프트웨어를 서비스의 형태로 제공한다는 의미가 됩니다. 그렇다면 인프라, 플랫폼, 소프트웨어는 각각 무엇을 의미할까요? 하나씩 살펴보도록 하겠습니다.
IaaS는 Computing, Networking, Storage 등 서비스 개발, 운영에 필요한 인프라 리소스를 서비스로 제공하는 것을 의미합니다. 물리적인 자원들은 Cloud Service Provider가 제공하고, 사용자는 OS, 미들웨어, 애플리케이션을 구성하고 관리하는 부분에만 신경을 쓰면 됩니다.
IaaS는 기존의 데이터센터에서 제공하던 물리적인 리소스를 완벽하게 가상화하여 제공하기 때문에 서버 사양의 변경 등 물리적 자산의 변경이 필요한 경우 기존의 방식에 비해 훨씬 빠른 대응이 가능합니다.
PaaS는 고객에게 OS, 미들웨어, 런타임과 같은 소프트웨어 개발에 필요한 플랫폼을 가상화하여 제공합니다. 이 가상화된 플랫폼은 웹을 통해 제공되며, 개발자는 OS, Storage 또는 인프라에 대한 관리 없이 소프트웨어 개발에 집중할 수 있기 때문에 빠른 서비스 개발과 유연한 확장을 기대할 수 있습니다.
SaaS는 인프라부터 애플리케이션까지 모든 것을 Service Provider가 제공하기 때문에 별도의 패키지나 애플리케이션을 사용자의 컴퓨터에 설치하지 않고도 서비스 이용이 가능합니다. SaaS를 통해 서비스를 공급하는 기업은 서버, 데이터베이스 등 인프라뿐만 아니라 애플리케이션에서 발생할 수 있는 문제를 관리하기 때문에 고객은 다른 부분에 신경 쓰지 않고 본인이 원하는 비즈니스에 집중할 수 있습니다.
지금까지 클라우드 서비스의 유형에 대해 살펴보았습니다. 사실 우리가 일반적인 소비자로서 많이 이용했던 서비스는 SaaS 유형의 서비스라고 생각합니다. 하지만 새로운 서비스를 개발하고 운영하는 측면에서 보면 IaaS와 PaaS의 중요성도 매우 높다고 볼 수 있습니다. 우리가 이러한 클라우드 서비스의 특성을 이해하고 적절하게 사용한다면 좋은 서비스를 개발, 운영하는데 많은 도움이 될 것이라고 생각합니다.