1장 클라우드의 출현

개요

클라우딩 컴퓨팅 서비스는 전통적인 it 기업이 아니라 구글, 아마존, 세일즈포스닷컴 같은 인터넷 업체가 주도해 나갔다.
따라서 이 3개의 기업에서 제공하는 클라우드 컴퓨팅 서비스를 살펴보고 클라우딩 기술의 출현 배경과 기본 개념에 대해서 이해한다.

인터넷 서비스 업체의 클라우드

  1. 아마존의 인프라서비스
    • 클라우드 컴퓨팅 초기시장 선도(클라우드 컴퓨팅 등장 배경)
    • AWS(Amazon Web Services) 인프라 클라우드 서비스 제공 (IaaS)
    • AWS구성요소

      EC2(Elastic Cloud Computing) : 컴퓨팅 서비스 , 가상의 서버를 제공

      S3 (Simple Storage Service) : 대규모 스토리지 서비스

      SimpleDB : 대용량, 고가용 데이터베이스 서비스

      SQS (simple Queue Service) : 분산환경 메시지 큐 서비스

      RDS (Relational Data Service): 관계형 데이터베이스 서비스

  2. 구글의 컴퓨팅 인프라및 플랫폼 서비스
    • 검색 서비스를 구축하면서 내부적으로 클라우드 컴퓨팅 기술을 축척
    • 공개된 구글기술

      GFS(Google File System) : 수십 페타바이트 이상 대규모의 파일을 저장할 수 있는 파일 시스템

      MapReduce : 분산데이터 처리 프레임워크

      Bigtable : 대용량의 구조화된 데이터를 저장할 수 있는 분산 데이터베이스 시스템

      Sawzall : MapReduce 지원 스크립트

      Chubby : 분산 락 시스템, 분산시스템 전체 관리

    • 메일, Docs, 캘린더 등 서비스 제공 (SaaS)
    • Google App Engine Platform 서비스 제공 (PaaS)
      • 웹 애플리케이션 실행 환경 제공
      • 데이터 저장소 및 인터페이스 제공
      • 자동 확장및 부하 분산 처리
      • 구글 인프라 접근 및 사용 API 제공 (ex 사용자 계정)
      • 개발 sdk 및 tool 제공
      • 규서비스 제공
      • 배치서비스 제공
      • 부가 서비스 제공 (URL Fetch, Mail, Memcache, Image 등)
  3. 세일즈포스닷컴의 소프트웨어 서비스
    • Multi-Tenancy 서비스
    • AppExchange 스토어 운영
    • force.com platform 제공
  4. 뉴욕타임즈의 활용 사례
    • 2009년 오스카 시상식 관련 온라인 인기 투표 서비스
    • 과거 신문 pdf 제공 서비스

클라우드 컴퓨팅의 특징

Rapid Elasticity필요에 따라 자원의 확장과 감소를 처리 할수 있어야 한다
측정 가능한 서비스자원의 사용량이 실시간으로 수집되고 모니터링 되어야 한다
On-demand Self-Service사용자는 관리자 개입없이 원하는 시점에 서비스를 바로사용 할수 있어야 한다
Ubiquitous Network Access네트워크 기반의 다양한 클라이언트에서 접근 할 수 있어야 한다
Resoure Pooling물리적 자원이나 가상화된 자원은 pool 로 관리되야 한다

클라우드 컴퓨팅 정의

Cloud Computing

다양한 클라이언트 디바이스에서 필요한 시점에 네트워크를 이용해 공유 폴에 있는 자원에 쉽게 접근할 수 있는 것을 가능하게 하는 모델이다.

"Cloud Computing is a model for enabling ubiquitous convenient , on-demand network access to shared pool of configurable computing resources
that can be rapidly provisioned and released with minimal management effort or service provider interaction"

클라우드 컴퓨팅 분류

  1. 서비스 전달 방식
SaaS (Software as a Service)사용자는 네트워크를 접속해 애플리케이션을 설치하지 않고 사용할수 있도록 서비스를 제공함,

서비스 사용자는 소프트웨어가 사용하는 리소스에 대해 알 필요없음
PaaS (Platform as a Service)사용하는 애플리케이션이나 서비스가 실행되는 실행 환경을 제공받아 사용,

인프라자원에 대해 사용자는 알 필요가 없음
IaaS (Infrastructure as a Service)서버, 스토리지, 데이터베이스 등과 같은 시스템이나 서비스 구축에 필요한 자원을 서비스 형태로 제공함,

자원의 할당과 해제는 사용자가 직접, 즉시 수행할 수 있음
  1. 서비스 배치 방식
Public Cloud네트워크에 접속 가능한 모든 사용자를 위한 클라우드 서비스
Private CloudPublic Cloud 개념 중 일부를 제한된 네트워크상에서 특정 기업이나 특정 사용자만을 대상으로 하는 클라우드 서비스
Hybrid CloudPublic Cloud 와 Private Cloud 병행