goldenkiwi-coder 2025. 5. 11. 17:54

[ TERMS 08 ]  클라우드 서비스 모델

클라우드 서비스 모델을 설명하는 이미지(출처 : https://www.stackscale.com/blog/cloud-service-models/)

1. 클라우드 서비스 모델(Cloud Service Models)의 정의

 클라우드 컴퓨팅은 어떠한 서비스를 제공하는지에 따라 여러 모델이 존재한다. 대표적으로는 IaaS(Infrastructure as a Service), PaaS(Platfom as a Service), SaaS(Software as a Service)가 있다. 이 세 단어에 공통으로 붙어 있는 '-aaS'는 'As-a-service'의 약자로 클라우드 서비스를 가리킨다. 클라우드 서비스 사용자들의 니즈가 다양해짐에 따라 여러 종류의 모델이 생겨나고 있다.

 

2. 클라우드 서비스 모델은 어디서 접하게 될까?

 클라우드는 인터넷상의 서버에 사진, 각종 파일과 문서를 저장하는 공간이다. 인터넷만 연결되면 하드웨어에 상관없이 자료를 어디서든 자유롭게 사용할 수 있다는 편리함 덕분에 보편화 되고 있다. 단순히 파일을 저장하고 불러오는 것이 아니라 앱 개발을 위한 기본 기능을 제공하는 서비스도 있다. 필요에 따라 원하는 기능을 선택할 수 있다는 장점 때문에 비용과 효율성 측면에서 긍정적으로 평가되고 있다.

 

3. 클라우드 서비스 모델 알아보기

>  대표적인 클라우드 서비스 모델

on-site, IaaS, PaaS, SaaS를 비교하여 설명하는 이미지(출처 : https://www.redhat.com/ko/topics/cloud-computing/iaas-vs-paas-vs-saas)

  • IaaS

 IaaS에서 'I'는 'Infrastructure'이다. 인프라는 '기반 시설', '사업이나 업무를 진행하기 위한 필수적이고 기본적인 토대'를 의미한다. 이름에 걸맞게 클라우드 서비스 중에서도 가장 기본적인 형태의 서비스만을 제공하는 형태이다.

 데이터 관리를 위해 물리적인 서버를 직접 구축하려면 비용과 시간이 많이 든다. 만든다고 해도 활용률이 낮으면 자원을 낭비하는 형태에 가깝다. IaaS는 가상 서버, 스토리지, 네트워크를 제공하여 사용자가 물리적인 데이터 저장소를 갖추지 않고도 자원들을 관리하는 기반을 제공해 준다. 제공되는 기능들은 서비스 제공 업체에서 관리하기 때문에 사용자가 업데이트나 전반적인 관리에 신경을 쓸 필요가 없다. 기본적인 서비스만 제공하기에 다른 클라우드 서비스 모델보다 자율성이 높다. IaaS 서비스는 DigitalOcean, Linode, Rackspace, AWS, MS Azure 등이 있다.

 

  • PaaS

 PaaS에서 'P'는 'Platform'으로 클라우드에서 플랫폼을 제공하는 서비스이다. 플랫폼에는 개발자가 개발에만 온전히 집중할 수 있도록 갭라 관련 환경과 프로세스가 포함된다. IaaS가 제공하는 서비스에 더해 운영체제, 미들웨어, 런타임, DB관리 시스템, API등의 서비스를 추가로 갖추고 있다. 어느 정도 틀이 잡혀 있는 소프트웨어 프레임워크를 제공하기 때문에 이를 이용하여 원하는 형태의 앱을 빠르게 만들고 배포할 수 있다.

 PaaS에는 플랫폼 안에 내재한 요소들(workflow, directory service, 보안, 검색 관련 기능들)이 코드화되어 제공된다. 그러므로 PaaS를 사용하면 새로운 앱을 만들  때 처음부터 코드를 작성하지 않아도 되기에 코드 작성 시간을 줄일 수 있다. 또한 앱의 구축, 테스트, 관리와 업데이트까지 모든 과정을 도와주어 앱을 효율적으로 관리할 수 있다. 사용하는 서비스 만큼 비용을 지불하기 때문에 비용적인 측면에서도 이점이 존재한다. 대표적인 PaaS 서비스는 AWS Elastic Beanstalk, Windows Azure, Heroku, Google App Engine, Apache Stratos 등이 있다.

 

  • SaaS

 SaaS에서 'S'는 ' Software'이다. IaaS와 PaaS가 제공하는 서비스들을 모두 포함하며 거기에 소프트웨어 앱까지 제공하는 서비스이다. 개별 컴퓨터에 일일이 소프트웨어를 설치할 필요 없이 인터넷을 통해 클라우드 내의 프로그램을 사용할 수 있다. 소프트웨어 업데이트나 버그 수정을 포함한 전반적인 소프트웨어 관리를 서버 제공 업체에서 담당하기 때문에 사용자는 신경 쓸 부분이 거의 없어 매우 편리하다. 제공 서비스의 범위도 계속해서 다양화되고 있다.

 이미 만들어진 대로 이용하는 서비스가 대부분이기에 편리하지만 동시에 사용자가 원하는 대로 변경할 수 없다는 한계가 있다. 대표적인 SaaS 서비스는 Slack, Dropbox, Google G Suite, Salesforce 등이 있다.

 

>  다양해지는 클라우드 서비스 모델

 사용자의 니즈가 다양해짐에 따라 세세한 서비스를 제공하는 클라우드 모델들이 생겨나고 있다.

  • DaaS(Desktop as a Service)

 DaaS에서 'D'는 'Desktop'이다. 가상의 데스크톱을 제공하는 클라우드 서비스로 DaaS에서 제공하는 데스크톱에는 사용자에게 필요한 여러 앱이 설치되어 있어 실물 컴퓨터를 사용하는 것과 동일하게 이용할 수 있다.  VDI와 유사하나 관리주체가 VDI는 사용자고 DaaS는 서버 제공자라는 차이점이 있다. VDI는 온프레미스 방식의 데이터 센터에서 관리되며 DaaS는 클라우드로 외부 서버에서 관리된다.

 DaaS의 가장 큰 장점은 대량의 데스크톱 또는 VDI를 구비할 필요가 없다는 점이다. 예를 들어 큰 회사에서 갑작스러운 재택 또는 원격 근무 인원이 많아지는 경우가 발생하면 VDI는 인프라부터 구축해야 하기 때문에 급하게 몇백 명의 인원을 위한 VDI를 마련하는 것이 어려울 수 있다. 그럴 때 대안이 되는 것이 DaaS이다. 인프라까지 구축해야 하는 VDI와는 다르게 DaaS는 가상 데스크톱만 구매하여 사용하면 되기 때문에 훨씬 효율적이다. DaaS 서비스는 Amazone Workspaces, VMware Horizon등이 있다.

 

  • SECaaS(Security as a Service)

 SECaaS에서 'SEC'는 'Security'의 약자이다. SECaaS는 전ㄴ문화된 보안 기능을 클라우드 형태로 제공하는 모델이다. 회사가 보안 전문 인력을 갖추지 않아도 되기 때문에 사용자는 보안 부분의 비용과 인력을 절약할 수 있다. 쵯니 보안 툴을 사용해 유행하는 악성코드와 바이러스에 대응할 수 있다는 점이 강점이다.

SECaaS는 제공자에 따라 CSP(Cloud Service Provider)와 SSP(Security Service Provider) 두 종류로 나뉜다. CSP는 클라우드 서비스 제공자가 직접 보안 서비스를 제공하는 방식이다. 해킹으로 클라우드 내의 데이터가 유출되는 사고를 방지핟기 위해 클라우드 업체에서 직접 제공한다. 대표적인 예로는 마이크로 소프트 애저(MicroSoft Azure), 네이버 NCP 등이 있다. SSP는 보안 솔루션을 전문적으로 제공하는 업체에서 서비스를 제공하는 형태이다. CSP보다 보안에 특화되어 있다. 클라우드의 보안 전문성에 대한 요구가 증가하면서 서비스가 확장되고 있는 분야이다. SECaaS 서비스는 McAfee, Palo Alto Networks, Fortinet등이 있다.

 

  • FaaS(Functions as a Service)

 FaaS에서 'F'는 'Function'이다. FaaS는 앱 제작에 필요한 기능을 구현하는 함수를 제공한다. 소프트웨어 자체까지 제공하는 SaaS와 플랫폼을 제공해 소프트웨어 개발에만 집중하게 하는 PaaS 사이에 있다고 볼 수 있다. 앱을 제작하다 보면 이미지 파일을 데이터베이스에 저장하고 불러오는 기능처럼 데이터베이스에 접근하는 기능이 필요할 때가 있다. FaaS를 이용하면 이미지 파일 업로드 관련 기능을 따로 구축할 필요없이 바로 관련 함수를 선택해서 사용할 수 있다. 그리고 함수의 실행 횟수나 시간만큼만 비용을 내기 때문에 비용적인 측면에도 이점이 있다. 필요할  때만 원하는 기능을 사용하는 형태라서 유휴 시간(idle time)이 발생하지 않아 서버조차 필요하지 않다. 그래서 FaaS는 서버리스(serverless) 컴퓨팅에 속한다. 수요에 따라서 자동으로 스케일이 커지고 작아지기 때문에 사용자가 일일이 신경 쓰지 않아도 된다는 이점이 있다. FaaS 서비스는 AWS Lambda, Google Cloud Functions 등이 있다.

 

  • BaaS(Back-end as a Service)

 BaaS에서 'B'는 'Back-end'이다. BaaS는 백엔드 부분을 클라우드 서비스로 제공하는 형태이며 모바일 서비스에 특화되어 있다. 백엔드 부분을 제삼자에게 맡길 수 있으니 사용자는 자연스럽게 프론트엔드 쪽에 더 많은 인력과 자원을 할당할 수 있다. PaaS와 유사하지만 BaaS는 푸시 알림이나 사용자 인증 같은 앱 개발 시 자주 사용하는 서버 쪽 로직들을 API의 형태로 제공한다는 차이가 있다. BaaS 섭비스는 8Base, Apache Usergrid, AWS Amplify 등이 있다.

 

4. 클라우드 서비스 모델을 사용하는 이유

 클라우드 서비스 모델을 사용하면 회사의 한정적인 인적, 물적 자원으로도 서버측 관리를 용이하게 할 수 있다. 어떤 모델이든지 유형의 서버를 구축할 필요가 없으므로 비용 측면에서도 효율적이다. 서비스 모델이 다양해짐에 따라 상황에 맞는 모델을 선택할 수 있고 그 안에서도 필요한 기능만 구매하여 이용할 수 있다. 이러한 편리성과 효율성 덕분에 수요가 점점 늘고 있다. 클라우드 서비스 모델을 잘 활용한다면 자원을 효율적으로 투자하면서 원하는 기능을 구현하는것이 가능하다.

 

5. 클라우드 서비스 모델 더 알아보기

>  클라우드 서비스와 온프레미스 비교

 온프레미스는 개인이나 회사가 자체적으로 물리적인 전산실을 구축하여 서버를 운영하는 방식으로 원격 서버를 사용하는 클라우드와는 정반대이다. 클라우드 서비스가 보편화 되기 전까지 주로 사용되던 방법이다.

 온프에미스 방식의 가장 큰 단점은 비용이 많이 드는 것이다. 자체 서버를 구축해야 하므로 서버를 만들 공간부터 서버를 유지할 냉방 시스템까지 여러 방면으로 상당한 비용이 필요하다. 또한 서버를 유지하려면 지속적인 관리가 필요해 서버실을 관리할 전문 인력이 갖춰져야 한다.

 구축과 관리에 비용이 많이 들지만 온프레미스만의 장점도 존재한다. 사용자가 자체적으로 서버실을 보유하고 운용하기 때문에 제삼자에게 모든 정보를 맡기는 클라우드보다 안전하다. 그리고 온프레미스 방식을 사용하면 인터넷이 없어도 데이터에 접근할 수 있다. 인터넷의 불안정과 끊김 현상에서 자유롭다.

 온프레미스 방식으로 서버를 관리하다가 클라우드의 이점이 더 크다고 평가되면 클라우드로 이동하기도 하는데 이를 마이그레이션(migration)이라고 한다.

 

>  함께 알아 두면 좋은 용어

  • 하이브리드 클라우드
  • 공용 클라우드
  • 프라이빗 클라우드
  • 서버리스