데스크탑 가상화(Virtual Desktop Infrasturcture, VDI)에 대한 소개 및 적용 분야에 대해서는 데스크탑 가상화(VDI) – Citrix XenDesktop에서 설명을 한 바 있는데 국내의 많은 VDI 프로젝트는 데스크탑 인프라의 효율화라는 본래의 VDI 구축 목적보다는 주로 노후 PC의 대체를 통한 비용 절감, 내외부망 분리를 통한 정보 유출 방지 및 문서 중앙 집중화 등 정보 보안을 목적으로 구축되는 경우가 많다. 이렇다 보니 실제로 VDI의 성공적인 구축을 위한 현황 분석이나 설계 및 데스크탑 업무 환경 변화에 대한 고려보다는 VDI의 부수 효과인 정보 보안과 PC 대체를 통한 비용절감만을 목적으로 하다보니 정작 필수 업무 장비인 PC를 대체하기에는 여러가지로 불편함과 사용자의 불만이 발생하는 경우가 빈번하다. 따라서 이 글에서는 성공적인 VDI 구축을 위해 고려해야할 사항과 구축 절차 및 방법론에 대해서 논하고자 한다.
1. TCO 비교
VDI를 구축하기 전에 먼저 기존의 PC 환경을 그대로 사용할 경우와 VDI 환경으로 전환할 경우에 소요되는 비용의 비교를 통한 TCO (Total Cost of Ownership) 비교가 필요하다. TCO를 비교하기 위해서 고려해야할 항목은 다음의 표와 같다.
항목 |
일반 PC |
VDI 환경 |
비고 |
PC 구매 비용 |
기존 PC 사용 |
기존 PC 사용 씬 클라이언트 구매 |
기존 PC 사용 시 간접 관리 비용 분석 필수 |
PC 교체 주기 |
4년 |
7년 |
|
PC 관리 비용 (유지보수/업그레이드) |
PC 유지보수 비용 업그레이드 비용 |
씬 클라이언트 관리 비용 |
|
PC 장애에 따른 간접비용 |
PC 장애 시 장비 교체 비용 장애처리 지연에 따른 업무 손실 비용 (4 ~ 8 시간) |
즉각 교체 |
|
VDI H/W 도입비용 |
– |
가상화 서버 및 스토리지 |
VDI 구축을 위한 초기 도입 비용 발생 |
VDI S/W 도입비용 |
– |
VDI S/W 도입비용 Microsoft VECD 라이선스 |
|
VDI 구축비용 |
– |
VDI 환경 구축 데스크탑 환경 이전 기타 연동 |
TCO 비교를 위해 기존 PC 환경의 비용 분석에서 반드시 고려해야할 사항은 PC 장애에 따른 간접 비용이다. 일반적으로 기존의 PC 환경에 대한 비용 분석에는 PC 도입 비용과 OS 등 소프트웨어 비용만을 포함한 후에 교체 주기를 산정한 후 비용을 산정하게 된다. 여기에 PC 유지 보수를 위한 비용을 포함하는 것이 보통이다. 그런데 실제로 기존의 PC를 사용할 때 고려하지 못하는 비용이 PC 장애로 인한 업무 손실 비용이다. 예를 들어 직원 한 명의 PC가 장애가 발생하여 새 PC를 지급하고 OS 설치, 소프트웨어 설치 등을 완료하는데 걸리는 시간이 4시간이라고 한다면 그 직원이 4시간 동안 업무를 하지 못함으로써 발생하는 손실은 그 직원의 4시간의 인건비와 간접경비 등의 합이 된다.
반면 VDI의 경우는 사용자 단말(기존 PC 또는 씬 클라이언트)의 경우 장애가 발생하더라도 소프트웨어나 OS 설치에 소요되는 시간은 고려하지 않는 것이 보통이다. 왜냐면 여분의 장비를 연결하기만 하면 VDI 서버 내의 업무 환경에 바로 접속할 수 있으므로 사용자 단말의 장애로 인한 업무 손실은 없는 것으로 고려할 수 있다. 그러나 VDI 환경의 경우에 기존의 PC를 단말로 사용하더라도 VDI 환경 구축을 위한 가상화 서버, 스토리지 등의 인프라 비용 외에 VDI 소프트웨어, VDI 접속을 위한 MS OS 추가 라이선스 (VDA 또는 별도의 OS 라이선스) 비용이 발생하며 VDI 구축에 필요한 컨설팅, 구축 인건비, 데스크탑 환경 이전 등의 초기 도입 비용이 발생하게 된다.
따라서 위의 항목을 바탕으로 기존 PC 환경을 유지하는데 필요한 총 TCO와 VDI 환경으로 전환할 경우에 발생할 초기 도입 비용을 포함한 총 TCO를 비교하여야만 VDI 구축의 TCO 비교가 가능하다. 물론 여기에는 VDI를 구축함으로써 얻을 수 있는 보안 강화 및 모바일 업무 환경 제공을 통한 업무 효율성 향상 등의 정성적인 비용도 필요시에 포함해야 하나 이러한 정성적인 비용은 수치로 계량화하기가 어렵다는 것이 현실이다.
항목 |
기존 PC |
VDI |
비고 |
PC 구입 비용 |
|
|
PC / 모니터 / 마우스 / 키보드 |
PC 유지보수비 |
|
|
연간 하드웨어 비용의 8%, 감가상각기간 |
장애손실 비용 |
|
|
년간 2일의 업무 장애 가정, 일당 200,000/일 |
데이터복구 비용 |
|
|
하드디스크 장애로 인한 복구 비용, 500,000/회 |
VDI 서버 비용 |
|
|
서버 대당 비용 / 서버 대당 VM 수량 |
VDI 서버 유지보수비 |
|
|
연간 하드웨어 비용의 8%, 감가상각기간 |
씬클라이언트 |
|
|
씬클라이언트 / 모니터 / 마우스 / 키보드 |
씬클라이언트 유지보수비 |
|
|
유지보수 없이 전체의 5%를 교체장비로 보유 |
클라이언트 OS 비용 |
|
|
클라이언트 단말 OS 비용 (필요시) |
가상머신 OS 비용 |
|
|
VM에 설치될 Windows OS 비용 (VDA) |
VDI 솔루션 비용 |
|
|
VDI 솔루션 도입비용 (구축비용 포함) |
VDI 솔루션 유지보수비 |
|
|
연간 솔루션 도입 비용의 15% |
VDI 스토리지 비용 |
|
|
VDI 용 공유스토리지 비용 |
VDI 스토리지 유지보수비 |
|
|
연간 스토리지 구매 비용의 8% |
총계 |
|
|
|
위의 표에 비용 항목이 예로 나타나 있다. VDI를 구축하고자 할 때는 위와 유사한 형태의 비용 항목을 정리하여 기존 PC 환경과 VDI 환경의 TCO를 비교하면 된다. 국내에서 진행된 일반적인 VDI 프로젝트의 경우 인당 총 비용이 약 150만원~200만원 정도 소요된 것으로 알려져 있으며 단적으로 기존 PC 구입 비용에 비해서 VDI 가 확실히 고비용이라고 할 수 있다.
2. VDI 구축 방법론
VDI 구축 방법론으로 대표적인 것이 Citrix의 Desktop Transformation Accelerator를 들 수 있는데 Citrix에서는 XenDesktop 기반의 VDI 환경 구축을 위한 방법론과 함께 웹 상에서 방법론에 따라서 진행할 수 있는 웹기반 도구인 Project Accelerator를 제공하고 있다. 이 글에서는 이를 기반으로 우리 실정에 적합하도록 적용한 VDI 구현 방법론을 논해보고자 한다.
VDI 구축 단계는 Analysis (분석) -> Design (설계) -> Build & Test (구축 및 테스트) -> Rollout (전개)의 4단계로 진행된다. 각 단계에서 수행할 세부 Task 및 상세 Task는 다음과 같다.
2.1 Analysis (분석) 단계
먼저 VDI 구축을 진행하기 전에 현재의 데스크탑 PC 사용환경에 대한 분석이 필요하다.
- Analysis
- User Group 분석
-
Application and Work style 분석 : 사용자 그룹 별 주 사용 어플리케이션 파악
- Data Storage & Profile 분석 : 사용자 데이터의 저장 현황 파악 (로컬 디스크에 저장 또는 네트워크 드라이브 사용)
- 네트워크 드라이브 및 Logon Script 분석 : 네트워크 드라이브 사용 방식 및 로그인 시 자동 실행 스크립트 확인
- Remote Access 요구 사항 분석 : 방화벽 및 네트워크 설정 영향도 파악
- 안티바이러스 및 보안요구사항 분석 : 보안 정책 변경 필요성 파악
- 소프트웨어 배포 방식 분석 : 데스크탑에 소프트웨어를 설치하는 방식 확인
- 네트워크 현황 분석 : 데스크탑의 네트워크 접근 정책 확인 (업무망 / 인터넷 망 분리 등)
- 사용자 데스크탑 지원 이슈 분석 : 사용자 PC에서 주로 발생하는 이슈 분석
-
- 데스크탑 이전 계획 수립
- 1-to-1 Migration : 물리적인 데스크탑 환경을 그대로 VDI로 이전
- Clean Migration : 새로 OS 및 어플리케이션을 설치한 후 VDI에서 제공
- Clean Migration & Desktop OS Upgrade : OS를 업그레이드 한 후 어플리케이션을 설치한 후 VDI에서 제공
- User Group 분석
Analysis (분석) 단계에서 수행해야 하는 Task는 현재 사용자들이 데스크탑 PC를 사용하는 형태와 정책을 분석하는 것이 주요 과제이다.
조직에서 특정 사용자 그룹은 주 업무가 특정 소프트웨어를 사용하는 것(예를 들어 콜센터, 회계 부서는 특정 어플리케이션만 주로 사용)일 수도 있고 기획자는 오피스 어플리케이션을 주로 사용할 것이며 개발자나 설계자는 자신의 업무에 특화된 소프트웨어만 사용할 수 있다. 각각의 경우에 따라서 VDI에서 제공할 어플리케이션과 VM의 형태가 달라질 수 있다.
Data Storage 분석은 대부분의 사용자가 자신의 로컬 디스크에 데이터를 보유할 수도 있고 특정 공유 파일 서버를 직원이 공유하고 있는 형태일 수도 있다. 이에 따라서 VDI에서 제공해야하는 스토리지의 용량과 방식이 달라질 것이다.
Remote Acctess 요구 사항은 대표적으로 특정 그룹(주로 외부 영업)은 사외에서 사내의 데이터에 접근하고자 하는 수요가 있을 수 있으며 안티바이러스 정책은 현재 조직 내에서 주기적으로 바이러스 백신 검사를 수행하는지 아니면 정책적으로 중앙부서에서 백신 정책을 내려보내는지 등을 파악해야만 VDI에서도 동일한 정책을 적용할 것인지 아니면 VDI 서버에서 일괄 안티바이러스 정책을 관리하도록 변경할 것인지가 파악이 가능하다.
소프트웨어 배포방식의 경우 사용자가 프로그램을 다운받아서 직접 설치하는 프로세스인지 아니면 중앙에서 어플리케이션을 관리하고 업데이트 서버에서 내려보내는 방식인지를 확인해야한다. 그리고 현재 특정 데스크탑 PC는 특정 서버로만 접속이 가능하도록 정책이 적용되고 있는지 등을 미리 확인해둘 필요가 있다. 마지막으로 현재 조직 내에서 데스크탑 PC에서 가장 빈번하게 발생하는 지원 이슈가 무엇인지를 파악해두는 것이 추후 VDI의 구축에서 필요하게 된다.
안티바이러스 및 보안 정책 변경에 대해서는 특히 VDI 환경에서 세심한 주의가 필요하다. 일반적으로 바이러스 백신 체크를 주기적으로 모든 PC에서 수행하는 정책을 가진 조직이 많은데 VDI에서 이 정책을 그대로 유지할 경우 VDI 전용 스토리지 시스템의 과부하로 인해 전체 시스템이 중지되는 사고가 초기에 빈번하게 발생했다. VDI 환경에서는 랜덤하게 바이러스 백신 체크를 하는 방법으로 정책을 변경하거나 기존의 백신이 아닌 가상화 전용 백신을 사용하고 VDI PC에서는 바이러스 체크를 하지 않는 형태로 정책을 변경하는 것이 도움이 된다. 마찬가지로 문서 유출 방지를 위한 DRM이나 USB 차단 프로그램 등은 VDI 환경에서는 데이터가 중앙에 집중되므로 개별 사용자 VM에서는 적용할 필요가 없는데도 기존의 환경을 그대로 VDI에 적용할 경우에는 불필요한 과부하를 유발할 수 있으므로 이에 대해서는 세밀한 분석을 통해 정책 변경 여부를 결정해야 한다.
Analysis 단계를 통해 현재 데스크탑 사용 현황을 파악한 후에 VDI 환경으로 어떻게 이를 이전할 것인지를 결정하게 된다. 1-To-1 마이그레이션은 현재의 데스크탑과 동일한 환경을 VDI에서도 제공하는 방식인 반면 Clean Migration은 VDI에 새로 OS와 어플리케이션을 모두 탑재한 후에 완전히 새 PC를 지급하듯이 VDI 환경을 제공하는 방안이다. 마지막의 Clean Migration & Desktop OS Upgrade는 VDI를 구축하면서 사내의 표준 OS를 업그레이드하는 방식이다. 예를 들어 데스크탑의 표준 OS가 Windows XP인데 이를 Windows 7이나 Windows 8로 업그레이드하고자할 때 기존의 PC에서는 모든 업무 프로그램의 영향도를 다 확인해야하며 이 과정은 실제 업무에 상당한 지장을 줄 수 있어서 많은 비용과 시간이 걸린다. 따라서 VDI를 구축하면서 VDI 환경에서 새로운 버전의 운영체제를 설치하고 주요 업무 프로그램의 영향도를 모두 분석한 후에 사용자에게 VDI 환경을 제공할 경우 손쉽게 조직 내의 표준 OS를 업그레이드 할 수 있으므로 많은 사례에서 OS 업그레이드 계획과 VDI 구축 계획을 병행해서 진행한 바 있다.
2.2 Design (설계) 단계
Analysis 단계를 완료한 후에는 VDI 설계 단계로 진행한다. 설계 단계의 세부 Task는 다음과 같다.
- Design
- 하드웨어 인프라 설계
- Virtual Desktop 요구사항 결정
- Hypervisor 및 VDI 솔루션 선정
- 하드웨어 사이징 및 설계
- 스토리지 사이징 및 설계
- 네트워크 설계
- 소프트웨어 인프라 설계
- Security & Anti-Virus 설계
- OS Migration 설계
- 하드웨어 인프라 설계
설계 단계는 분석 결과를 바탕으로 진행되며 하드웨어 인프라 설계와 소프트웨어 인프라 설계로 나눌 수 있다.
하드웨어 인프라 설계에서는 먼저 분석 단계에서 수행된 현재의 데스크탑 사용 현황과 이슈를 바탕으로 가상 데스크탑에서 필요한 요구사항을 결정한다. 여기에는 가상 데스크탑의 CPU 및 메모리 사용량, 사용자별 데이터 저장 공간 제공량 등을 결정하게 되며 가상 데스크탑에 설치될 어플리케이션을 결정하게 된다.
다음으로 이를 바탕으로 가상 데스크탑을 최적으로 운영할 수 있는 Hypervisor와 VDI 솔루션을 선정한다. 예를 들어 Citrix XenDesktop은 VDI와 함께 Application 가상화를 한번에 구현할 수도 있으며 네트워크에 최적화된 ICA 프로토콜을 지원함으로써 모바일 환경이나 적은 네트워크 대역폭 사용등의 장단점이 있고 VMware Horizon View 는 PCoIP 프로토콜로 대역폭이 충분한 영역에서 효과를 볼 수 있는 등의 각 솔루션 별로 특화된 장단점이 VDI 요구 사항에 적합한지를 파악하여 솔루션을 선정한다.
솔루션을 선정한 후에는 각 솔루션에 적합한 하드웨어와 스토리지를 선정하고 필요한 용량을 결정하게 된다. Hypervisor 별로 VM을 운영하는 방식과 메모리 용량이 달라질 수 있으므로 하드웨어는 솔루션에 따라서 달라질 수 있다. 마찬가지로 스토리지의 경우 Hypervisor에 최적화된 스토리지를 선정하는 것이 바람직하다. 예를 들자면 VMware는 FC SAN을 사용하는 것이 유리하며 Citrix의 XenDesktop은 XenServer나 Hyper-V에 적합한 iSCSI 스토리지를 채택하는 것이 바람직하다. 마찬가지로 스토리지 용량은 사용자의 데이터 저장 방식과 VM 이미지 저장 방식에 따라서 필요 용량이 달라지므로 이에 따라서 스토리지를 선정하는 것이 좋다. 뿐만 아니라 사용자 데이터를 저장하기 위해 별도의 NAS와 같은 네트워크 스토리지를 분리할 것인지도 여기서 결정하게 된다. 그리고 특정 업무만 수행하는 사용자 그룹을 위해서 공유 OS 구조의 가상 데스크탑을 제공할 경우는 OS 용량은 최소한으로 제공할 수 있으므로 스토리지 용량과 구성이 달라지게 된다.
마지막으로 네트워크 현황 및 보안 정책에 따라서 VDI 환경의 네트워크 구성 방안을 결정하고 이에 따른 설계를 진행하게 된다.
소프트웨어 인프라 설계에서는 앞의 분석 단계에서 수행한 안티바이러스와 보안 정책에 따라서 사용자의 개별 VM에 어떠한 정책을 적용하여 사용자에게 가상 데스크탑을 배포할 것인지에 대한 설계를 수행하며 OS 마이그레이션 설계에서는 주요 어플리케이션에 대한 가상 데스크탑에서의 호환성 검증 방안을 수립한다.
2.3 Build & Test (구축 및 테스트) 단계
설계가 완료되면 설계 내용에 따라서 VDI 환경에 대한 구축과 테스트를 수행한다. 이 단계의 세부 Task는 다음과 같다.
- Build & Test
- 인프라 구축
- 서버 구축
- 네트워크 설정
- 스토리지 구축
- Base Image 구성
- Base Image 구성
- 단위 테스트
- 인프라 구축
구축 단계에서는 VDI 인프라인 서버, 네트워크 및 스토리지 구축 및 VDI 솔루션 설치를 수행한다. 이 단계가 완료된 후 VDI 환경에서 사용할 Base Image를 생성한다. Base Image란 설계 단계의 요구 사항이 반영된 어플리케이션이 설치된 기본 데스크탑 OS 이미지를 구성하게 되며, 이때 사용자 그룹 별 용도별 Base Image를 복수로 구성할 수 있다. Base Image를 구성한 후에 이를 이용하여 어플리케이션 호환성 및 사용자 요구 사항이 정상적으로 반영되었는지에 대한 단위테스트를 수행한다.
2.4 Rollout (전개) 단계
구축과 테스트가 완료되면 이를 통해 사용자에게 데스크탑을 제공하는 Rollout을 진행한다. Rollout은 다음의 세부 Task로 진행된다.
- Rollout
- Pilot 테스트 및 교육 계획 수립
- Pilot Test
- 교육 계획 수립
- Go-Live
- Go-live
- 지원 및 운영 절차 수립
- 사용자 교육
- 사용자 Feedback 취합
- Feedback 취합 및 변경 관리
- Pilot 테스트 및 교육 계획 수립
Rollout을 통해 전체 사용자에게 VDI 환경을 적용하기에 앞서 전체 사용자의 10% 정도(사용자 그룹별, 용도별)를 선정한 후 파일럿 테스트를 수행한다. 파일럿 테스트 수행과정에서 VDI 환경에 대한 교육 계획을 수립하는 것이 바람직하다. 이 때 파일럿 사용자는 VDI 환경에 대한 의지와 Feedback을 제공할 수 있는 적극 사용자를 선정하고 이들이 전파 교육을 수행할 수 있도록 교육 계획을 같이 수립하는 것이 좋을 것이다.
파일럿 테스트와 교육 계획을 수립한 후에 전체 사용자를 대상으로 VDI 환경에 대한 배포를 수행하게 된다. 안정화 기간 동안 사용자의 Feedback을 취합하면서 동시에 VDI 운영자를 위한 지원 및 운영 절차를 수립하면서 동시에 전체 사용자에 대한 교육도 병행하게 된다. 교육과 Feedback을 통해 설계 단계에서 고려하지 못한 사용자 요구사항에 대한 취합과 이에 대한 반영을 진행하게 된다.
이상으로 VDI 구축 방법론에 대해서 살펴보았다. 이 글을 읽는 독자들은 비용 문제를 제외하고도 VDI 환경을 구축하는데 이렇게 할 일이 많은가하는 의구심과 함께 생각보다 준비과정과 절차가 복잡하다는 느낌이 들 것이다. 그런데 바꿔 생각하면 VDI 구축이라는 것이 단순이 PC를 대체한다는 것이 아니라 데스크탑 환경을 변화시키는 프로젝트라는 생각으로 접근한다면 이는 필수불가결한 절차라고 볼 수 있다. PC는 책상이나 비품과 같은 자산이 아니라 조직의 가장 중요한 IT 자원이며 VDI 구축은 이러한 PC를 조직의 IT Governance 내로 통합하는 프로젝트라는 것이 필자의 견해이다. 따라서 기존에는 PC를 총무부서에서 비품으로 관리했다면 VDI 구축을 통해 PC를 IT 부서에서 ERP 와 같은 기간 시스템으로 관리하도록 조직의 IT 마인드를 변경하는 것이 필요하다고 본다.
3. VDI 구축 고려 사항
이 절에서는 VDI 구축 방법론의 각 단계를 진행하면서 고려할 만한 내용 몇 가지를 언급하고자 한다.
3.1 VDI 최적화 고려 사항
VDI의 최적화를 위해 다음과 같은 사항은 설계 단계에서 충분히 고려해볼 가치가 있다.
- Single Image Managemt
가상 데스크탑 요구 사항을 반영하여 Base OS Image를 생성할 때 사용자 전체에게 공통의 OS와 필수 Image를 제공하고 가상 데스크탑 내에서 사용자가 기존 PC 처럼 적절히 프로그램을 설치하도록 제공하도록 하거나 사용자 그룹별 부서별로 특화된 Base Image를 만들어서 제공할 수도 있다. 후자의 경우 회계그룹용, 개발그룹용 등으로 분류해서 소프트웨어 및 환경을 다르게 제공하고 필요시에는 한 사용자에게 여러개의 데스크탑에 접근할 수 있도록 권한을 부여할 수 있는데 후자와 같이 분류할 경우 어플리케이션 라이선스 관리 및 가상 데스크탑을 세분화 할 수 있다는 장점이 있으나 업데이트, 패치 등을 그룹별로 진행해야하는 번거로움이 존재한다.
- Streamed / Remote Application 사용
가상 데스크탑에서 사용할 어플리케이션을 설치형태로 제공할 것이냐 아니면 별도의 어플리케이션 가상화 서버를 구축해서 가상 데스크탑에서 스트리밍이나 원격으로 사용할 것이냐를 고려하는 것은 전체 가상 데스크탑의 용량 및 하드웨어, 스토리지 용량을 결정하는데 중요한 요소가 될 수 있다. 예를 들어 Microsoft Office를 모든 사용자 데스크탑에 설치할 경우 MS Office를 운영하기 위해서 최소 메모리는 사용자 데스크탑 마다 2GB (4GB 권장) 이상이 필요한데, MS Office를 Application 가상화 서버에 설치해서 필요시에만 사용하고 데스크탑에는 설치하지 않을 경우 OS 운영을 위한 최소 메모리 (Windows 7의 경우 1.5GB)로도 운영이 가능하므로 전체 가상 데스크탑을 운영하기 위한 서버 수량을 현저히 줄일 수 있게 된다. 뿐만 아니라 어플리케이션의 업그레이드 및 패치를 위해 모든 가상 데스크탑을 업그레이드하거나 패치 또는 재배포할 필요 없이 어플리케이션 가상화 서버에서만 업그레이드하면 되므로 관리 편의성도 증대된다. VDI에서는 사용자 데이터를 공유 스토리지에 저장하게 되므로 어플리케이션 가상화를 통해 공통 어플리케이션을 사용하도록 하는 것도 문제가 되지 않는다.
- Profile Consideration
Microsoft Windows 운영 체제는 기본적으로 OS + 사용자 Profile (My Documents 및 바탕화면) + Data 의 결합으로 구성되어 있는데 VDI에서는 이 Profile을 가상 데스크탑의 로컬 디스크에 저장할 것인지 아니면 원격의 네트워크 스토리지에 저장(로밍 모드)할 것인지를 결정할 수 있다. Profile을 원격 네트워크 스토리지에 저장할 경우 OS 이미지는 개별 사용자 별로 할당할 필요가 없이 동시 사용자 수만큼만 구동하면 되므로 전체 사용자가 1000명이고 동시에 PC를 사용하는 비율이 200명이라면 전체 가상 데스크탑은 200만 생성해도 충분하다. 사용자는 어떠한 가상 데스크탑 VM에 로그인하더라도 원격 스토리지에 저장된 자신의 Profile과 데이터를 사용할 수 있게 된다. 단 이 때 Profile에 저장한 데이터 (대표적으로 outlook.pst 파일 및 바탕화면에 저장된 문서 등)가 양이 많을 경우 로그인 할 때마다 그 데이터를 읽어와야 하므로 로그인 시간이 길어지는 단점이 있으므로 Profile 정책을 적절히 선정하여 로컬 VM에 저장할 것인가 (이 때는 사용자별로 VM을 할당해야 한다) 아니면 공용 VM에 로밍 Profile을 적용할 것인가를 결정해야 한다.
- Storage Consideration
사용자 데이터를 원격 네트워크 스토리지에 저장할 경우 데이터의 안정성 확보 및 공통 VM 사용등의 장점이 있는 반면 가상 데스크탑 사용자가 많을 경우 네트워크 스토리지의 부하를 분산할 방안을 고려해야 한다. 예를 들어 1000명의 VDI 사용자가 네트워크 스토리지에 데이터를 저장할 경우 사용자 전체의 네트워크 접속을 감당할 수 있는 파일 서버 도입을 검토하거나 그룹별로 데이터 스토리지를 분산하는 방안을 고려해야 한다.
- Branch Office & Remote Access
VDI 사용자 중에서 외부에서 접속을 해야하는 지사나 외근 사용자에게 VDI 접속을 허용하고자 할 경우에 VPN 도입 및 데이터 유출 방지를 위한 인증 등 보안 요구사항을 고려해야만 한다. 이와 동시에 외부 사용자의 네트워크 상황에 따른 VDI 접속 성능 저하 여부도 고려해야 한다.
3.2 가상 데스크탑 제공 방식
다음으로 고려할 사항은 사용자에게 가상 데스크탑을 제공하는 방식으로 Pool 방식의 데스크탑과 Dedicated 방식의 데스크탑 할당으로 구분할 수 있다.
- Pool 방식 데스크탑 할당
Pool 방식의 데스크탑은 모든 사용자에게 동일한 OS 이미지를 제공하고 Profile과 데이터는 네트워크 스토리지에서 연결하는 구조이다. 이는 Profile 고려 사항에서 언급하였듯이 전체 사용자 중에서 실제로 데스크탑을 사용하는 동시 사용자 수만큼의 가상 데스크탑만 생성하면 되므로 하드웨어 등 리소스 효율을 극대화할 수 있다. 즉 가상 데스크탑을 동시 사용자 수만큼 제공하고 사용자는 로그인 하는 순간 비어있는 데스크탑에 로그인하여 데스크탑을 사용할 수 있다는 장점이 있다. 단점으로는 사용자가 자신의 데이터 영역이 아닌 C:\temp 등에 데이터를 저장해 둘 경우 다음 로그인 시에는 다른 비어 있는 데스크탑에 들어가게 되면 그 데이터는 사용할 수 없을 수도 있다. 뿐만 아니라 특정 Active-X 등을 설치할 경우 다른 가상 데스크탑에 들어가게 되면 또 다시 Active-X 등을 다운받아야 한다는 불편함이 생길 수 있다. 따라서 회의실, 교육장 또는 공용 PC 또는 특정 업무만을 수행하는 부서 (회계부서, 콜센터 등)에 적용하는 것이 바람직하다.
- Dedicated 방식 데스크탑 할당
Dedicated 방식의 데스크탑 할당은 각 사용자에게 자신만의 가상 데스크탑을 할당하는 방식이다. 이는 기존에 사용자별로 PC를 나눠주는 것처럼 가상데스크탑을 나눠주는 것으로 사용자가 자신만의 어플리케이션을 설치할 수도 있고 네트워크 스토리지 뿐만 아니라 VM 내에도 데이터를 저장해도 문제가 없다. 하지만 사용자별로 디스크 공간을 제공해야하므로 스토리지 용량을 전체 사용자 수만큼 확보해야 한다. 뿐만 아니라 사용하지 않더라도 전체 사용자 수만큼의 CPU, 메모리 용량을 제공하면서 서버 용량은 실제 동시 사용자 수만큼 제공하도록 사이징을 하게 되므로 사용자가 로그인하는 순간 가상 데스크탑이 켜지면서 부팅을 하게 되어 부팅 시간이 요구된다는 단점이 있다.
일반적으로 사용자 그룹 및 어플리케이션 별로 Pool 방식과 Dedicated 방식을 혼합해서 구성한 후 필요시에는 두개의 가상 데스크탑을 번갈아 사용하도록 제공하도록 구축되는 경우도 있다.
3.3 데이터 및 개인화 관리
Pool 방식의 데스크탑을 사용하면서도 사용자 별로 어플리케이션 설정이 필요할 경우에는 이를 위한 커스터마이징이 필요할 수도 있다. 예를 들어 특정한 어플리케이션이 특정 사용자별 정보나 로그 등을 C:\Applicaion\app.log 와 같이 저장해야만 할 때 (의외로 기존의 legacy 어플리케이션에서 많이 발생한다) 사용자가 로그인할 때마다 이 파일을 리다이렉션해서 공유 스토리지의 개인별 공간에서 옮겨오고 로그오프할 때 옮겨 놓는다든지 하는 형태의 커스터마이징이 필요할 수 있다. 어떤 어플리케이션은 어플리케이션을 설치한 ID로만 실행이 가능한 경우도 있어서 Pool 방식의 데스크탑에는 적용이 불가능한 경우도 있을 수 있다.
사용자 데이터의 경우는 데스크탑 OS 이미지의 손상 또는 재배포 시에도 영향을 받지 않아야 하므로 일반적으로 VDI에서는 네트워크 스토리지에 저장하게 되는데 이 때는 사용자 수의 증가에 따라서 네트워크 병목과 스토리지 성능 저하가 발생하지 않도록 스토리지를 설계해야 한다. 뿐만 아니라 로밍 프로파일을 사용할 경우 로밍 프로파일의 크기가 일정 이상으로 증가하지 않도록 설정할 필요가 있으며 outlook.pst 파일이나 My Documents 내의 파일은 가급적이면 네트워크 스토리지로 저장되지 않도록 설정하는 것이 필요하다. VDI에서 outlook을 메일 클라이언트로 계속 사용하고자 할 경우 이에 대한 정책 수립도 필수적이라고 할 수 있다.
3.4 바이러스 체크 및 월요일 효과
안티바이러스 현황 분석에서도 언급하였듯이 기존 PC에서 정기적으로 바이러스 체크를 수행하던 정책을 그대로 가상 데스크탑에 적용할 경우 특정 시기에 모든 가상데스크탑에 I/O 부하가 발생하면서 VDI 스토리지의 성능 저하가 발생하거나 혹은 전체 VDI 인프라가 다운되는 경우가 발생한다. (실제 사례이다) 따라서 주기적인 바이러스 체크를 어떻게 VDI에서 적용할 것인가 하는 것은 필수적인 고려사항이라고 할 수 있다.
월요일 효과는 흔히 VDI에서 Boot Storm으로 알려진 현상으로 월요일 아침에 모든 사용자가 동시에 가상데스크탑에 접속함으로써 가상 데스크탑 인프라에 동시에 I/O 부하가 발생하는 현상으로 이를 회피하기 위한 다양한 고려가 필수적이다.
3.5 어플리케이션 라이선스 확인
VDI 환경으로 전환할 때 필요한 Microsoft의 OS 및 Office 등 어플리케이션 라이선스와 CAL에 대한 검토와 고려가 필요하다. OS가 포함되어 있는 PC를 구매하여 사용하던 조직에서 VDI로 전환해서 가상 데스크탑으로 OS를 제공하고자 할 경우에는 PC에 포함된 OEM OS와는 별도로 가상 데스크탑 사용자 수 만큼의 운영체제 라이선스를 구매해야만 할 경우가 있다. 또는 EA (Enterprise Agreement) 혹은 GA (Goverment Agreement)가 체결되어 있을 때도 VDI를 위한 VDA 라이선스가 포함되어 있는지를 확인해야 한다.
Microsoft 라이선스 뿐만 아니라 기존에 사용중이던 어플리케이션의 라이선스를 VDI 환경으로 이전할 수 있는지 혹은 이전시에 변경되는 라이선스 정책이 있는지를 개별 어플리케이션 별로 확인해야 추후 라이선스 위반으로 인한 피해를 방지할 수 있다.
3.6 VDI 검증 항목
마지막으로 실제 VDI를 구축했을 때 고려해야할 관리, 성능 및 사용자 편의성 고려 사항은 다음과 같다. 실제 구축 시에는 목적에 맞춰서 아래와 같은 검증항목을 사전에 확정하고 그에 맞춰서 구축을 진행해야 한다.
- VDI 관리 검증 항목
- 속도 및 성능 검증 항목
- 사용자 환경 검증 항목
- 어플리케이션 검증 항목
4. 결론
이상으로 VDI를 성공적으로 구축하기 위해서 고려해야할 사항과 방법론 등을 살펴보았다. 앞에서 언급한 내용을 요약하자면 다음과 같다.
- VDI 구축은 솔루션 도입이 아닌 인프라 재구축 프로젝트이다.
- VDI 구축을 위한 방법론에 따라 상세 현황 분석 및 설계가 필요하다.
- 현황 분석과 설계에 따른 최적의 하드웨어/솔루션 조합이 필요하다.
- PC 교체 프로젝트가 아니라 데스크탑 인프라 구축 프로젝트라는 인식이 필요하다.
- VDI 도입으로 인한 사용자 환경 변화 및 어플리케이션 라이선스 변경 사항 등에 대한 사전 고려가 필요하다.
- VDI 적용에 필요한 정책적 고려 사항 및 변경이 필수적이다.
- 물리적 환경에서와는 다른 VDI 환경에서의 고려 사항과 요구 사항을 파악하고 이를 해결하도록 구현되어야 한다.