2013.06.03 09:05

 

<ZDNET 기사 http://www.zdnet.co.kr/news/news_view.asp?artice_id=20130530150608&type=xml>

 

엔터테이먼트 업계는 특정한 이슈에 따라서 트래픽이 폭주하는 것으로 유명합니다. 예를 들어서 소녀시대의 신곡이 나오는 시점에는 평소의 몇 배에 해당하는 트래픽으로 인해서 고민이 많은 분야입니다.

 

 클라우드로 전환시에 탄력적으로 서버 자원을 할당할 수 있으며 평소에 낮은 트래픽에 대해서는 최소한의 비용만 지불하면 되기에 오히려 클라우드로 전환한 후의 비용은 오히려 줄어드는 현상을 볼 수 있습니다.

 SM엔터테이먼트의 경우에도 2년간 20% 정도의 절감 효과를 보았을 뿐만 아니라 전 세계에 분산되어 있는 데이터센터 망을 활용할 수 있게 되면서 전반적인 서비스의 질이 향상되는 효과까지 함께 보았다고 합니다.

 

 소녀시대도 클라우드로 서비스 되는 시대가 왔네요 ^^

저작자 표시 변경 금지
신고
2012.01.09 10:45

아래 글은 마소에 기고한 내용을 다시 한번 블로그에 포스팅 했습니다.
국내 최대 잡지 마이크로소프트웨어(http://www.imaso.co.kr )

2011년을 돌아보면 클라우드가 많은 IT인에게 회자됐지만 정작 제대로 된 적용사례를 찾아보기 힘들었다. 필자는 이런 현상이 나타난 가장 큰 이유가 IT 구성원들이 클라우드를 제대로 이해하지 못했기 때문이라고 생각한다. 그러나 많은 IT 기업은 올해 사업계획에 클라우드를 포함하고 있다. 왜 그런지를 명확하게 말하기는 힘들지만, 대다수의 기업들이 클라우드 서비스의 필요성을 강하게 인식하고 있기 때문이라고 본다.

애저는 PaaS 기반의 클라우드
그래서일까? 최근 들어 필자에게 2012년도 사업에 윈도우 애저 도입을 고려하겠다는 기업들의 문의가 많아졌다. 실제로 몇몇 기업에서는 이미 윈도우 애저를 이용해 서비스 개발을 완료하고 운영과정 상에서의 문제점들을 문의하고 있다. 그만큼 윈도우 애저는 클라우드 플랫폼만이 가지고 있는 특징을 두루 갖춘 PaaS(Platform As Service)다.

<그림 1> 윈도우 애저의 구성

예를 들면 PaaS의 대표적인 특징 중 하나가 클라우드 인프라뿐만 아니라 서비스 개발을 위한 플랫폼이 함께 제공된다는 점이다. 만일 인프라만 제공되고 플랫폼이 제공되지 않는다면, 클라우드만이 가지고 있는 탄력적인 서비스만을 제공하는 용도에 그치게 된다.

이로 인해 서비스 과정에서 발생하는 보안, 인증, 관리, 계측 같은 일을 모두 서비스 개발 기업이 감당해야 하는 어려움이 발생한다. PaaS는 이런 것들을 기본적으로 제공하기 때문에 서비스 개발 기업은 비즈니스 모델 구현에만 집중하면 된다.

특히 마이크로소프트는 현재 원활한 윈도우 애저 운영을 위해 총 여섯 개의 데이터센터를 북미지역과 아시아 그리고 유럽에 각각 건설해 서비스하고 있다. 그만큼 윈도우 애저로 서비스를 개발하면 인프라를 걱정할 필요가 없는 셈이다. 아시아권에는 싱가포르와 홍콩 두 군데에 데이터센터가 있으며, 우리나라는 홍콩 소재의 데이터센터를 사용하면 빠른 접속을 보장받을 수 있다.

그 밖에 윈도우 애저 플랫폼에서 사용되는 자원들은 어떤 것들이 있을까?

- 계산(Compute) : 클라우드에서 서비스를 운영하고 계산하는 서버라고 이해하면 된다. 계산 자원은 크게 웹 서버를 담당하는 ‘웹 롤(Web role)’과 백그라운드에서 계산을 담당하는 ‘워크 롤(Work role)’로 나눠진다. 각각을 단일 윈도우 서버 환경으로 볼 수도 있지만, 로컬에서 사용하는 윈도우 서버와는 약간 다른 점이 있기에 완전히 동일하다고 보기는 어렵다.
- 저장소(Storage) : 저장소는 클라우드에서 데이터나 파일을 저장할 수 있는 공간이지 데이터베이스를 지칭하는 것은 아니다. 물론 윈도우 애저는 SQL 애저로 클라우드에서의 관계형 데이터베이스(RDB) 서비스를 제공하는 경우가 있다. 하지만 가격이나 용량을 고려해 봤을 때 저장소를 사용하는 것이 다수의 RDB를 사용하는 것보다 여러모로 유리하다.
- 패브릭 컨트롤러(Fabric Controller) : 서비스를 배포하고 관리하며 모니터링 하는 역할을 담당한다. 또 전체 플랫폼에 있는 시스템 소프트웨어를 업데이트하는 기능도 담당한다.
- 콘텐츠 전송 네트워크(CDN) : 국내에서 가장 활발하게 사용되고 있는 윈도우 애저 영역 중 하나가 바로 콘텐츠 전송 네트워크이다. 흔히 물리적인 거리가 2,000Km 이상 떨어지면 접근 및 전송 속도가 현저하게 떨어진다. 접속망의 경로나 상태에 따라 약간씩 편차가 있겠지만, 글로벌한 서비스를 하려면 각 지역별로 캐시 서버로 접속을 분산시켜야 한다.
CDN은 지역별로 노드를 설치해 신속한 접속을 보장하는 서비스이며, 국내에서 사용되고 있는 서비스 영역에서도 웹 서버의 부담을 줄이기 위해 별도의 CDN 서비스를 구축한다.
- Connect : 로컬 망과 윈도우 애저의 클라우드 망을 연결해주는 서비스이다. 쉽게 클라우드에서 로컬 망으로 가상사설망(VPN)을 열어주는 서비스라고 이해하면 된다. 폭주하는 서비스라면 클라우드를 사용하지만, 특정 서비스가 로컬 망을 사용한다면 Connect가 유용하게 사용될 수 있다.

전체적인 구성을 살펴봤으니 좀 더 세부적으로 각각의 구성요소를 살펴보자.

윈도우 애저의 구성요소

계산

필자 개인적으로는 계산이라고 표현하는 것이 적절한지 의구심이 생기지만 현재 가장 많이 통용되는 용어인 만큼 그대로 사용하겠다. 실제로 계산은 윈도우 애저에서 각각의 가상 머신을 나타내기 때문에 인스턴스(Instance)라고 부른다. 인스턴스는 역할에 따라 세 가지 중에 하나를 선택할 수 있다.

<그림 2> 윈도우 애저에서 제공되는 계산

- 웹 롤(Web Role) : 웹 기반의 응용프로그램을 개발하기 위해 제공되는 것으로 기본 구성은 웹 서버인 ‘인터넷 정보 서비스(IIS)’로 돼 있다. 또 ASP.NET이나 WCF(Windows Commu nication Foundation) 등도 제공된다.

별도의 닷넷 프레임워크를 구성하지 않아도 개발을 할 수 있는 웹 롤은 네이티브 코드 운영을 지원하기 때문에 PHP나 자바로도 운영할 수 있다. 하지만 일반적인 사용법대로 개발하면 예상치 못한 동작이 발생할 수 있기 때문에 사전 어떤 점이 달라지는지 미리 확인해둬야 한다.
- 워크 롤(Work Role) : 웹 롤이 웹 서버(IIS)를 기본 제공하고 웹 기반의 서비스 개발에 특화돼 있다면, 워크 롤은 웹 서비스 외의 서비스를 개발할 때 사용된다. 다시 말해 워크 롤은 복잡한 시뮬레이션을 수행하거나 미디어 파일을 인코딩 하는 등 외부로 노출하지 않는 순수 작업에 활용된다.

하지만 작업 결과는 결국 외부로 노출돼야 하므로 대부분 웹 롤과 함께 사용한다. 작업 진행 상태나 완료 등을 웹 롤에 전달하기 위해 큐(Queue)를 사용한다.
- VM 롤 : VM 롤은 PaaS 모델보다는 IaaS(Infra as Service) 모델에 가깝다. 쉽게 말해 클라우드 상에 가상 머신 하나를 제공받는다거나 가상화 버전으로 된 서버 호스팅 머신을 제공받는다고 생각하면 된다. VM 롤은 기존 로컬에서 운영되는 서비스를 최대한 수정하지 않고 웹으로 이전할 수 있게 해준다는 장점이 있다.

윈도우 애저를 이용해 클라우드 서비스를 개발할 때 반드시 닷넷 기반 기술을 사용해 웹 롤이나 워크 롤을 운영할 필요가 없다. 앞서 설명한 웹 롤과 워크 롤 그리고 VM 롤을 적절히 조합해 사용하면 된다.

또한 윈도우 애저 기반의 서비스를 호출할 경우에는 HTTP, HTTPS, TCP 등 다양한 방법을 사용할 수 있으며 부하는 로드 밸런서(Load Balancer)가 적절히 분산시킨다. 더 많은 성능이 필요한 경우에는 윈도우 애저 포탈에서 인스턴스를 추가 요청하면 되고, 부하가 줄어들면 인스턴스의 개수를 줄일 수도 있다.

저장소
윈도우 애저는 세 가지 종류(Blob, Table, Queue)의 저장소를 제공하는데, 저렴하고 안정적이라는 평가를 받고 있다.

<그림 3> 윈도우 애저의 저장소

먼저 Blob은 바이너리 데이터까지 저장할 수 있으며 단순하면서도 간단한 계층 구조를 가지고 있다. Blob은 1테라바이트까지 확장시킬 수 있으며, 사진의 위치 정보나 mp3 파일의 가수 이름 같은 메타데이터도 포함시킬 수 있어 사용이 편리하다.

Table은 Blob에 비해 좀 더 세부적이고 많은 컬럼을 가진 정보를 저장할 때 사용한다. 독자들 중에는 Table이라는 단어를 듣고 관계형 데이터베이스를 떠올릴 수 있겠지만, 이 둘은 데이터 구조만 닮았을 뿐 완전히 다르다. Table은 효율적으로 데이터를 분류해 관리할 수 있게 해주며, 수 테라바이트급 데이터를 저장하는 수십 억 개의 엔티티 저장이 가능하다.

마지막으로 Queue는 특정 웹 롤이나 워크 롤, VM 롤이 비동기적으로 일할 경우 이들을 서로 묶어주는 상태 유지 용도로 활용된다.

윈도우 애저 저장소인 Blob, Table, Queue 중 어느 곳에 정보가 저장되든 입력 내용을 세 번 이상 복제하기 때문에 특정 데이터가 물리적 혹은 논리적으로 손상돼도 쉽게 복원할 수 있다.

패브릭 컨트롤러

<그림 4> 패브릭 컨트롤러

<그림 4>에서 보는 것처럼 개발자가 만든 모든 서비스는 패브릭 컨트롤러에서 관리된다. 패브릭 컨트롤러는 물리적인 컴퓨터와 스위칭 장비 그리고 로드밸런서 등 윈도우 애저 상에 있는 모든 자원을 소유하고 관리한다.

또한 실행 중인 인스턴스를 실시간으로 모니터링 하고 새로운 상황을 업데이트 한다. 최적의 실행환경을 만들기 위해 하드웨어를 선택하고 오류를 복구하는 역할도 패브릭 컨트롤러에서 수행한다. 따라서 패브릭 컨트롤러는 윈도우 애저 생태계 전체를 관리한다고 해도 과언이 아니다.

CDN
CDN은 Blob에 저장된 데이터를 세계 각 지역에 설치된 노드로 공급하고, 어느 곳에서 접속하더라도 지연이나 전송 속도 저하 등을 최소화시키는 역할을 담당한다(<그림 5> 참조).

<그림 5> Content Delivery Network

최근 들어 국내 게임업체와 미디어 관련 업체들이 윈도우 애저의 CDN 서비스를 도입하는 사례가 많아졌는데, 다음과 같은 장점이 있기 때문이다.

- 글로벌하게 24개 노드를 가지고 있어 원활한 서비스 공급 보장
- 서울에도 노드가 있어 국내 서비스를 기반으로 한 글로벌 서비스 제공 시 유리
- 윈도우 업데이트, 빙 맵, Zune 비디오 등 마이크로소프트의 주요 서비스 제공
- 기존 CDN에 비해 저렴한 가격

특히 가격 정책에 주목해볼 필요가 있다. 기존 CDN 서비스들은 네트워크 트래픽의 최대치를 가격 기준으로 삼는 반면, 윈도우 애저 CDN은 사용량을 기준으로 산정한다. 따라서 도입에 따른 비용절감 효과를 톡톡히 볼 수 있다.

Connect
윈도우 애저와 로컬 시스템을 묶어주는 역할을 하는 것이 Connect다. Connect는 윈도우 애저 서비스와 로컬 시스템을 IPSec으로 터널링 해 연결한다. 이 경우 로컬 시스템에는 Endpoint agent가 필요한데, Endpoint agent는 IPv6에 의존하고 있기 때문에 윈도우 서버 2008, 윈도우 서버 2008 R2, 윈도우 비스타, 윈도우7에서만 지원한다.

<그림 6> 윈도우 애저 Connect

앞서 Connect 서비스를 VPN에 비유했지만 동작이 비슷할 뿐 VPN과 완전히 일치하는 것은 아니다. 오히려 필자가 보기에는 VPN보다 간단하지만 더 강력한 기능을 제공한다. 왜냐하면 Connect로 두 가지 목적을 달성할 수 있는데, 이것들은 주로 기업 환경에서 일어나는 시나리오와 일치하기 때문이다.

- 윈도우 애저 응용프로그램은 온-프라미스 데이터베이스를 직접 액세스한다. 예를 들어 어떤 조직에서 사용 중인 ASP.NET으로 작성된 윈도우 서버 응용프로그램을 윈도우 애저 웹으로 이동시키는 데 여기서 사용하는 데이터베이스가 온-프라미스에 있다고 가정하자. 윈도우 애저 Connect는 연결 문자열을 바꾸지 않고 다른 윈도우 애저 응용프로그램과 동일하게 온-프레미스 데이터베이스를 액세스할 수 있게 해준다.
- 윈도우 애저 응용프로그램을 온-프라미스 환경에 있는 도메인에 가입시킬 수 있다. 이렇게 하면 로컬 사용자가 클라우드 응용프로그램에서 싱글 사인 온(Single Sign-On)을 수행할 수 있으며, 기존 액티브 디렉터리 계정 및 그룹을 액세스 제어에 응용프로그램을 사용할 수 있게 된다.

정리하며
이 밖에도 윈도우 애저는 다양한 장점과 특징들을 가지고 있다. 그것들을 다 설명하기에는 지면이 너무 부족한 것 같아 아쉬움이 남는다. 필자의 블로그인 ‘영욱닷컴(http://youngwook. com)’에는 윈도우 애저와 관련된 내용들이 계속 업데이트되고 있으니, 관심 있는 독자들은 꼭 방문해보길 바란다.

참고자료
Windows Azure 플랫폼 홈 페이지 : http://www.microsoft.com/windowsazure
Windows Azure 플랫폼 소개, David Chappell : http://go.microsoft.com/fwlink/?LinkId=158011
Windows Azure Blob(Blob 저장소 프로그래밍) : http://go.microsoft.com/fwlink/?LinkId=153400
Windows Azure 테이블: 테이블 저장소 프로그래밍 : http://go.microsoft.com/fwlink/?LinkId=153401
Windows Azure 큐: 큐 저장소 프로그래밍 : http://go.microsoft.com/fwlink/?LinkId=153402

저작자 표시 변경 금지
신고
2011.12.09 08:50
저작자 표시 변경 금지
신고
2011.12.08 22:30
저작자 표시 변경 금지
신고
2011.12.08 12:30
저작자 표시 변경 금지
신고
2011.12.08 08:30
최근 국내에서 Windows Azure가 활발하게 도입되고 있는 사례를 보면 대부분 CDN서비스가 많습니다. 국내 환경도 다양한 콘텐츠가 존재하고 있고 이 콘텐츠의 서비스가 국내에만 국한되고 있지 않기 때문에 CDN 서비스를 사용하는 것이 일반화 되고 있습니다.

좋은 CDN 서비스란 최대한 이용자 가까이에서 안정된 서비스를 제공하는 것입니다. 그렇게 하기 위해서는 전 세계에 충분한 노드를 가지고 있어야 합니다. 특히 우리나라에서 비지니스를 하는 경우 국내를 기반으로 한 글로벌 서비스를 하는 경우가 많은데 이런 경우 국내에 서비스 노드는 필수적인 요소 입니다.

고객의 요구사항으로 CDN 서비스의 Edge 서버의 위치를 찾아 보니 현재 24개의 노드가 존재하고 있으며 그 중에 서울도 포함되어 있는 것을 확인했습니다. 
 아시아는 6군데 있는 데 홍콩, 서울, 싱가폴, 시드니, 타이페이, 도교등에서 서비스 되고 있습니다. 

아래는 Bing에서 제공하는 맵 서비스 (http://map.bing.com)을 사용해서 위치를 표현했습니다.

<그림1>아시아 지역 서비스 위치 
 

유럽지역 맵이 깨지네요.. 다시 올리겠습니다..............T.T

<그림2>유럽 지역 서비스 위치 
 

<그림3>북미 지역 서비스 위치 
 

<그림4>남미 지역 서비스 위치 
 

US/EMEA

US

  • Ashburn, VA
  • Bay Area, CA
  • Chicago, IL
  • San Antonio, TX
  • Los Angeles, CA
  • Miami, FL
  • Newark, NJ
  • Seattle, WA

EMEA

  • Amsterdam, NL
  • Doha, QT  NEW
  • Dublin, IE
  • London, GB
  • Moscow, RU
  • Paris, FR
  • Stockholm, SE
  • Vienna, AT
  • Zurich, CH

Asia-Pacific/Rest of World

  • Hong Kong, HK
  • São Paulo, BR
  • Seoul, KR
  • Singapore, SG
  • Sydney, AU
  • Taipei, TW
  • Tokyo, JP
참고자료: 

 

저작자 표시 변경 금지
신고
2011.12.07 12:30

저작자 표시 변경 금지
신고
2011.12.07 08:40

저작자 표시 변경 금지
신고
2011.12.06 12:30


  1. 다른 동영상 보기...
    The Windows Azure Camp [6/6] Perspectives of Azure from Local MVPs
  2. The Windows Azure Camp [6/5] Windows Azure Application Scenarios
  3. The Windows Azure Camp [6/4] Securing, Connecting, and Scaling
  4. The Windows Azure Camp [6/3] Understanding SQL Azure
  5. The Windows Azure Camp [6/2] Using Windows Azure Storage
  6. The Windows Azure Camp [6/1] Getting Started with Windows Azure

     

저작자 표시 변경 금지
신고
2011.12.06 08:50


Windows Azure에 대해서 설명하는 동영상입니다. 
비전문가가 보아도 이해할 수 있을 만큼 쉽게 중요한 속성들을 소개하고 있습니다. 
총 네개의 애피소드 중 마지막 동영상 입니다.

Episode 1 - What Is Windows Azure and Why Is It In the Cloud?
Episode 2 - The Windows Azure Development Experience 
Episode 3 - Moving Existing Applications to Windows Azure
Episode 4 - The Windows Azure TCO and ROI Calculator

 
저작자 표시 변경 금지
신고


티스토리 툴바