기업 경쟁력 강화를 위한 가상화 전략

최근 들어 IT 분야에서 가장 많은 관심을 받고 있는 분야 중의 하나로 ‘가상화(Virtualization)’를 들 수 있다. 세계적인 글로벌 IT 기업들은 가상화 기술이 차세대 IT 인프라스트럭처 구축에 있어서 가장 중요한 기술이 될 것으로 예상하고, 자사의 제품 및 서비스 라인을 가상화 기술과 접목하여, 새로운 시장을 창출하고자 하고 있다.

이 글에서는, 가상화 기술을 이미 도입했거나, 혹은 도입을 검토하고 있는 기업에게 가상화 기술에 대한 전반적인 이해와 함께 고객사가 목적에 맞는 가상화 기술을 선택할 수 있는 방안을 제시하고자 한다.

1. 가상화 기술의 중요성

그림1
<그림 1> Gartner의 IT 인프라스트럭처 발전단계

Gartner는 <그림 1>에서와 같이 IT 인프라스트럭처의 발전 단계를 5단계로 나누어 설명하고 있는데, 가상화 기술의 적용을 IT 인프라스트럭처 발전 단계에서 3단계로 적용해야 한다고 설명하고 있다. 대부분의 기업들은 IT 인프라스트럭처 고도화를 위해, 기존의 IT 인프라스트럭처를 데이터센터 등 중앙 집중적인 위치로 이전하고 표준화를 진행하는 중앙집중화(Concentration) 단계를 거친 후 하드웨어, 소프트웨어, 관리 및 서비스를 통합하는 통합화(Consolidation)를 진행하여 왔다. 그런데, 이와 같은 중앙집중화와 통합화를 완료한 후 자동화 단계를 거쳐서 확산 단계로 진행하는 데 있어, 가상화 단계를 거치지 않은 기업들은 IT 인프라스트럭처 고도화에 성공하지 못한다는 것이 널리 알려진 사실로 IT 인프라스트럭처의 자동화에 있어서 가장 중요한 요소 중의 하나가 유연한 IT 인프라스트럭처의 제공인데, 가상화라는 기술을 적용하지 않고서는 유연한 IT 인프라스트럭처의 제공이 불가능하기 때문이다.

이러한 관점에서 Gartner는 가상화 기술을 “현재 전략적으로 가장 중요한 데이터 센터용 기술”이라고 정의하고 있으며, “향후 5년 내 가장 중요한 PC 분야의 기술이 될 것”으로 전망하고 있다. 뿐만 아니라, IDC는 가상화 기술에 대해서 가상 네트워크에서부터 보안을 모두 포함하는 “가상 환경 소프트웨어”라는 범주로 가상화 기술을 평가하고 있다.

그림2

이외에도 가상화 기술의 중요성에 대해서 다음과 같은 주장이 발표된 바 있다.
  • 가상화 기술을 적용한 현업 서버의 50%는 미션크리티컬한 업무에 사용되며 그 비율은 계속 증가할 것이다 – IDC
  • 500 명 이상을 고용한 기업의 75%가 가상화 기술을 서버에 적용하고 있다. – IDC
  • 가상화 기술을 활용하지 않는 기업은 매년 25% 이상의 추가 비용을 x86 기반 서버 운영에 지출 할 것이다. – Gartner

 위와 같은 평가와 더불어 가상화 기술은 다음과 같이 다양한 관점에서 그 필요성이 대두되고 있다.

  • 서버 통합을 통한 데이터 센터 비용 절감
  • 어플리케이션 마이그레이션 편의성
  • 개발 및 배포 시간 감소 등 IT 유연성 증대
  • 소프트웨어 개발 시간 감소

 각각의 목적에 따라 적용되어야 하는 가상화 기술은 달라지게 되며, 적합한 가상화 기술을 채택함으로써, 가상화 기술 적용의 효과를 극대화할 수 있다.

2. 가상화 기술 비교

앞 절에서 가상화 기술의 중요성과 필요성에 대해서 간략하게 언급하였는데, 이 절에서는 가상화 기술의 도입에 앞서, 현재 널리 활용되고 있는 가상화 기술에 대해서 비교함으로써, 도입 목적에 맞는 가상화 기술을 선택할 수 있는 방안을 제시하고자 한다.

기업에서는 막상 가상화를 적용하고자 할 때, 어떠한 가상화 솔루션을 적용하는 것이 자신들의 목적에 적합한지를 검토할 수 있는 방안이 부족하여, 가상화 도입에 많은 어려움을 겪고 있고 적합하지 못한 가상화 기술을 적용함으로써, 막대한 투자 비용을 들이고서도 그 효과를 누리지 못하는 경우가 빈번하다. 따라서, 이러한 시행착오를 줄이기 위해서 먼저 가상화 기술에 대해서 명확한 비교 검토를 수행한 후, 자신의 도입 목적에 맞는 가상화 기술을 선택하는 것이 가상화 도입의 성공에 있어 가장 중요한 요소라고 할 수 있다.

