'Rackspace Cloud'에 해당되는 글 1건

  1. 2010.09.21 SaaS 와 Cloud Computing 3


SaaS 와  Cloud  Computing



9월 중순 미국 샌프란시스코에서 개최된 오라클 오픈월드에서 오라 CEO인 래리 엘리슨은  아마존의 클라우드 컴퓨팅에 대한 정의에는 동의하나 Salesforce 에는 동의하지 못한다고  말했다.  CRM 분야에서 Salesforce가  SaaS 모델로  오라클의 기업용 CRM 시장에서 치열하게 경쟁하고 있는 것을 보면   그의  발언이 다소 정치고 영업적인 발언이라는 생각이 들 긴 하지만 이 기회에 SaaS와 Cloud 컴퓨팅에  대한  오해를 정리할 필요는 분명 있어 보인다.


필자는 과거 2000년 초 닷컴 버블 시절 그룹웨어 서비스를 ASP(Application Service Provider) 모델로 개발하여 서비스를 한 적이 있었다. 당시는 온라인으로 모든  것이 가능하다고 착각하던 시기였기 때문에 기존에 패키지나 인트라넷  형태로  구축. 제공되던  그룹웨어를  온라인으로  제공하고  월정액으로  받는 다는 모델은 많은 투자가와 벤터캐피털 등에게  관심을 끌었다.  그  결과 , 많은  투자도  유치했으며  무사히 서비스를  개발할 수 있었다.

그런데  당시 중요한 문제가 하나 숨어 있었다. 바로  다름 아니라  여러  기업  사용자들이  하나의  그룹웨어 서버를 공유하지 못했기 때문에 사용자가 증가할 수록 장비 투자를 계속해야 만 했었다.  특히, 당시 서버 장비는 고가의 선마이크로시스템즈 장비였고 소프트웨어 역시 오라클 등 고가의  소프트웨어를  사용할 수 밖에 없는 환경이었기 때문에 실제 투자 받은 자금 중 많은 부분을 장비 구매에 사용할 수 밖에 없었다.
또한 사용자의 개별적인 요구사항에 맞춰 서비스를 유연하게 변경하는 것도 불가능하였다. 이처럼 결국 사용자가 증가해도 손익분기점을 맞출 수 있는 인프라와 구조를 갖출 수 없었다.

결국 ASP 모델은  서비스의 구조적인 유연성과 인프라의 유연성 부족에서 실패할 수 밖에 없었다.

사용자 삽입 이미지

청계산 매봉에서 바라 본 구름

이후 필자는 2005년 다시 한번 유사한 모델의 서비스를 개발할 기회가 있었다.
씽크프리 오피스였다. 씽크프리 오피스는 기존에 데스크탑 패키지로 판매되던 워드 프로세스, 스프레드시트, 프리젠테이션 오피스를 온라인 웹 서비스를 통해  서비스로 판매하는 것이었다. 이 때 , 사람들은 이러한 서비스  모델을 ASP와 달리  SaaS(Software As A Service) 라고  부르기  시작했고  주요한 특징은 웹 브라우져만 있어면 언제 어디서나 인터넷을 통해 서비스를 이용하며 사용한 만큼 비용을 지불(Pay as you go)하는 것이다.

또한  얼마 지나지  않아  아마존 EC2 처럼 데이타 센타내에 하드웨어와 소프트웨어, 네트웍  등  시스템 자원을 인터넷을 통해 언제 어디서나 사용하고 사용한 만큼 비용을 지불하는 클라우드 컴퓨팅이 나타났다.  혹자는 이를 IaaS(Infrastructure As A Service)라고도 부른다.

그렇다면 이 두 모델 사이의 관계를 어떻게 될까? 먼저 결론부터 말하면 두 모델은 상호 보완적인 개념이며 다른 개념이다.  다시 말해, SaaS 제공자는 Cloud Computing 제공자의 Cloud 서비스의  사용자로서  이를 이용하여 SaaS 서비스를 제공한다. 즉, SaaS 개발자는 Cloud 서비스의 주요 사용자인 셈이다.  실제, 필자의 경우에도 씽크프리 오피스를 개발하던 시절에 아마존 EC2에서 제공하는 EC2와 S3 스토리지 클라우드 서비스를 이용하여 서비스를 하였으며 , 현재  넷플릭스 , 워싱턴포스트 , Zynga의 경우에도 현재  아마존 EC2를 사용하여 서비스를 제공하고 있다.

물론 이 두 모델 사이에는 인터넷을 통해 언제 어디서나 서비스를 제공받고 사용한 만큼 비용을 지불한다는 기존의 소프트웨어와 하드웨어를 판매하던 모델과는 완전히 다른 비지니스 개념을 사용한다는 공통점이 있다.

