RSS 구독
뉴스레터
[기고]오픈소스와 Xen 그리고 XenServer
by 도안구 | 2009. 03. 30

가상화는 최근 IT 업계에 가장 자주 등장하는 ‘단어’다.

인텔과 AMD 같은 x86과 x86-64 중앙처리장치 제조 업체들이 혁신을 단행하면서 메인프레임과 유닉스 환경에서 가동되던 수많은 기업용 애플리케이션들이 리눅스와 윈도우 환경에서도 가능케 됐고, 저렴한 x86 서버들을 활용하려는 기업들은 날로 늘어나고 있다.

그렇지만 무한정 늘어나는 서버의 관리는 기업들에겐 부담으로 돌아온다. x86 서버 시장을 겨냥, 이 같은 문제를 해결하기 위해 VM웨어나 마이크로소프트, 시트릭스와 레드햇, 썬, 오라클 등의 경쟁이 치열하게 전개되고 있다.

최근 시장의 관심은 VM웨어의 독주를 후발 업체들이 과연 따라잡고 역전시킬지 여부다.

또 다른 관전 포인트는 VM웨어와 마이크로소프트 같은 상용 소프트웨어 업체들에게 도전장을 던진 커머셜 오픈 소스 진영의 행보다. 오픈 소스 진영에는 젠 기반의 시트릭스와 썬, 오라클, 버추얼아이언 등이 있고, 젠에 대한 지원과는 별개로 KVM이라는 새로운 오픈 소스 프로젝트를 진행하고 있는 레드햇이 있다.

이런 상황에서 오픈 소스 진영의 파괴력은 과연 어느 정도일지 엿볼 수 있는 ‘오픈 소스와 Xen 그리고 Xenserver’라는 시트릭스시스템스코리아 권순철 차장의 기고문을 이곳에 게재, 블로터닷넷 독자들과 함께 공유코자 한다. 오픈 소스 진영의 힘은 과연 가상화 시장에서도 통할까? <편집자 주>

Open Source의 힘

아직도 오픈 소스(Open Source) 프로젝트에 대한 토론은 진행형이다. 많은 사람들이 오픈소스 프로젝트의 역할에 대해 공감하면서도 아직 한편으로는 실험적인 수준이나 아마추어적인 결과물 정도로 보는 시각도 만만치 않다.

citirxkwon090330 그러나 오픈 소스 프로젝트가 현재의 IT 환경에 얼마나 많은 영향을 미쳤는지에 대해서는 대체적으로 공감하리라 믿는다.

사실 IT 기술의 역사는 자발적인 지적 경험의 공유가 만들어 왔다고 해도 과언이 아닐 듯 싶다. 최근 오픈 소스 프로젝트를 거슬러 보자면, 사실 PC의 시초라고 할 수 있는 8비트 컴퓨터(애플이나 MSX, SPC-1000 등)를 다루던 세대에게 있어 체계적인 IT 기술에 대한 공유가 없는 상황에서 누군가가 새로운 것을 시작하고, 다른 사람이 그 산물을 분석해서 발전시키는 과정은 매우 익숙한 경험이다.

지금은 역할이 많이 바뀌었지만, 소프트웨어의 수가 제한적이었던 1980년대 컴퓨터 전문지들은 컴퓨터에 몰두한 이들에게 부족한 8비트 컴퓨터의 유틸리티나 게임 영역을 개척하면서 자기만족을 느끼게 해 주는 역할을 했다.

플로피 디스크나 미디어가 비쌌던 그 시절, 새롭게 입문한 사람들은 이런 월간지에 게재된 프로그램 소스코드를 부지런히 타이핑하고, 이 코드 하나하나를 뜯어보면서 실력을 키웠다. 그리고 다시 서로의 실력을 경쟁하듯이 기존의 아이디어를 받아들이고 개선해 새로운 코드를 만들어 냈다. 이 과정은 이미 오픈 소스의 정신을 몸소 실천하는 것이 아니었을까?

(단어 그대로 월간지에 인쇄된 소스 코드를 의미도 모른 채 한자 한자 정성껏 키보드로 입력하는 행위. 수 차례의 Syntax Error를 겪은 후 100~200 라인의 BASIC 프로그램이 돌아갔을 때의 그 감동을 아는 당신이라면 이미 오랜 경력의 PC 사용자일듯..)

