[VMWare] vm ¿¡ vCPU ÇÒ´ç¿¡ °üÇÑ ±ÛÀÔ´Ï´Ù.
http://m.cafe.naver.com/TabletMyCafeIntro.nhn?cluburl=vmwareesx&artic¡¦ (409)
[정보] VM에게 이유 없이 vCPU를 2개 이상 할당해서는 안되는 이유
http://m.cafe.naver.com/TabletMyCafeIntro.nhn?cluburl=vmwareesx&articleid=4784
위 글에서의 결론은, vm 당 vCPU를 2개이상 할당하지 말라는 것입니다. 그 이유는 글에서 잘 설명하고 있습니다.
저도 이 글을 보고 나서는 할당된 vCPU 의 총 합이 전체 물리 CPU( Core )개수를 넘지 않도록 사용하고 있습니다.
가상서버를 많이 올리는 서버일수록 vm 할당개수는 줄이는게 역설적이긴 하지만 정답인듯 합니다.
-- 내용추가 : 카페 비공개 문서네요. 결론만 올립니다. --
5. 결론
이제 vCPU 를 2개 이상 설정하기 위해서는 목적이 분명해야 하고 꽤나 고민해야 한다. vCPU 를 몇개 가지고 갈것인지에 대한 나름의 Best Practice 를 공유하자면 아래와 같다.
- Multi-Thread 어플리케이션을 작동 중일 계획이 아니라면 무조건 VM 은 vCPU 1개로 시작한다.
- Multi-Thread 어플리케이션이 확실하다면 2 vCPU 부터 시작하되 항상 작게 조금씩 늘려간다.
- Windows Vista 또는 7 그리고 2008 이상부터의 Windows OS 들은 HAL 이 Uni-processor HAL 과 Multiprocessor HAL 이 동일하기 때문에 vCPU 개수를 언제든지 변경할 수 있지만 Windows 2003 이하의 버전은 절대 그렇지 않기 때문에 주의한다.
- 만일 P2V 를 이용해서 Windows 2003 을 Convert 한 경우라면 VM 의 HAL 이 반드시 제대로 구성되어 있는지 재차 확인한다. 잘못된 HAL 은 VM 자체의 성능 뿐 아니라 ESXi 가 설치된 서버의 전체 성능까지 영향을 끼친다.
- 최근의 x86 서버들은 모두 NUMA 구조이므로 가급적 NUMA 구조에서 vCPU 를 2개 이상 구성할 경우에는 CPU Core 개수로 나누어 떨어지는 개수로 vCPU 개수를 결정한다. 예를 들어 최근의 인텔 E5 샌디 브릿지 CPU 의 경우 소켓당 최대 8 Core 이므로 1/2/4/8 단위로 vCPU 를 할당하는 것이 가장 좋다.
|