2008/12/24 - [Conference] - 클라우드 컴퓨팅 웍셥 발표 후기
2008/12/25 - [SaaS/Cloud] - SaaS(Cloud) Directory
2009/03/31 - [SaaS/Cloud] - Adsense for image
2009/03/31 - [SaaS/Cloud] - Amazon S3 현황
2009/04/13 - [SaaS/Cloud] - Context Cloud Computing
2009/04/30 - [SaaS/Cloud] - 클라우드 기반의 서비스 개발 환경 - Aptana
2009/05/04 - [SaaS/Cloud] - Above the Cloud
2009/11/10 - [SaaS/Cloud] - 대형SI업체들의 클라우드 사업에 대한 단상


이렇듯 SaaS/Cloud Computing 모델을 사용하는 것은 과거 ASP 모델이  안고 있던  서비스의  구조적인 유연성과 시스템 인프라의 유연성 문제를 일시에 해결해 준다. 구조적으로  SaaS 서비스는  ASP와  달리 하나의 서버에서 복 수 사용자를 최대한 처리할 수 있는 멀티터넌트 구조(Multi-tenant Architecture) 로 설계되고 서비스 된다. 이 때, 만약 하나의 서버에서  처리할 수 있는 최대량에 도달하게 되면 SaaS 서버는 증설돼야 한다. 이 때, 클라우드는 서버를 자동으로 증설하여 사용자가 증가하더라도 유연하게 대처할 수 있도록 해준다.  이러한 퍼블릭 클라우드 컴퓨팅을 제공하는 업체만 해도 아마존의 EC2를 필두로  Rackspace Cloud , GoGrid , FlexiScale , Microsoft Azure , Eucalyptus , Skytap 같은 전문 업체를  비롯해  MS의  Azure, 구글의 앱엔진  등 많은  퍼블릭 클라우드가  존재하여  이들 클라우드 기반하에 많은 SaaS 서비스가  제공되고 있다.

이렇듯 다양한 클라우드를 제대로 사용하여 서비스를 개발하고 운영하는 데에는 많은 지혜가 필요하다.

먼저  SaaS 개발시 특정 클라우드 인프라에 락인(Lock-in)되지 않도록 개발해야 한다.  다시 말해,  해당 SaaS를 다른 클라우드나 자체 프라이빗 클라우드(Private Cloud)로  이관하더라도  문제가 없도록 개발해야 한다.

- Cloud Computing이 유용한 경우는 초기 서비스를 런칭할 경우이다.

일반적으로 해당 서비스가 성공할지 실패할지 모르는 상황에서 무조건 장비에 투자하는 것은 바람직한 의사결정은 아니다. 그러나 해당 서비스가 성공하게 되면 여러가지 이유때문에 퍼블릭 클라우드를 이용하지 못할 수 있다. 가령, 고객의 요청에 따라 클라우드 컴퓨팅 업체에서 제공하는 SLA(System Level Agreement)보다 높은 SLA를 제공해야 할 경우 자체 구축한 프라이빗 클라우즈로 구축하고 옮겨야 한다. 이러한 상황에서 해당 서비스가 특정 클라우드에 의존적이라면 큰 낭패를 볼 수 있다.

- 신규 서비스 런칭시 적극적으로  퍼블릭 클라우드를 활용하는 것이 좋다.

신규 서비스는 실제 어느 정도의 사용자가 서비스에 가입하고 이용할 지 알 수가 없다. 아무리 무릎팍 도사라 할 지 라도 모른다. 따라서 이런 경우 클라우드를  가입하면 사용자가  급격하게 증가하더라고  이에 대해 적극적으로 대처할 수 있다. 실제 Zynga 경우 Farmville을 처음  2달 동안 일일 액티브 사용자가  20만 명 일 정도로  성공적으로 오픈하였다. 그 후 26주 동안 주당  1백만  사용자씩  증가하여  현재  월간  7천만  액티브  사용자가  사용하는 서비스로 성장하였다. 이러한  가파른  사용자  증가에도 불구하고 큰 문제없이 대처할 수 있었던 이유가 바로 EC2  클라우드를  사용하여  동적으로  서버의  용량을  증가시켜  대처했기 때문이다. 참고로 Zynga는현재 약 12,000개의 아마존  EC2 인스턴스를 사용중이라고 알려져 있다.

오라클, IBM, HP가 리드하고 있는 프라이빗 클라우드와  아마존 , MS,  구글  그리고 전문 업체 들이
리드하고 있는 퍼블릭 클라우드의 경쟁과 이를 통한 클라우드 시장의 확산은 필연적으로 SaaS 서비스의 확산을 가져올 것이다. 특히, 사용자 입장에서  이러한 퍼블릭과 프라이빗 클라우드의 전략적인 사용은 큰 경제적인 이점을 분명히 안겨줄 것이다.

[본 글은 ZDNet 컬럼에 기고한 글 입니다. ]

Posted by 박재현
,