그러나 이러한 열정은 소프트웨어가 점점 상업화 되면서 지켜야 할 지적 자산이 돼 버렸고, 지금에 와서는 다시 이에 반발하는 순수한 오픈 소스 운동이 이러한 열정의 명맥을 이어주고 있는 듯 하다.

msxbasic <이런 화면이 낯설지 않다면 당신은 이미 IT 구세대일지도?>

지금에 와서도 많은 사람들이 자신의 실력을 키우는 가장 시작점은 다른 사람의 코드와 노하우를 공부하는 것이고, 인터넷에는 우리가 알기를 원하면 알려줄 수 있는 많은 정보들이 이미 공개되어 있다.

오죽하면 질문에 대한 구루들의 일반적인 대답이 예전의 RTFM(Read the fine? Manual – 누군가 기초적인 질문을 하면 매뉴얼 먼저 읽어보라는 충고)에서 google it! (구글로 먼저 검색해봐!)으로 바뀌었을까?

이렇듯 정보의 공개는 내가 다른 사람의 시행착오를 반복하지 않고도 그 경험 위에 새로운 것을 만들 수 있게 해 주었고, 오픈 소스의 움직임은 이런 창의적인 활동이 저작권과 같은 상업적인 구속으로부터 좀 더 자유로울 수 있는 토양을 만들어 주고 있다.

오픈 소스의 또 하나의 결실 – Xen

오픈 소스의 범위를 어디까지로 보느냐는 다소 차이가 있을 수 있겠지만, 누가 뭐래도 성공적인 오픈 소스 프로젝트를 꼽자면 단연 리눅스(Linux)가 있다. 그 외에도 아파치(Apache)라던가, 여기서 다시 파생된 Jakarta와 같은 프로젝트 등 많은 사람에게 인지되지는 않지만 실제 우리의 생활에 퍼져있는 오픈 소스 프로젝트들은 수없이 많다.

만일 여러분이 돈 한푼 내지도 않으면서 인터넷 어딘가에서 재미있게 댓글놀이를 하고 있다면 여러분도 이미 리눅스(Linux)와 아파치, MySQL 그리고 제로보드(현재 GPL로 배포되고 있다) 등의 수없이 많은 오픈 소스 프로젝트의 수혜자일 가능성이 매우 높다.

mysqltomcat

이제 또 하나의 오픈 소스 프로젝트가 여러분들도 모르는 새 여러분의 생활 속에 파고들게 될 지 모르겠다. 최근 IT 기업들의 가장 뜨거운 감자로 부상하고 있는 주제 중 하나는 단연 가상화(Virtualization)이다.

가상화는 컴퓨터의 자원을 추상화(abstraction)해 실제 물리적인 자원과 분리시키는 기술이다.

세상은 이미 내가 직접 가지 않더라도 지구 반대편에서 일어나는 일들을 실시간으로 알 수 있는데, 정작 중앙처리장치(CPU)나 메모리 같은 컴퓨팅 자원은 한번 OS와 연결되면 한쪽의 운명이 다할 때까지 일부일처제로 생사고락을 같이 할 수 밖에 없는 형편이다.

가상화는 이런 하나의 육체에 하나의 영혼이라는 공식을 깨고, 마치 영혼이 여러 육체 간에 이동하거나 하나의 육체에 여러 영혼이 들어가는 것과 같은 자유로움을 준다. 다양한 가상화 기술 중 서버 가상화 기술은 사용자나 기업의 입장에서는 하나의 PC나 서버를 가지고서도 여러 대의 PC를 가지고 있는 것처럼 사용할 수 있게 해 주고, 여러 대의 PC간에도 하나의 OS가 자유롭게 이동하면서 동작할 수 있게 해 준다.

즉, 서버의 활용도를 높이면서도 필요에 따라 자유롭게 용도를 변경할 수 있게 된다는 의미이다.

사용 중인 브라우저가 해당 이미지의 표시를 지원하지 않을 수도 있습니다.epsxegel 사용 중인 브라우저가 해당 이미지의 표시를 지원하지 않을 수도 있습니다.

< 가상 머신 기술의 발전으로 윈도 PC에서 아케이드 게임이나 PlayStation 게임을 즐길 수 있다는 것은 이제 상식이다>