일반적으로, 가상화 기술을 도입하는 기업 들은 가상화 솔루션을 제공하는 공급업체에 따라서 비교하고, 적합한 솔루션을 채택하는 경향이 강한데, 대부분의 가상화 업체는 서버 가상화에서부터 클라이언트 가상화에 이르는 다양한 솔루션을 제공하고 있으므로, 가상화 기술을 공급 업체의 솔루션 별로 비교하는 것은 적합한 가상화 기술을 선택하는 좋은 방안이라고 할 수 없다.

따라서, 가상화 기술을 적용하고자 할 때는, 적용하고자 하는 어플리케이션 및 업무 영역에 따라서 적절한 가상화 기술을 비교하고, 최적의 가상화 기술을 선택한 후 선택된 가상화 기술을 제공하는 업체의 솔루션을 비교 검토하는 것이 가상화 도입의 효과를 극대화하는 지름길이라고 할 수 있다.

그림3

<그림 3>에서와 같이 가상화 기술은 적용하고자 하는 어플리케이션에 따라 서버 가상화와 클라이언트 어플리케이션 가상화로 분류할 수 있고, 클라이언트 어플리케이션을 가상화는 다시 적용 기술 및 업무 분야에 따라 프리젠테이션 가상화, 클라이언트 가상화 및 어플리케이션 스트리밍 등 세가지로 분류할 수 있다. 각 기술의 주요 특징은 다음과 같다.

A. 서버 가상화

서버 가상화는 익히 알려져 있듯이, 여러 대의 물리적 서버를 한 대의 고성능 서버 상에서 구동되는 가상 머신(Virtual Machine)으로 통합함으로써 자원 활용률의 극대와, 신속한 서버 자원의 제공 및 백업, 데이터 센터 비용 절감 등 IT 유연성을 증대시키고자 하는 기술로 대표적인 솔루션으로 Citrix의 XenServer, VMware의 ESX 서버 및 Microsoft의 Hyper-V 등을 들 수 있다.

B. 프리젠테이션 가상화 (SBC, Server Based Computing)

클라이언트 단의 가상화 기술 중 SBC(Server Based Computing)로 널리 알려져 있는 프리젠테이션 가상화 기술은 사용자가 수행하고자 하는 모든 어플리케이션 또는 데이터는 서버에 존재하고 사용자 PC는 단지 입출력 장치로만 사용되어, 사용자에게는 서버에서 수행되는 어플리케이션 등이 이미지로만 전송되는 기술이라고 요약할 수 있다. 쉽게 생각하면 PC에서 수행되는 원격데스크탑처럼 원격에서 수행되는 어플리케이션 또는 PC 환경을 내 PC에서 화면만 나타내는 것이라고 볼 수 있다.

프리젠테이션 가상화는 다시 어플리케이션 가상화와 데스크탑 가상화로 나눌 수 있는데, 어플리케이션 가상화는 한대의 서버에서 복수의 사용자 어플리케이션이 수행되고 그 어플리케이션에 대한 이미지가 PC로 전송되는 기술인 반면, 데스크탑 가상화는 한대의 서버에 복수의 사용자를 위한 개별 데스크탑 환경을 가상머신으로 각각 제공하고, 각 데스크탑 환경의 수행 이미지를 사용자의 입출력 PC로 전송되는 기술이다.

어플리케이션 가상화의 대표 솔루션으로는 Citrix의 XenApp (이전에는 MetaFrame으로 널리 알려져 왔다)을 들 수 있고, Microsoft의 Terminal Server도 여기에 해당한다고 볼 수 있다. 데스크탑 가상화는 어플리케이션과 달리 사용자 별로 Windows XP 또는 Vista 데스크탑을 제공하는 것으로 Citrix의 XenDesktop 또는 VMware의 VDI 등이 널리 알려져 있다.

C. 클라이언트 가상화

최근에 발전하고 있는 가상화 기술로 클라이언트 가상화 기술을 들 수 있다. 클라이언트 가상화는 앞의 서버가상화나 프리젠테이션 가상화와 달리 가상머신 또는 가상 공간을 사용자의 PC에 만드는 기술로, 사용자의 PC에 복수의 가상머신 또는 가상공간(굳이 가상머신과 가상공간을 구분하는 이유에 대해서는 다음에 자세히 논할 예정이다)을 구성하고, 개별 가상 공간별로 독립적인 클라이언트 환경 및 데이터를 제공하고자 하는 기술이다. 앞의 서버가상화와 프리젠테이션 가상화의 가장 큰 차이점으로는 사용자 어플리케이션과 데이터가 사용자 PC에 저장된다는 점을 들 수 있다.

