'VT-d'의 유무가 가상화에 많은 차이를 주나요?

   조회 34781   추천 0    

 

안녕하세요. 오늘도 시덥잖은(?) 궁금증을 해결하고자 질문글 올립니다.

 

예전에 'VT-d'기능을 지원하는 Q67 칩셋을 알아보다 슈마의 C7Q67 보드를

 

알게되었고 어디서 구할 수 있는지 물어본적이 있습니다.

 

원래 'IPMSB-GS/H67'를 구매하려다가 '한번 맞추는거 제대로 맞춰서 오래쓰자!'

 

라는 욕심에 찾아본건데 가격이 거의 3배여서 포기했었습니다.

 

하지만 몰랐으면 모를까... 이미 알아버린 뒤에는 포기하기가 힘들더군요.

 

처음엔 총알 모아서 사야지 하다가 어느새 잊고 살았습니다.

 

그러다 이번에 크리스마스 선물 뭘로하지~ 라는 고민을 하면서 새로운 보드를

 

영입하려고 인터넷 뒤적거리고 아톰의 성능에 관한 질문글 올리고 답변 받다가...

 

'헉!! 2500T, 4GB * 2ea, 인텔 1port 기가랜, SSD 다 구해놓고 내가 왜 새로운

 

저전력 컴터를 만들 타령을 하고있지 ? 보드만 하나 사면 되는데...'  

 

장난이 아니라 정말 저 녀석들 다 잊고 살았습니다. 

 

 

 

또 쓸데없는 잡설이 길었습니다. 여하튼 ! !

 

10만원이 안되는 'IPMSB-GS/H67' 보드와 20만원 중후반대의 'C7Q67' 보드의 차이가

 

1. 'VT-d'지원 유무

 

2. 최대 16GB VS 32GB 메모리 지원 (그렇게 복잡하게 쓸건 아니라서 16GB 승리~그래도 욕심은...)

 

3. 인텔 듀얼 기가비트 랜 (이미 인텔 1port 기가랜을 준비해 놔서 그닥...그래도 욕심...)

 

4. AMT 지원 유무 (이건뭐.... IPMI랑 비슷한 건가요?)

 

5. DVI 지원유무 (이건 IPMSB-GS/H67이 승리내요)

 

이정도인것 같습니다. 다른건 이냥저냥 타협 & 준비 & 뭔지모름으로 해결을 봤는데

 

'VT-d'는 자꾸 마음에 걸립니다. 당장은 2008 R2 베이스로 2008 R2 Core 가상화 1개와

 

Linux (혹은 윈 XP, 7) 가상화 1개를 돌릴 생각이라 상관 없을듯한데 앞으로

 

이 컴터를 베이스 서버로하여 가상화를 이용, 이것저것 가지고 놀면서 공부할 것이기 때문에

 

왠지 있어야 할 것 같기도 합니다.

 

'VT-d' 제대로 사용하시는 분 계시면 조언 부탁드립니다.

 

 

 

좀 더 참을지 그냥 저가보드로 갈지... 이번 크리스마스 전에 해결을 봐야겠습니다.

 

이번에도 어영부영 넘어가면 또 까먹을거 같아요~   

짧은글 일수록 신중하게.
VT-D는 가상머신에서 장치에 직접 엑세스를 할 수 있게 해주는 기능이라는 것은 알고 계시죠?



이게 아래와 같은 경우 아주 유용합니다.

예를 들어 ESXi 같은 하이퍼바이저에서 VT-D를 지원하는 경우... VMDirectPath라는 기능을 사용합니다.

레이드 컨트롤러 같은 것을 가상머신에 지정하여 가상머신에서 직접 입출력관리를 할 수 있게 해줄 수 있죠.

만일 이게 안되면 가상머신에 가상디스크를 할당하여 사용해야 하는데, 성능과 관리적 측면에서 상당히 손해가 되겠죠.

암튼 저같은 경우 몇번 써보니 아주 유용했습니다.

http://www.servethehome.com/configure-passthrough-vmdirectpath-vmware-esxi-raid-hba-usb-drive/
조우연 2011-12
위에 박창신님께서 잘 설명해 주셨는데 몇가지 첨언합니다.



가상화를 할때 '호스트 OS' 기반이던 '하이퍼바이져(Hypervisor)'기반이던. 각각의 디바이스들은 VMM을 통해서 각각의 VM 들과 연결이 되며 vmm을 통해서 디바이스를 가상으로 에뮬레이션하여 자원을 할당받아보니. 효율성 문제와 병목현상이 발생합니다.