우리가 사용하고 있는 PC와 서버를 마치 여러 대의 PC와 서버처럼 사용할 수 있는 서버 가상화 기술은, 사실 이미 널리 펴져있는 고전게임 에뮬레이터(PC에서 갤러그와 제비우스를 돌리던 MAME를 기억하는지?)와 기본적인 아이디어는 크게 차이 안난다.

다만 그 대상이 구형 하드웨어가 아닌 최신의 윈도우 비스타(Windows Vista) 등을 구동해야 하는 x86 기종이라는 점이 차이일까. 이러한 x86 가상화 기술은 마이크로소프트(Microsoft)나 여타 여러 회사가 가상 PC(Virtual PC) 등의 이름으로 개발해 오고 있지만 가장 오랜 역사를 가지고 있는 선두는 단연 1998년에 설립된 VMWare이다.

그러나 많은 사람들이 이 기술을 좋아했지만, 많은 사람들이 마이크로소프트 윈도우의 페쇄성에서 개방을 추구하며 리눅스에서 가능성을 찾으려 했듯이, 상업적인 VM웨어의 틀에서 벗어난 개방적인 환경의 가상화 환경을 원했고, 그 산물이 오픈 소스 진영의 대표적인 가상화 환경인 Xen 프로젝트이다.

xenopensource090330

<무거운 가상화 계층이 아닌 최소한의 개입을 지향하는 반가상화(Para-virtualization) 모델 (출처: xen.org)>

젠은 캠브리지 대학에서 연구 프로젝트로 시작하였는데, 반가상화(Para-virtualization)라는 새로운 개념을 내놓으면서 기존 가상화 방식보다 더욱 효과적인 가상화 능력을 보여주면서 주목을 받았다.

2003년 최초의 공식적인 버전을 내놓은 이후 하드웨어 기반의 전가상화(Full-virtualization)를 지원하면서 더욱 완전한 모습을 갖추어 왔고, 인텔(Intel) 과 AMD, IBM, 썬(Sun) 등 많은 공룡 기업들의 기술 개발 뿐만 아니라 수많은 실험 정신이 넘치는 개발자들의 공헌으로 무섭도록 빠른 속도로 새로운 기능들이 추가되고 있다.

서버 가상화에서 어떤 새로운 기능을 상상하고 있다고 하더라도, 아마도 이미 누군가가 젠(Xen)에 그 기능을 추가하려고 노력 중일 가능성이 높다. 가상 머신에서도 3D 게임을 할 수는 없을까? 아직 정식 버전에 포함될만한 수준의 결과물은 아닐지라도 이미 다양한 개발자들이 다양한 방법으로 시도하고 있다.

vmglyoutube090330 사용 중인 브라우저가 해당 이미지의 표시를 지원하지 않을 수도 있습니다.

http://www.youtube.com/watch?v=AILF3vDu6Bc

<Xen 가상머신에서 GPU 가속을 통하여 OpenGL 기반의 3D 게임(Unreal)을 동작시키는 모습>

이미 xen.org 에는 향후 버전에서 고려중인 기능들이 언급돼 있다.(www.xen.org/download/roadmap.html 참고) 끊임없이 추가되는 이런 로드맵을 보면서 새로운 기능을 테스트하는 얼리어답터가 되는 것도 오픈 소스 프로젝트를 지켜보는 재미가 아닐까 싶다. 이외에 오픈 소스 진영에는 젠에 이어 상대적으로 역사는 짧으나 KVM이 새로운 시도를 시작하고 있다.

Xen과 XenServer

그렇다면 Xen이 과연 가상화 기술을 개발하기 위한 테스트베드에 그칠 것인지?

리눅스도 그 자신을 검증받고 실제 서버에 운영되기까지는 많은 진통을 겪었고 현재도 진행중이긴 하지만 이에 대한 논란은 점차 줄어들고 있다. 어찌보면 기존 기득권층이라고 할 수 있는 썬의 솔라리스(Solaris), HPHP-UX, IBM AIX 자체가 상업적으로 완성도 있는 OS이기도 했지만, 사실 기업 입장에서는 (1) 기업 환경에서 필요한 기능이 포함되어 있는지, (2) 사례 등을 통하여 믿을 수 있는지 (3) 문제가 발생했을 때 전문적인 지원을 받을 수 있는지가 선택에 있어 중요한 요소라고 할 수 있다.

