사이언스타임즈 로고

정보통신기술
이슬기 객원기자
2015-03-11

윈도 7에서 XP프로그램 구동 하이퍼바이저 기반 가상화 기술로 가능

  • 콘텐츠 폰트 사이즈 조절

    글자크기 설정

  • 프린트출력하기

지금 일반적으로 사용하는 통신 주파수는 2기가헤르츠(GHz) 이하의 4G 롱텀에볼루션(LTE)이다. 이제 통신회사는 4G LTE를 넘어선 5세대 이동통신(5G)를 주목하고 있다. 28기가헤르츠(GHz)의 초고역대 주파수를 사용하는데, LTE보다 빠른 속도로 초고선명 영화를 1초 만에 전달할 수 있는 속도이다.

고대역대 주파수는 직진성이 강하기 때문에 도달거리는 짧지만 속도가 빠른 것이 특징이다. 이러한 5G 차세대 기술이 실행되기 위해서는 가상화기술이 선행되어야 한다. 실제로 가상화기술은 5G 시대를 앞둔 통신회사들이 심혈을 기울여 작업하고 있는 기술이기도 하다.

가상화(virtualization)은 광범위한 용어로 컴퓨터에서 컴퓨터 리소스의 추상화를 일컫는 말이다. 정의를 하자면, 물리적인 컴퓨터 리소스의 특징을 다른 시스템, 응용 프로그램, 최종 사용자들이 리소스와 상호 작용하는 방식으로부터 감추는 기술이라고 할 수 있다. (관련링크)

쉽게 설명하자면 컴퓨터 운영체제(OS)를 시스템 구조나 하드웨어에 영향을 받지 않고 설치하고 사용할 수 있도록 하는 기술을 말한다. 일반적으로 운영체제는 특정 시스템 구조나 하드웨어에 특화되어 있기 때문에, 운영체제의 교체가 쉽지 않다. 또한 하나의 시스템에서 여러 운영체제를 동시에 운영하는 것이 거의 불가능하다.

하나의 컴퓨터 시스템에서 여러 운영체제를 사용하는 것이 불가능한 것처럼 보인다. 하지만 가상화 기술을 이용한다면 충분히 가능하다. 하이퍼바이저 기술을 필요로 하는 가상화 기술과 리눅스 기반의 도커가 바로 그것이다. ⓒ Scsami via Wikipeida
하나의 컴퓨터 시스템에서 여러 운영체제를 사용하는 것이 불가능한 것처럼 보인다. 하지만 가상화 기술을 이용한다면 충분히 가능하다. 하이퍼바이저 기술을 필요로 하는 가상화 기술과 리눅스 기반의 도커가 바로 그것이다. ⓒ Scsami via Wikipeida

하지만 하나의 시스템에서 여러 운영체제를 얹거나, 운영체제를 교체하여 낡은 컴퓨터를 재활용 하는 기술이 필요하다. 특히 최근에는 서버나 PC 수준에서도 이러한 기능이 절대적으로 요구되고 있다. 이러한 상황에서 가상화 기술의 발전은 어찌보면 당연한 일이다.

마이크로소프트(MS)사의 운영체제인 윈도(Windows)와 리눅스(Linux) 같은 현대의 운영체제는 제한된 응용 프로그램의 가상화를 포함하고 있다. 예를 들어 윈도 7은 윈도 XP 모드를 제공한다. 따라서 더 오래된 윈도 XP 응용프로그램을 윈도 7에서도 수정하지 않은 채로 구동할 수 있다.

이러한 기술이 가능한 것이 바로 가상화 덕분이다. 1960년대 이후 널리 쓰이기 시작한 가상화 기술은, 전체 컴퓨터 시스템에서 개별 기능과 구성요소에까지 컴퓨터의 다른 많은 면과 영역에 적용되어 왔다. 결국 모든 가상화 기술의 공통 주제는 주변에 막을 씌워 기술적으로 자세한 부분을 숨기는 것에 있다.

