MS 신현석 부장, "WOA + 클라우드 컴퓨팅 → IT 환경 최적화" |
한국MS 개발자 및 플랫폼사업총괄 신현석 부장 삼성SDS 정보통신본부 유니텔사업부 빌링시스템개발팀(시스템 개발자), 삼성네트웍스 솔루션사업부 프로젝트 리더 및 프로젝트 매니저, 삼성네트웍스 그룹1사업부 전자그룹사업1팀 기술영업, 2006년 MS 아시아태평양 웹 플랫폼 아키텍트 리드, 2007년 6월~현재 한국마이크로소프트 개발자 및 플랫폼 사업총괄 클라우드 컴퓨팅의 등장으로 웹 지향 아키텍처(WOA)가 더욱 중요해지고 있다. 예를 들면 세계인이 많이 사용하는 사진 공유 사이트인 플리커(Flickr)와 같은 사이트를 국내 개발자가 개발하고 싶다면 어떤 장애 요인이 있을까. 전 세계인을 상대로 한 사진 공유 사이트를 개발하고자 하면 수억 명의 사용자를 대상으로 서비스하기 위해 엄청난 양의 네트워크 장비와 웹서버, 데이터베이스 서버, 스토리지를 구매 및 설치, 운영해야 한다. 즉 매출 및 수익이 발생하기도 전에 초기 투자 비용이 엄청나게 투입돼야 한다는 것이다. 아이디어가 빛을 볼 가능성이 굉장히 적다. |
'분류 전체보기'에 해당되는 글 413건
- 2008.12.30 IT Today(아이티투데이) 12월호에 WOA 전문가 기고 2
- 2008.12.29 ISV를 위한 비즈니스 모델, SaaS
- 2008.12.24 Helsinki School of Economics (HSE) MBA를 통한 IT와 비즈니스의 접목 9
- 2008.12.22 한국커머스넷, 정보사회진흥원 주관 "ASP 비즈니스전략 세미나" 때 클라우드컴퓨팅 발표
- 2008.12.17 마이크로소프트 IT Trend 특강, "클라우드 컴퓨팅의 이해" 21
- 2008.12.15 ZDNET에 글이 게재되었습니다. "MS클라우드 컴퓨팅과 애저 서비스 플랫폼 이해"
- 2008.12.03 Windows Server 2008 고가용성 for Hyper-V 가상화 1
- 2008.12.03 The Clouds 2008, 클라우드 컴퓨팅 컨퍼런스에 초대합니다.
- 2008.11.26 서버 아키텍처 구성에 패턴 적용하기
- 2008.11.25 웹 개발의 빠르고 간편한 도우미, 마이크로소프트 무료 웹 플랫폼 설치기
ISV 들이 서비스 비즈니스에 쉽게 진입하지 못하는 이유는
첫째, 서비스 운영, 365일 * 7일 * 24시간
둘째, 데이터센터 관리
셋째, 인프라 구축에 대한 비용 부담 등이 대표적 입니다.
서비스 운영 및 데이터센터, 인프라에 대한 부담을 서비스 제공자가 담당하고, ISV들은 그 플랫폼 위에 핵심역량인 서비스를 개발하여 배포한다면 매월 고정적인 매출이 발생하는 새로운 비즈니스 모델의 발굴이 가능해 집니다.
아래 그림과 같이 Identity, Billing, Provisioning, Management에 대한 부분은 서비스 제공자가 담당하고, ISV는 애플리케이션 개발만 하면 되는 것이죠.
좀 더 구체화되면 블로그를 통해 공개하도록 하겠습니다.
IT 관련 업무를 약 15년 정도하면서 꼭 해보고 싶었던 것이 있었습니다. 물론 기술영업을 약 3년 정도 하긴 했었지만, 대부분의 시간을 개발, 시스템관리, DBA, SI, 그리고 Evangelism. IT에 대해서는 충분히 많은 영역을 해봤고 경험도 있지만 마케팅, 회계, 인사, 재무 등 비즈니스에 필수적인 부분에 대해 부족함을 느끼던 중 MBA에 자연스럽게 관심을 갖게 되었고, 그렇게 해서 입학하게 된 학교, Helsinki School of Economics(HSE) MBA 입니다. (IT Biz 전공)
제가 MBA를 선택할 때 고민했던 점은 이렇습니다.
1. 해외 석사 학위
2. 영어로 수업
3. 힘들어도 짧은 기간안에 끝낼 수 있는 과정
4. 상대적으로 저렴한 학비
5. 많은 동문을 통한 휴먼 네트웍의 확대 등
하지만, 저는 직장생활을 하고 있기에 내가 원하는 과정을 찾기란 정말 어려웠습니다. Duke MBA Inter Continental 과정, 영국의 Warwick MBA 등 온라인으로 할 수 있는 과정을 많이 찾아봤죠. 하지만 온라인 과정은 한계가 있을 것 같았습니다. 다양한 Case Study 등을 통해 Class Mate들의 경험과 나의 경험이 어우러져 실무에서 적용 가능한 토론이 이루어져야 하는데 온라인 과정은 그렇게 하기 힘들다는 판단 때문이었죠.
제가 원하는 모든 것들이 다 가능한 학교를 찾게 되었습니다. 직장생활을 계속하며, 주말에 영어로 수업하고, 기간도 비즈니스 프로젝트, 헬싱키 본교에서 2주간의 수업을 포함하여 1년 반이면 끝낼 수 있고 해외 석사 학위가 나오고, 학비도 상대적으로 저렴한 MBA, 헬싱키 경제 대학교(Helsinki School of Economics), 핀란드의 명문 대학교로 유럽에서 손꼽히는 명문 입니다.
- 주중반(월,수,금 4시간씩), 주말반 (토 8시간, 일 4시간), 영어/한국어 수업을 선택할 수 있습니다.
저는 주말/영어반을 선택하여 학업 중입니다.
지금까지 Marketing, Managerial Accounting, Management Communication, Human Resource Management, Management Economics, Operations Management 총 6개 과목을 마쳤습니다.
IT에 몸담고 있으면서 잘 알지 못했던 기업의 다양한 핵심적인 부분을 사업가의 관점에서 바라보다 보니 세상을 보는 시각이 넓어짐을 느낄 수 있습니다.
참고로 저는 HSE MBA 14기 이고 선배님들이 약 2,000분 정도 있습니다.
MBA에서 배운 내용을 바탕으로 앞으로 IT와 비즈니스를 접목하여 그린 IT, 클라우드 컴퓨팅의 기술적인 내용 이외에 실제 비즈니스에 어떻게 접목될 것인지에 대해 계속 글을 써보도록 하겠습니다.
지켜봐주세요.
실제 서비스를 개발하시는 ISV 분들이 많이 계셔서, 인프라 클라우드, 플랫폼 클라우드가 제공된다면 얼마든지 뛰어난 애플리케이션 클라우드 (SaaS) 애플리케이션들이 만들어질 수 있을 거라는 확신을 갖게 되었습니다.
더 많은 정보, 새로운 소식을 전해서 국내 ISV 및 개발자 분들이 글로벌, 전 지구를 상대로 비즈니스 하실 수 있도록 조금이나마 도움이 되었으면 좋겠습니다.
해당 내용은 이전 글에서 설명한 내용이라 별도로 올리지는 않겠습니다. ZDNET에 올린 글을 참고하시면 이해하는데 도움이 되실 것 같습니다. 또한, "마이크로소프트웨어" 2009년 1월호 특집에 "마이크로소프트와 클라우드 컴퓨팅"이라는 주제로 글을 기고 하였습니다. 관심 있는 분들은 읽어주시고, 피드백 부탁 드리겠습니다.
주요 내용은 아래와 같습니다.
- 클라우드 컴퓨팅이란
- 마이크로소프트 Azure Services Platform의 의미
- 시나리오 (엔터프라이즈, ISV, Startup, 일반 개발자)
- 현황 및 이슈
관심 있으신 분은 연락주시면 자료를 보내드리도록 하겠습니다.
바로 위의 링크를 클릭하시면 원문을 보실 수 있습니다.
마이크로소프트의 클라우드 컴퓨팅, 애저 서비스 플랫폼에 대해 쉽게 이해하실 수 있도록 설명해봤습니다.
ZDNET 인기기사로 올라갔네요. ^^ (클릭하시면 보실 수 있습니다)
감사합니다.
장애 조치(Fail Over)를 위한 클러스터링, 네트웍 로드 밸런싱(NLB)를 이용한 클러스터링 등 고가용성을 위해서 다양한 방식을 취할 수 있습니다. 가상화, 즉 Hyper-V를 사용하지 않고 물리적 서버들을 이용해서 클러스터링을 구성하거나, 로드밸런싱 하는 방식은 직관적으로 정해진 가이드를 따르면 됩니다. 그런데, 가상화 된 환경, 즉 호스트 서버(물리적 서버)와 가상 머신이 혼재된 상황에서의 클러스터링과 네트웍 로드 밸런싱은 이해하기가 쉽지 않습니다. 오늘은 이 부분을 좀 쉽게 정리해 보려고 합니다.
클라우드 컴퓨팅이 중요한 트렌드로 각광을 받고 있고, 그 기반 기술이 가상화 라는 것 아시죠? 이 가상화가 엔터프라이즈 및 중견 기업들의 인프라 구성에 큰 변화를 가져오고 있는 중입니다.
가상화의 가장 큰 장점은 물리적인 서버의 수를 줄일 수 있다는 것이고 결국 서버 구입 비용 절감, 전력 사용량 절감 등의 효과로 나타납니다. 고객들은 이러한 금전적인 이점 이외에도 LOB(Line of Business, 즉 ERP, SCM 등) 및 메시징 및 협업 소프트웨어 등의 가용성에 대해서도 향상되기를 원하고 있습니다. 가상화는 예를들면, 8대의 물리적인 서버를 1대의 호스트(물리적인 서버)에 8개의 가상머신으로 변경할 수 있기 때문에 장애가 발생하면 이전보다 그 피해규모가 훨씬 더 커지게 됩니다. Windows Server 2008과 Hyper-V를 통해 가상머신 자체와 가상머신에서 구동되는 워크로드(예, IIS 웹서버)의 고가용성을 보장해 줍니다.
고가용성
가용성의 의미는 사용자가 원하는 작업을 하기 위해 시스템에 접근할 수 있는 것입니다. 고가용성은 시스템에 문제가 있을 때에도 운영의 연속성을 보장할 수 있도록 디자인되고 구현되었기 때문에 항상 시스템에 접근할 수 있다는 것을 의미합니다.
Hyper-V의 고가용성은 Windows Server 2008 Failover Cluster (장애조치 클러스터)를 통해 이루어 집니다. 계획된, 계획되지 않은 장애 시 가상머신의 가용성을 획기적으로 향상시킬 수 있는 기능을 의미합니다. 가상머신들은
가상머신들은 Failover Cluster에 의해 관리될 수 있고, Failover Cluster는 가상머신을 모니터링하고, 가상머신에서 구동중인 워크로드를 이전하는데 사용될 수 있습니다.
호스트 및 게스트 머신들
"게스트"라는 말은 Hyper-V의 가상머신 환경의 운영체제를 의미합니다. "호스트"라는 말은 Hyper-V의 부모 파티션의 OS에 의해 관리되는 물리적 머신을 의미합니다.
호스트의 가용성은 "모든 계란을 한 바구니에 넣기", 즉 서버 통합이 가져올 수 있는 모든 이슈와 연계되어 있습니다. Windows Server 2008 Failover Cluster는 Hyper-V의 부모 파티션 (즉, 호스트)에 설정될 수 있고, 게스트들의 정상 작동 여부를 모니터링 할 수 있고, 클러스터의 각 노드 사이를 자유롭게 이동할 수 있습니다. 이렇게 되면 아래와 같은 장점들을 얻을 수 있게 됩니다.
. Hyper-V와 가상머신이 구동되는 물리적 서버가 업데이트, 변경, 리부트 되어야 할 때 가상머신들은 클러스터 상
의 다른 노드로 옮겨질 수 있습니다. 물리적 서버가 정상 서비스 상태로 되돌아오면 원래의 위치로 복귀할 수 있
습니다.
. Hyper-V와 가상머신이 구됭되는 물리적 서버에 장애 (머더보드 오류), 또는 급격한 성능 저하가 벌어지면 클러스
터 상의 다른 멤버가 가상머신의 소유권을 가져와 자동으로 서비스를 대신할 수 있습니다.
. 만약 가상머신에 오류가 생기면, 같은 Hyper-V에서 다시 재시작 하거나 다른 Hyper-V 서버로 옮겨질 수 있습니
다. Windows Server Failover Cluster에서 탐지가 되고 가상머신의 자원 속성정보에 설정된 값을 기준으로 복구
작업이 자동으로 이루어 집니다.
그림 1은 장애 상황에 대한 이해를 돕습니다. 우선 VM2가 호스트 A에 위치하다가, VM2가 호스트 B로 옮겨 갑니다. SAN 스토리지 LUN2를 호스트 A가 소유하고 있다가 호스트 B가 소유하는 것으로 바뀌었습니다. 고가용성을 보장받기 위해서는 가상머신이 어디에 위치할 것인지를 주의 깊게 살펴봐야 하고, 또한 Capacity와 성능을 함께 고민해봐야 합니다.
그림1. 가상머신이 새로운 호스트로 옮겨질 때 스토리지의 상태
노드들의 Capacity는 가상머신들의 장애가 발생 시 다 수용할 수 있을 만한 여유가 확보되어야 합니다. 즉, Capacity 및 성능을 고려하여 몇 개의 노드(즉, 개별 서버)는 아무 가상머신도 호스팅하지 않고 예비 상태로 설계되는 것이 필요합니다. 또한, 기본적으로 모든 워크로드들은 각 노드 상에 고르게 분포되는 것이 성능 유지를 위해 필요합니다. 이러한 작업에는 Capacity 및 배치 계획을 위해 System Center Virtual Machine Manager 2008 등의 관리도구가 유용 합니다.
게스트 가용성
게스트 가용성은 가상머신 내에서 구동되는 워크로드의 고가용성을 의미합니다. 일반적으로 파일, 프린터 서버, IIS 웹서버, LOB(Line of Business) 애플리케이션들을 의미합니다. 가상머신의 워크로드에 고가용성을 적용하는 것은 개별 물리적 서버의 고가용성과 거의 유사합니다. 솔루션은 특정한 워크로드에 따라 달라지는 거죠.
IIS 웹서버 등의 워크로드는 Windows Load Balance (NLB)를 통해 고가용성을 얻을 수 있는데, 여러대의 서버가 하나의 네트웍 이름의 일부로 사용될 수 있습니다. 가상 네트웍 네임으로 클라이언트가 요청을 하게 되고 NLB 클러스터 상의 하나의 노드에 연결이 맺어집니다. 각 IIS가 같은 웹 페이지, 데이터에 접근하는 웹 팜의 경우가 대표적이죠. NLB는 로드밸런싱과 유지보수 및 서버 장애시 잠시 빼내서 고가용성을 제공할 수 있도록 합니다. 만약 Hyper-V의 가상머신이 Windows Server 2008 (또는 NLB가 포함된 이전 Windows Server 버전)이면 게스트는 같은 Hyper-V 또는 다른 Hyper-V 호스팅의 게스트들과 NLB 클러스터의 멤버가 될 수 있습니다.
Windows Server 2008에서 구동되는 게스트는 워크로드의 고가용성을 위해 Windows Failover Cluster 기능을 사용할 수 있습니다. 바로 이것이 게스트 클러스터링이 장점입니다.
Workload Health 모니터링: Windows Failover Cluster는 클러스터와 연계된 자원 DLL을 호출할 수 있는 리소스 모니터를 가지고 있습니다. 각 리소스는 애플리케이션이나 서비스가 잘 동작하는지를 확인할 수 있는 모니터링 기능이 있습니다. isAlive/looksAlive 체크가 바로 그것이죠. 만약 호출중에 오류가 발생하면, 자원 자체가 오류가 되고, 설정된 정보에 따라 해당 서비스나 애플리케이션을 재시작하도록 하거나, Windows Failover Cluster 내의 다른 노드로 옮기도록 할 수 있습니다.
가상머신 유지보수: 가상머신, 운영체제, 소프트웨어의 설정을 변경해야 할 때 클러스터 상의 다른 노드로 워크로드가 옮겨질 수 있고, 최종 사용자의 작업에 최소한의 영향으로 가상머신이 셧다운 되거나 갱신될 수 있습니다.
호스트 머신 유지보수: 호스트 머신, 소프트웨어의 유지보수가 필요할 때 해당 머신에 존재하는 가상머신들은 클러스터 상의 다른 노드로 옮겨질 수 있고, 그 때 해당 호스트는 갱신되거나 리부트 될 수 있습니다.
가상 또는 호스트 머신의 장애: 물리적 Hyper-V 호스트, 가상머신의 게스트에 장애가 있을 때 Windows Failover Cluster 상의 다른 노드들이 장애를 탐지하고, 오류가 생긴 가상머신을 클러스터 상의 정상 작동하는 노드로 옮겨서 애플리케이션이나 서비스를 온라인 상태로 만들어 서비스를 진행합니다.
가상머신에 고가용성을 부여하는 방법
Failover Cluster 관리 도구의 고가용성 롤 마법사를 이용하면 간단하게 작업할 수 있습니다. Hyper-V 가상머신은 고가용성을 보장받기 위해 몇 가지 고려해야할 내용이 있습니다. 한 번 살펴보시죠
1. Failover Cluster 노드
. Failover Cluster의 일부인 각 물리적 서버를 노드라고 합니다. 호스트 클러스터링을 위해, Failover Cluster 서
비스는 Windows Server 2008 Hyper-V의 부모 파티션에서 구동됩니다. 이렇게 설정되면 동일한 물리적 서버에
구동되는 자식 파티션들을 고가용성을 갖도록 설정할 수 있습니다. 고가용성이 설정된 가상머신들은 Failover
Cluster 관리 컨솔에 자원으로 보여집니다.
2. 고가용성(HA) 스토리지
. 고가용성 가상머신은 VHD(Virtual Hard Disks), Passthrough Disks, Differencing Disks로 설정될 수 있습니
다. Failover 클러스터 노드간에 가상머신을 이동할 수 있으려면, 가상머신을 호스트 할 수 있는 노드, Failover
Cluster 서비스로 관리되는 노드들이 접근할 수 있는 스토리지 (디스크 관리에 디스크로 나타나는)가 있어야
합니다. Passthrough Disks는 failover cluster에 디스크 자원으로 추가되어야 하고, VHD 파일은 반드시
failover 클러스터에 디스크 자원으로 추가되어야만 합니다.
이 정도로 마무리 하겠습니다. 감사합니다.
본 글은 Technet, Steven Ekren의 "Virtualization: Achieving High Availability for Hyper-V"를 번역하였습니다.
오전에 기자간담회가 있는데, 기자 간담회 Q&A 세션에 저도 참가합니다. 후기는 공지하도록 하겠습니다.
이날 2건의 행사가 있습니다.
첫째, The Clouds 2008 행사 때 한국마이크로소프트에서는 NTO(National Technology Officer) 김명호 상무님이 "마이크로소프트와 클라우드컴퓨팅" 이라는 주제로 발표를 하십니다.
둘째, 마이크로소프트의 마케팅 매니저가 주관하는 Technet Secret Series가 또 있습니다.
일시: 2008년 12월 10일 1:30분 ~ 5:30분, 장소: 한국마이크로소프트 5층 세미나실
1:30분 부터 제가 "IT 트렌드 특강, 클라우드 컴퓨팅"으로 강의를 1시간 동안 진행합니다.
두 곳 중 한군데 와주세요. 감사합니다.
| |||||||
서버의 아키텍처를 구성할 때 활용하는 방법, 바로 아키텍처 패턴 입니다.
패턴은 소프트웨어 시스템의 컴포넌트, 서브시스템 등을 작성할 때 활용하는 설계도 입니다. 즉, 일반적인 상황에 대한 시스템 구조를 그릴 때 반복적으로 나타나는 유형을 묶어서 패턴이라고 하며, 이후의 유사한 상황에 활용하는 것입니다.
서버 유형, CPU 갯수 등을 포함하여 서버의 아키텍처를 그릴 때 패턴은 계속 활용되고 상세하게 발전할 수 있습니다. 오늘은 서버 아키텍처의 기본적인 패턴을 몇 가지 살펴보겠습니다. 가상화를 사용하고 있다고 가정하여 설명해보겠습니다.
1. 단일 호스트 서버
- Windows Server 2008, Hyper-V를 이용하여 작은 갯수의 가상머신을 운영하는 형태
. 서버 통합됨, 그렇지만 고가용성은 구성되지 않음
. 전원이 문제가 생기거나 호스트 Reboot 때 가상머신에 중단이 생김
. 개발 및 테스트 서버 환경, 소규모 회사, 지사 환경에서 사용
2. 클러스터 환경 (이중 노드)
- 2대의 Windows Server 2008, Hyper-V로 구성되고, iSCSI나 SAN을 이용한 공유 스토리지 사용
. 서버가 통합되고, 고가용성이 구성되어 서버의 안정성 및 가용성이 높음
3. 서버 Farm (다중 노드)
- 여러 대의 Windows Server 2008, Hyper-V로 구성되고, iSCSI나 SAN을 이용한 공유 스토리지 사용
- 하나의 클러스터안에 16개의 노드까지 구성 가능함
. 클라우드 컴퓨팅 등의 환경으로 발전할 수 있는 형태
즉, 고객의 현재 상황에 맞도록 가이드가 가능합니다.
(소규모 기업, 중견 규모 기업, 대기업, 공공기관 / 데이터센터)
마이크로소프트에서는 각 규모에 맞도록 서버 아키텍처 구성에 패턴을 적용할 수 있도록 가이드를 제공합니다.
사이징 역시 가장 큰 골칫거리 중의 하나죠. 이 부분에 대한 가이드도 포함 되어 있습니다.
그중의 하나가 첫째, MAP(Microsoft Assessment & Planning) 둘째가, SVAM(Server Virtualization Advanced Management) 입니다.
웹 사이트 개발을 시작하려고 할 때 뭐가 필요할까요? 개발도구, 프레임웍, 데이터베이스, 웹서버 등이 있어야 합니다.
이런 다양한 도구들을 사용하려면, 해당 파일이 있는 곳을 찾아서 다운로드, 설치, 셋팅하는 과정을 거쳐야 합니다.
무척 번거롭고 시간이 소요되는 작업입니다. 라이선스까지 필요하다면 더욱 복잡해지죠.
여기서 잠깐! 마이크로소프트의 무료 개발도구, 데이터베이스가 있다는 사실, 설마 아직도 모르시는 건 아니겠죠?
Visual Web Developer 2008 Express SP1, SQL Server 2008 Express Edition이 바로 그 주인공이죠.
물론 Visual Web Developer 2005 Express, SQL Server 2005 Express Edition도 있습니다.
여기에 .NET Framework 3.5 SP1, IIS6.0 이나 IIS7.0이 있다면 웹 개발이 바로 가능해집니다.
ASP.NET만 쓸 수 있는 것 아니냐고요? 천만예요. IIS6.0에는 장착이 필요하지만, IIS7.0에는 이미 내장된 FastCGI 모듈을
사용하면 PHP를 최고의 성능과 안정성을 제공 받으며 개발할 수 있습니다.
그런데, 앞에서 언급했 듯 각각의 도구를 개별적으로 다운, 설치하려면 불편하다는 겁니다.
이런 개발자들의 고민을 단번에 해결해드리는 "마이크로소프트 무료 웹 플랫폼 설치기"가 나왔습니다.
이 설치기를 이용하시면 위에서 언급한 개발에 필요한 모든 도구들을 한 번에 다운받아, 설치할 수 있게 됩니다.
위의 링크에서 Install Now (지금 설치하기)를 누르시면 됩니다. (현재까지는 Release Candidate 버전입니다)
이후의 과정은 "Your Choice"를 선택하신 후 원하는 도구, 프레임웍, 기능들을 선택하신 후 진행하시면
원하는 도구가 다운로드, 설치되는 지 확인하시면 모든 준비가 완료됩니다.