그래서 각각의 VM에서 직접적으로 디바이스를 엑세스 할수 있게 해주는 기술이 VT-D 입니다.
(위 이미지 하나만 보셔도 차이는 쉽게 이해 되실겁니다.)
왼쪽이 일반 소프트웨어 방식의 I/O 가상화를 통한 연결방식을 보여주는것이고. 오른쪽이 VT-D 기술을 사용하여 VM 들과 연결된 상태를 보여줍니다. 이렇게 디바이스를 직접적으로 연결하기 위해서는 DMA Remapping 이라는 기능이 필요한데.



DMA Remapping 이란 이름에서 알수 있든 장치(디바이스)의 고유 메모리 주소를 VM(게스트OS)에서 "직접" 엑세스 할수 있도록 DMA메모리 주소값을 변환/관리 해주는 기술입니다.


각각의 디바이스들과 시스템이 직접적으로 연결되는 노스브릿지 사이에 VT-D 기능이 위치하게 되며. 이로 인해 '칩셋'에 따라 VT-D 가 적용여부가 달라지는것입니다.(※주: 메모리 컨트롤러가 cpu에 내장되고. 노스/사우스 칩셋 통합 및 인텔 정책에 따라 칩셋이 아닌 다른 제약조건으로 바뀔수 있음.)



또한 DMA Remapping 직접적으로 연결된다는 사실 이외에 따라 각각의 디바이스들은 독립적인 I/O 버퍼를 활용할수 있기 때문에 병목현상이 줄일수 있으며, 도메인간 버퍼를 공유하지 않기 때문에. 데이터 보안성도 높일수 있다는 장점도 있습니다.

VT-D 기술에 대해 좀더 자세한 내용을 원하시는분은 아래 링크를 참고하기 바랍니다.

http://download.intel.com/technology/computing/vptech/Intel(r)_VT_for_Direct_IO.pdf
http://www.intel.com/technology/itj/2006/v10i3/2-io/1-abstract.htm



결론적으로 VT-D 기술은 가상화시 당연히 있으면 좋은 기능이며. 클라이언트에게 서비스를 제공하는 서버 입장에서는 큰 차이가 됩니다만.... 데탑 시스템으로 지원할수 있는 최대 메모리 및 코어수가 서버용 제품들에 비해 한정적이라 많아봐야 2~4개정도의 VM을 올리는게 최대치라 생각되는데. 이정도 규모에서는 VT-D의 유무에 따른 체감속도는 미비할것으로 생각됩니다.

저렴한 가격에 VT-D 기능과 인텔 AMT 기능을 사용해 볼 생각이라면 구매를 말리지는 않겠습니다만.

슈퍼마이크로 제품들중에서 모델명이 C로 시작하는 제품들은 데탑용으로 설계된 구색 맞추기용 제품이라. 서버용으로 개발된 X계열보다 전원부도 부실한게 사실이고. 전반적으로 저렴한 부품이 사용되었기에. 적극 추천할 만한 제품은 아니라고 생각됩니다. 차액금인 10만원을 저축하여 차후 물리적 듀얼 제품으로 업글하는것도 한가지 방법이라 판단됩니다. 신중하게 선택하셨으면 합니다.


*이미지 출처 : intel.com
     
김승훈1 2011-12
오.. 대단하십니다. 잘 배우고 갑니다.
사이버현 2011-12
답변 잘 보고 갑니다....
황혼을향해 2011-12
대단하십니다. 물어보러 왔다가 공부하고 가는군요. ^^;

그냥 싼거 사서 쓰다가 업글하게 되면 그 때 VT-d 지원하는걸로

사야겠습니다.
딸기대장 2011-12
그럼 VT-X라는 기능은 또 뭔가요?
2500K는 VT-D말고 VT-X라고 되어있든데..
K시리즈는 모두 VT-X 더군요.
2011-12
명불허전.. 역시 조우연님이시군요. ^^
김상일 2011-12
좋은 내용 감사합니다. 저도 회사에서 하이퍼서버 운영하고 있는데 궁금했던 내용이 해결되네요.




QnA
제목Page 3407/5373
2015-12   432114   백메가
2014-05   3854651   정은준1
2011-12   5683   조성현입니다
2011-12   6940   이윤
2011-12   7006   시나브로
2011-12   6203   분당김동수
2011-12   10179   하루카
2011-12   6289   소주한병
2011-12   5608   농구황제
2011-12   7560   로그아웃
2011-12   6897   양창권
2011-12   6438   김건우
2011-12   34782   황혼을향해
2011-12   5807   김건우
2011-12   4712   승후니도쿄
2011-12   5599   미친골리
2011-12   6736   블랙
2011-12   5745   승훈
2011-12   5023   미수맨
2011-12   6954   나너우리
2011-12   10398   crow
2011-12   7884   슬픔이