주로, 사용자 PC의 로컬 자원(CPU, 메모리, 그래픽 성능 등)을 이용할 수 있다는 장점이 있어, 특정 업무 목적에 적용이 검토되는 기술로 Microsoft의 MED-V (최근에 인수한 Kidaro), 국내 업체인 노애드의 MirageWorks, VMware의 VMware ACE 등이 클라이언트 가상화 기술을 적용한 솔루션이라고 볼 수 있다.

그런데, 여기서 한가지 주의할 점은 많은 솔루션 공급업체가 클라이언트 가상화를 데스크탑 가상화라고 부르고 있는데, 필자는 데스크탑 가상화는 프리젠테이션 가상화 중에서 사용자 별로 구분된 데스크탑 환경을 서버에서 제공하는 기술로 정의하고, 사용자 PC에 독립적인 데스크탑을 구성하는 기술은 클라이언트 가상화라고 정의하여 혼란을 방지하고자 한다. 예를 들어, Microsoft는 자사의 MED-V를 데스크탑 가상화 기술이라고 주장하고, Citrix는 XenDesktop을 데스크탑 가상화라고 주장하는데, 이 둘은 엄연히 구별되는 가상화 제품으로, MED-V는 클라이언트 가상화 기술, XenDesktop은 프리젠테이션 가상화 기술을 적용한 것이다.

D. 소프트웨어 스트리밍

소프트웨어 스트리밍 기술도 대표적인 가상화 기술의 하나로 분류할 수 있는데, 이는 사용자의 PC에 어플리케이션을 설치하지 않고, 어플리케이션이 수행될 때마다 서버로부터 어플리케이션을 스트리밍 형태로 내려 받아 사용자 PC에서 수행하는 기술이라고 할 수 있다.

앞에서 언급한 클라이언트 가상화 기술과 마찬가지로, 사용자 PC의 자원을 사용한다는 점에서는 공통점을 갖고 있으나, 클라이언트 가상화 기술과는 달리 사용자 PC에 개별 가상화 공간을 구성하지는 않는다는 점에서 차이가 있다.

주로 어플리케이션을 개별 사용자에게 신속하게 배포하고 어플리케이션 별 버전 관리 등을 용이하게 하기 위해 도입되는 기술로, Citrix의 XenApp, Microsoft의 SoftGrid 등을 들 수 있다.

 이상으로 대표적인 가상화 기술에 대해서 간략하게 언급하였다. 각 기술에 대한 세부적인 장단점 및 기술적인 비교는 추후에 개별 기술 별로 상세히 논하고자 한다.

3. 가상화 기술 선택 방법

앞에서 가상화 기술의 중요성과 대표적인 가상화 기술에 대해서 논하였는데, 이 절에서는 실제로 가상화를 도입하고자 하는 기업에서 어떤 가상화 기술을 적용할 것인지를 선택하는 방안에 대해서 논하고자 한다.

앞에서도 언급했듯이, 도입하고자 하는 가상화 기술을 선택하는데 있어서 가장 중요한 요인은 도입하고자 하는 솔루션이 아니라, 가상화를 적용하고자 하는 어플리케이션이라는 점을 염두에 두고 다음의 순서도를 살펴보도록 하자.

사용자 지정 2

먼저 가상화 도입을 검토하고 있다면, 적용하고자 하고자 하는 어플리케이션이 서버 어플리케이션인지 클라이언트 어플리케이션인지를 확인하여, 서버 어플리케이션(웹, 메일, DB 등)일 경우 서버 가상화를 채택하면 된다. 그 후에 서버 가상화에 적합한 솔루션으로 Citrix의 XenServer, VMware의 ESX 서버 및 Microsoft의 Hyper-V 등에 대해서 장단점 및 비용 등을 비교 검토하여 솔루션을 선정하면 시행착오를 줄이고, 서버 가상화 도입을 성공적으로 완료할 수 있다.

반면, 적용하고자 하는 어플리케이션이 사용자 PC에서 수행되는 클라이언트 어플리케이션일 경우, 어플리케이션 수행 환경이 주로 온라인인 경우와 오프라인 수행이 필수적인 경우 두 가지로 구분하여 검토하여야 한다.

먼저, 기업 내부에서와 같이 사용자 업무 환경이 항상 온라인 상태로 네트워크에 연결되어 있는 경우는 어플리케이션과 데이터를 중앙의 데이터 센터로 집중화하고자 할 경우는 프리젠테이션 가상화를 도입하는 것이 바람직하다. 반면, 네트워크에 접속된 사용자 PC에서 수행되는 어플리케이션만을 중앙에서 관리하고, 배포 등의 관리 편의성을 추구하고자 할 경우는 어플리케이션 스트리밍의 도입을 고려할 수 있다.