리눅스는 많은 작은 사례들을 바탕으로 더 큰 규모의 사례를 만들어 갔고, 전문적인 기능과 지원은 레드햇(Redhat)이나 노벨의 수세(Suse) 같은 상업화된 패키지를 제공하는 업체를 통해 완성돼 왔다.

젠 역시 오픈 소스 프로젝트가 실제 현업에 적용되기 위해 리눅스가 밟아왔던 과정을 그대로 따라가고 있다.

우선, 젠을 사용하는 사례는 자발적으로 증가하고 있다. 그 중에서도 아마존(Amazon)에서 2006년부터 자신의 클라우드 데이터센터인 EC2(Elastic Cloud Center)를 젠 기반으로 구축하기 시작했다는 것은 대단히 상징적인 의미를 갖는다.

이와 함께 젠의 대중화를 위해서는 완성도적인 측면도 중요할 것이다.

젠 자체는 누구라도 무료로 사용할 수 있지만, 모든 기능을 커맨드로 관리해야 하는 부분은 리눅스 환경과 젠의 기능에 친숙하지 않은 사람들에게는 너무나도 넘기 힘든 벽이고, 또한 실제 수많은 서버들을 관리해야 하는 관리자에게 젠은 지적 호기심을 만족시키기 위한 대상 이상으로 보기엔 기능적으로 너무나도 부족해 보인다.

리눅스가 이러한 벽을 넘기 위해 레드햇과 같은 커머셜 오픈소스 업체가 체계적인 부가 기능과 안정적인 기술 지원을 제공한 것과 마찬가지로, 젠의 개방성을 바탕으로 Virtual Iron, 썬의 VirtualBox, 오라클의 ‘오라클 버추얼머신(VM)’ 등이 상업화된 가상화 제품을 제공하고 있다.

특히 젠 프로젝트의 핵심 멤버들은 젠소스(XenSource)를 설립해 젠이 실제 IT 환경에서 구축될 수 있도록 상업화된 제품을 개발해 오고 있으며, 2007년 젠소스는 애플리케이션 가상화 시장에서 주도적인 위치를 차지하고 있는 시트릭스(Citrix)에 인수되면서 시트릭스가 애플리케이션 가상화의 기술을 확대해 서버 가상화와 데스크탑 가상화 기술과 접목시키는 계기가 된다.

젠의 대표적인 상용 패키지인 젠서버(XenServer)는 XAPI와 XenCenter를 통한 관리 기능, 스토리지 지원과 실시간 마이그레이션(Live Migration), 고가용성(High Availability; HA) 기능과 같이 데이터센터에서 요구되는 확장 기능과 함께 기술 지원 서비스를 함께 제공해왔다.

그리고 이미 가상화 기술의 발전에 따라 실제 가상 머신 기술이 일상화된 2009년, 시트릭스는 기능을 제한하지 않은 젠서버를 무료로 배포하고 향후 추가될 일부 고급 기술과 기술 지원 서비스만 유상 제공하기로 결정한다.

즉, 이제 누구라도 젠에 대한 전문적인 기술을 가지고 있지 않더라도 손쉽게 서버 가상화 기술을 무료로 사용해 볼 수 있게 된 것이다. 만약 젠소스와 시트릭스가 모든 원천기술에 대해 수많은 비용을 들여 개발했더라면 쉽지 않은 결정이지 않았을까?

젠 커뮤니티는 순수한 젠 가상 머신을 발전시키고, 젠서버는 사용자들이 쉽게 운영할 수 있는 환경을 구축해 저변을 넓히고, 다시 늘어난 사용자들은 젠이 더 나은 환경이 되도록 개선하는데 이바지할 것이다.

이러한 선순환을 만드는 오픈 소스 프로젝트야말로 수많은 IT 인력들과 국가 간의 격차를 줄여주는 소통의 경로가 아닐까?

 파이핑하기       싸이월드 공감 
인쇄 인쇄
, , , , , , , , , , , , ,
http://www.bloter.net/archives/12260/trackback
블로터닷넷 미디어랩장. 블로터TV와 소셜 분석, 전자책 등 새로운 콘텐츠에 대해 고민하고 있다. '원피스'의 해적들처럼 새로운 모험을 향해 출항했다. [트위터] @eyeball, [이메일] : eyeball@bloter.net
0 Responses to "[기고]오픈소스와 Xen 그리고 XenServer"

You must be logged in to post a comment.



[블로터닷넷이 댓글을 받지 않는 이유]

공간