사실 가상화는 컴퓨터가 쓰이지 않는 환경에서도 상당히 중요한 개념이다. 많은 제어 시스템들은 어떤 복잡한 장치에 가상화된 인터페이스를 추가하게 된다. 전자 장치로 조종하는 플라이 바이 와이어(fly-by-wire)시스템은 단순화된 물리적 기능 추가와 관계가 없는 가상 비행기를 표현하기도 한다.

즉, 가상화 기술은 자동차의 가속 페달이 엔진으로 향하는 연료의 흐름을 높이는 것과 같은 일을 한다고 볼 수 있다. 대부분의 가상화 형식들은 컴퓨팅 컴퓨터와 제공자와 연결되는 디자인 패턴을 포함하여, 그 사이에서 상호작용을 한다.

가상화를 지원하는 '하이퍼 바이저' 필요

이러한 가상화 기술이 실행되기 위해서는 하이퍼바이저가 필요하다. 하이퍼바이저(Hypervisor)는 쉽게 말해 하드웨어의 가상화를 지원하는 소프트웨어이다. 하나의 컴퓨터 시스템에서 다수의 운영체제가 가동될 수 있게 하는 소프트웨어를 뜻한다. (관련링크)

하나의 컴퓨터에서 서로 다른 운영체제를 사용하는 일종의 '가상' 컴퓨터를 만들 수 있는 효과적인 가상화 엔진으로, 가상화 머신 모니터(Virtual machine monitor) 줄여서 VMM이라고 부르기도 한다. 일반적으로는 타입 1(type 1)과 타입 2(type 2)로 나뉜다.

타입 1은 하드웨어 전체를 가상화 한 후, 그 위에 다수의 운영체제를 구동시키는 방식이다. 바로 부팅이 가능하기 때문에 컴퓨터에 기본으로 장착된 호스트 운영체제(OS)에 리소스를 할당할 필요가 없어지게 된다. 메모리 용량이 적게 소모되어 성능이 좋다는 장점이 있다.

반면 타입 2는 호스트 운영체제로 컴퓨터가 부팅되고 그 위에 하이퍼바이저를 실행하여 별도로 게스트의 운영체제를 설치하는 방식이다. 타입 1에 비해 CPU나 메모리 용량이 더 많이 요구된다는 단점이 있지만, 가상화를 지운해주는 대표적인 하이퍼바이저 소프트웨어를 제작해서 판매하는 경우가 많다.

개인이 쓰는 스마트폰, 태블릿으로 업무를 보는 BYOD(Bring Your Own Device) 시대에는 스마트 기기를 용도에 따라 분리해서 쓰는 기술이 더욱 발전할 것으로 보인다. 이미 출시되는 스마트 기기들은 업무용, 개인용 영역을 가상화 시켜서 쓸 수 있을 만큼 충분한 파워를 갖고 있기 때문이다.

구글에서는 지난해 6월 열린 구글 I/O 컨퍼런스에서 안드로이드 5.0 롤리팝 이후 버전에서는 '안드로이드 포 워크'(Android For work) 라는 플랫폼을 서비스 할 예정이라고 밝혔다. 스마트기기 내부를 업무용과 개인용으로 분리해서 쓸 수 있도록 하겠다는 뜻이다. 바로 여기에 '가상화' 기술이 활용되는 것이다.

하이퍼바이저 없이 가상화 가능한 '도커 1.0'

가상화 기술을 위해서는 하이퍼바이저가 필요했지만, 이제는 그렇지 않아도 된다. 하이퍼바이저 없이 가상화 할 수 있는 리눅스 컨테이너 기술인 도커(Docker) 1.0이 지난해 6월 배포되었기 때문이다. 클라우드 기술을 최대한 활용하여 더 많은 어플리케이션을 더 빨리 실행할 수 있게 되었다. (관련링크)