프리젠테이션 가상화를 도입하고자 결정한 후에는, 사용자의 업무에 따라서, 주로 사용하는 어플리케이션에 대해서 서버에서 어플리케이션을 수행하고 사용자 PC는 터미널로 동작하도록 하기 위해서는 어플리케이션 가상화를 도입하는 것이 바람직하다. 어플리케이션 가상화 도입을 결정한 후에, 어플리케이션 가상화 솔루션인 Citrix XenApp을 도입할 것인지, 아니면 Microsoft의 터미널 서버 기반의 솔루션을 도입할 것인지를 고민하는 것이 타당하다고 볼 수 있다.

반면, 사용자 환경이 다양하여, 어플리케이션을 중앙에서 제공하는 대신에, 개별 사용자 업무에 따라 독립된 데스크탑 환경을 제공하고자 할 경우는 데스크탑 가상화 기술의 도입을 고려할 필요가 있으며, 이에 따라서 XenDesktop 등 적절한 데스크탑 가상화 솔루션을 비교 검토하는 것이 바람직하다.

한편, 클라이언트 어플리케이션이 수행될 사용자 PC 환경이 온라인 보다는 주로 오프라인 사용이 중요시 될 경우는 프리젠테이션 가상화보다는 클라이언트 가상화 기술이나, 어플리케이션 스트리밍(소프트웨어 스트리밍도 오프라인에서 동작이 가능하다)의 도입을 검토할 필요가 있다.

개별 사용자 PC에 어플리케이션이 미리 설치되도록 하고, 특정 업무 별로 독립된 어플리케이션 수행환경을 구성해주고자 하는 경우는 클라이언트 가상화 기술을 도입하는 것이 효율적이며, 온라인 상태에서 어플리케이션을 다운로드 한 후, 오프라인에서 실행만 하고자 하는 경우는 어플리케이션 스트리밍을 도입하는 것도 좋은 선택이 될 수 있다.

이러한 순서에 따라서 적절한 가상화 기술을 선택한 후에, 선택된 가상화 기술을 제공하는 솔루션을 비교 검토하는 것이 가상화 도입의 성공을 결정짓는 지름길이라는 점을 다시 한번 강조하고자 한다.

그림5

그런데, 앞의 순서도에 따라서 적용할 가상화 기술을 검토하다 보면, 사용자의 업무 형태에 따라서 적용할 수 있는 가상화 기술은 대단히 다양하다는 것을 깨닫게 된다. <그림 5>에서와 같이 일반적인 기업의 사용자 업무 형태에 따라 적용할 수 있는 가상화 기술이 다양하게 분포하게 되는데, 특정 어플리케이션을 주로 사용하는 경우는 어플리케이션 가상화가 적합할 수 있고, 설계 및 R&D와 같이 PC의 로컬 자원을 극대화하여 사용하는 Power User의 경우는 클라이언트 가상화가 적합할 수도 있다. 반면, 대부분의 기업 구성원들이 속해있는 Knowledge Worker(기획, 영업, 마케팅 등)의 경우는 데스크탑 가상화, 클라이언트 가상화, 어플리케이션 가상화 등을 복합적으로 적용할 수 있다는 것을 <그림 5>를 보면 알 수 있다.

이와 같이 특정 가상화 기술 한가지만으로 모든 기업 구성원의 업무 환경을 만족시키기는 힘들 수 있으므로, 업무 형태별로 적절한 가상화 기술을 조합해서 도입하는 것도 좋은 방안이 될 수 있을 것이다.

4. 결론

이 글에서는 가상화 기술의 중요성과 가상화 기술의 분류 및 적절한 가상화 기술을 선택하는 방안에 대해서 살펴보았다. 앞에서 몇 번 강조하였듯이 가상화 기술을 적용하고자 하는 업무 환경과 어플리케이션에 대한 파악이 선행된 후, 이를 바탕으로 적절한 가상화 기술을 선정하고 선정된 가상화 기술을 지원하는 솔루션을 비교 검토해야 가상화 도입을 성공적으로 완료할 수 있다는 점을 다시 한번 말하면서, 이 글을 마치고자 한다.

 주) 이 글이 작성된 시점은 무려 4년 전인 2009년 3월이다. 그때만해도 클라우드는 고사하고 가상화라는 것도 생소하던 시점인데 내용을 보니 지금과 크게 달라진게 뭐가 있을까 하는 생각에 여기에 옮겨놓는다. 읽는 분들은 2009년으로 돌아가서 그 때의 IT  환경을 떠 올리면서 읽어주셨으면 한다.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.