태그 보관물: virtual-machines

virtual-machines

실제로 가상화의 오버 헤드는 무엇이며 언제 걱정해야합니까? 50 %)? 또 다른 예

기계를 가상화하지 않을 때 이해할 수있는 좋은 규칙을 찾고 있습니다.

예를 들어, 거의 100 %의 사용률을 가진 완전한 CPU 바운드 프로세스는 가상화하는 것이 좋지 않을 수도 있지만, 대부분의 시간 동안 CPU를 “실질적인 양”으로 활용하는 무언가를 실행하는 데 의미가 있습니다 (예 : 40). 또는 50 %)?

또 다른 예 : 1000 대의 시스템을 가상화하면 약간 또는 적당히 활용하더라도 4 개의 코어 만있는 호스트에서 모두 실행하는 것이 좋지 않을 수 있습니다.

호스트 리소스와 비교할 때 머신 워크로드 또는 수많은 게스트 머신을 기반으로 가상화에 대한 힌트를 요약 할 수 있습니까?

나는 일반적으로 VirtualBox 또는 VMWare를 사용하여 Windows 호스트에서 가상화하지만 이것이 꽤 일반적인 질문이라고 가정합니다.



답변

디스크 서브 시스템. 일반적으로 공유 가능한 리소스가 가장 적습니다. 물론 기억이지만, 그 기억은 분명합니다.

디스크 서브 시스템 제한 사항은 두 가지 방식으로 작동합니다. 시스템이 많은 디스크 I / O를 사용하는 경우 다른 게스트가 느려집니다. 이 게스트가 프로덕션 환경에 있으면 웹 쿼리에 신속하게 응답해야합니다. 이는 매우 실망스럽고 가상 하드웨어를 임대하지 않는 큰 이유이기도합니다. 전용 디스크를 사용하여이 문제를 최소화 할 수 있습니다.

게스트에서 512MB 메모리 만 사용하면 모든 디스크 캐시가 호스트에 저장됩니다. 그리고 그것은 게스트들에게 똑같이 나누어지지 않았습니다.

CPU IO에 대해 걱정하지 마십시오. 이런 식으로 가상화는 매우 효율적이며 종종 동일한 시스템에서 실행되는 여러 프로세스와 관련이 있습니다. CPU에서 100 %가 실행되는 멀티 제온 시스템은 거의 없습니다.

편집 : 오타


답변

VM에 절대 넣지 않을 것들 :

  • 가상화 할 수없는 특정 하드웨어를 사용하는 것 : 일반적으로 그래픽, 상당히 많은 하드웨어 보안 모듈, 맞춤형 드라이버가있는 것 (예 : 특수 목적 네트워크 드라이버).

  • 라이센스 문제가있는 시스템 VM에 할당 한 수량에 관계없이 실제 CPU 또는 코어 당 일부 소프트웨어 요금이 부과됩니다. 32 코어 서버의 VM에서 실행되는 단일 코어에 대한 소프트웨어 라이센스가 있으면 감사를받을 수 있습니다.

VM에 넣지 말아야 할 것들 :

  • 상용 하드웨어의 모든 리소스를 이미 사용하려고하는 소프트웨어입니다. hadoop과 같은 “빅 데이터”노력의 일환으로 작동하는 기계는 일반적으로 베어 메탈에서 실행되도록 설계되었습니다.

  • 자원을 활용하기 위해 미세 조정될 것. 실제로 데이터베이스 튜닝을 시작하면 리소스에 대해 경합하는 VM이 ​​실제로 작업에 렌치를 던질 것입니다.

  • 이미 큰 병목 현상이있는 모든 것. 이미 잘 재생되지 않으며 다른 사람들과 잘 어울리지 않을 것입니다.

VM에 넣는 데 매우 멋진 몇 가지 사항이 있습니다.

  • 많은 시간을 유휴 상태로 보내는 모든 것. 메일 및 DNS와 같은 유틸리티 호스트는 전용 서버를 보증하기 위해 최신 하드웨어에서 충분한로드를 생성하는 데 어려움을 겪습니다.

  • 자체적으로 잘 확장되지 않는 응용 프로그램. 레거시 코드는이 범주에 속합니다. 앱이 서버를 차지하도록 확장되지 않으면 작은 가상 서버를 많이 사용하십시오.

  • 소규모로 시작하지만 성장하는 프로젝트 / 응용 프로그램. 베어 메탈에서 시작하는 대신 VM에 리소스를 추가하고 새롭고 더 큰 하드웨어로 이동하는 것이 훨씬 쉽습니다.

또한 단일 호스트에 많은 수의 VM을 배치하는 것에 대해 과장하는지 확실하지 않지만 큰 VM : HW 비율을 시도하는 경우 ESX, Xen, KVM을 대신 고려할 수 있습니다. Windows에서 VMware 또는 virtualbox를 사용하는 것보다 훨씬 유리합니다.


답변

가상화 성능에는 두 가지 사항이 있습니다.

  • 병목 현상 공유
  • 에뮬레이션

병목 현상이 발생하면 누가 같은 아이언을 사용합니까? 가상화 된 환경에 함께 있으면 호스팅 파트너가 자신에게 정직한 태도를 취해야합니다.

나는 원시 성능 (특히 상호 작용 성)에 대한 주요 질문은 가상화 시스템의 어느 부분이 에뮬레이트되는지 생각합니다. 설정에 따라 다릅니다. 디스크와 네트워크가 일반적인 후보입니다. 일반적으로 에뮬레이션은 작업 수행 성능 “비용”을 두 배로 늘리므로 하드웨어 대기 시간을 두 배로 계산하고 처리량을 절반으로 줄여야합니다.


답변

궁극적으로 고성능로드를 가상화해서는 안됩니다. 가상화의 성능 과잉은 사소한 것이 아닙니다. 내 테스트 결과를 여기에서 확인하십시오.

http://www.altechnative.net/2012/08/04/virtual-performance-part-1-vmware/

OTOH, 항상 유휴 상태 인 많은 시스템을 통합하려는 경우 가상화가 진일보합니다.


답변

적에게 좋은 대답.

또한 시간이 중요한 시스템. 나는 Hyper-V dime rot을 알아 냈습니다 (vm은 천천히 뒤 떨어지고 VM의 모든 최신 OS는 자주 동기화됩니다)는 내가 개발하고있는 시간이 중요한 응용 프로그램에서 잘 작동하지 않습니다. 또한 거기에 “많은”CPU를 사용하고 프로덕션 환경에서 해당 응용 프로그램을위한 12 코어 머신을 구입할 계획입니다.


답변