도커(Docker)는 2013년 3월 출범한 오픈소스 프로젝트로, 한마디로 컨테이너 응용프로그램의 배포를 자동화하는 오픈소스 엔진을 말한다. 오픈소스 프로젝트명인 동시에 기업명이기도 하는데, 리눅스 컨테이너 기술을 자동화하여 쉽게 사용할 수 있게 도와주는 역할을 한다.

사실 리눅스 컨테이너 기술은 가상화와 비슷한 기술이다. 앞서 이야기 했듯 가상화 기술을 위해서는 하이퍼바이저가 반드시 있어야 한다. 하지만 도커는 하이퍼바이저와는 달리 게스트 운영체제(OS)를 두지 않고 호스트 운영체제(OS) 커널을 바로 사용한다.

즉, 하이퍼바이저 대신 도커 엔진이 올라가면서 호스트 운영체제와 여러 어플리케이션을 연결해주는 역할을 하는 것이다. 따라서 도커를 사용하게 되면 가상화보다는 내부에서 더 적은 일을 처리하고, 어플리케이션을 조금 더 빠르고 효율적으로 실행할 수 있게 된다.

프로그램의 정식 배포가 시작된 이래 275만 회라는 어마어마한 다운로드 횟수를 기록했고, 현재 수천 만명의 사용자가 확보된 상태이다. 460명이 넘는 개발자들이 코드를 제공했는데, 이는 도커와 같은 가상화 기술에 업계가 목말라 했는지를 보여주는 단적인 예라고 할 수 있다.

오픈소스는 프로젝트나 소스코드 자체가 개방되어 있기 때문에 많은 사람들이 참여할 수 있다. 그만큼 최신 기술을 빠르고 손쉽게 적용할 수 있다는 장점도 있다. 하지만 빠른 업데이트 주기와 안정성 측면에서는 제대로 검증하기가 어렵고 그 과정이 길어진다는 단점도 있다.

아직까지 도커는 도입 단계이기 때문에 실제로 써보지 않고서는 안정성과 문제점을 정확히 할 수 없다. 하지만 구글이 도커와 같은 컨테이너 기술을 최근 적극적으로 도입하고 있고, 이에 대한 평가도 긍정적으로 내리고 있다. 바야흐로 오픈소스의 시대가 된 것이다.

모바일 환경이 강조되고 글로벌 서비스가 많아 지면서, 빠르고 민첩하게 원하는 서비스를 만들어야 하는 요구가 높아지고 있다. 이러한 요구에 맞춰 가상화 기술과 이를 뒷받침하는 하이퍼바이저, 또는 도커 기술이 계속해서 발전해 나가는 것은 당연한 일이라고 할 수 있다.

이슬기 객원기자
justice0527@hanmail.net
저작권자 2015-03-11 ⓒ ScienceTimes
목록으로
연재 보러가기 사이언스 타임즈에서만 볼 수 있는
특별한 주제의 이야기들을 확인해보세요!

인기 뉴스 TOP 10

속보 뉴스

ADD : 06130 서울특별시 강남구 테헤란로7길 22, 4~5층(역삼동, 과학기술회관 2관) 한국과학창의재단
TEL : (02)555 - 0701 / MAIL: sciencetimes@kosac.re.kr / 시스템 문의 : (02) 6671 - 9304 / FAX : (02)555 - 2355
정기간행물 등록번호 : 서울아00340 / 등록일 : 2007년 3월 26일 / 발행인 : 정우성 / 편집인 : 차대길 / 청소년보호책임자 : 차대길
한국과학창의재단에서 운영하는 모든 사이트의 콘텐츠는 저작권의 보호를 받는 바 무단전재, 복사, 배포 등을 금합니다.

사이언스타임즈는 과학기술진흥기금 및 복권기금의 지원으로 우리나라의 과학기술 발전과 사회적 가치 증진에 기여하고 있습니다.