가상 머신이 기본 물리적 머신보다 느립니까?


50

이 질문은 매우 일반적이지만 Ubuntu Enterprise Cloud를 실행하는 가상 머신이 가상화없이 동일한 물리적 머신보다 느릴 지 알고 싶습니다. 얼마 (1 %, 5 %, 10 %)?

웹 서버 또는 DB 서버 (가상 VS 물리적)의 성능 차이를 측정 한 사람이 있습니까?

구성에 의존하는 경우 64 비트 우분투 엔터프라이즈 서버를 실행하는 2 개의 쿼드 코어 프로세서, 12GB의 메모리 및 많은 SSD 디스크를 상상해 봅시다. 또한 가상 머신 1 대만 사용 가능한 모든 리소스를 사용할 수있었습니다.


1
Ubuntu Entreprise Cloud는 Xen이 아닌 KVM을 기반으로합니다.
Antoine Benkemoun

1
Antoine, 맞습니다. "핵심 가상화 전략은 항상 KVM 기반이었습니다. lib-virt의 개발로 KVM과 Xen 호스트의 관리가 통일되었습니다." -Xen에 대한 언급을 편집하겠습니다.
Michal Illich

답변:


31

베어 메탈 \ 유형 1 하이퍼 바이저의 범용 서버 워크로드에 대한 일반적인 경험은 CPU 오버 헤드의 약 1-5 % 및 메모리 오버 헤드의 5-10 %이며 전체 IO로드에 따라 몇 가지 추가 오버 헤드가 있습니다. 이는 기본 하드웨어가 적절하게 설계된 VMware ESX \ ESXi, Microsoft Hyper-V 및 Xen에서 실행되는 최신 게스트 OS에 대한 경험과 거의 일치합니다. 최신 CPU 하드웨어 가상화 확장을 지원하는 하드웨어에서 실행되는 64 비트 서버 운영 체제의 경우 모든 유형 1 하이퍼 바이저가 해당 1 % 오버 헤드 수로 향할 것으로 예상합니다. KVM의 성숙도는 현재 Xen (또는 VMware)에 달려 있지 않지만 설명 한 예에서 현저히 나쁘다고 생각할 이유가 없습니다.

특정 유스 케이스의 경우 가상 환경의 전체 "집합"성능이 베어 메탈 서버를 초과 할 수 있습니다. 다음 은 베어 메탈 Oracle RAC보다 VMware Clustered Implentation이 더 빠르거나 저렴할 수있는 방법 에 대한 토론의 예입니다 . VMware의 메모리 관리 기술 (특히 투명한 페이지 공유)은 비슷한 VM이 충분한 경우 메모리 오버 헤드를 거의 완전히 제거 할 수 있습니다. 이 모든 경우에서 중요한 것은 가상화가 제공 할 수있는 성능 및 효율성 이점은 여러 VM을 호스트에 통합하는 경우에만 실현 될 수 있다는 것입니다. .

이것이 모두 유용하지만 서버 가상화 측면에서 실제 문제는 관리, 고 가용성 기술 및 확장 성을 중심으로하는 경향이 있습니다. 2-5 %의 CPU 성능 한계는 20, 40 또는 각 호스트에서 필요한 많은 VM으로 효율적으로 확장 할 수있는 것만 큼 중요하지 않습니다. 기준으로 약간 더 빠른 CPU를 선택하거나 클러스터에 더 많은 노드를 추가하여 성능 저하를 처리 할 수 ​​있지만 호스트가 실행할 수있는 VM의 수를 확장 할 수 없거나 환경을 관리하기 어려운 경우 서버 가상화 관점에서 볼 때 가치가 없습니다.


7
오래된 기술을 사용합니다. 특히 5 ~ 10 %의 메모리 오버 헤드는 오래된 하드웨어입니다. 최신 하드웨어 칩은 하이퍼 바이저가이를 지원할 경우 약 2 %에서 3 %의 오버 헤드를 가지고 있습니다. AMD와 인텔은 그때까지 하이퍼 바이저 메모리 매핑을위한 API를 손상 시켰습니다. 나중에 말했듯이, 그들은 매우 투명하게 맞았습니다 (1 % 목표). 실제 혜택을 지적한 +1
TomTom

1
5-10 %를 VMware에서 본 내용을 기반으로하며 사전 EPT \ RVI 키트를 기반으로합니다. 최신 CPU의 향상된 하드웨어 기반 가상 메모리 관리는 RAM 오버 헤드를 줄입니다.
Helvick

투명한 페이지 공유와 관련하여 모든 새로운 CPU가 지원하는 대용량 메모리 페이지가있을 때 짜증납니다. 이 경우 본질적으로 아무것도 얻지 못합니다.
tony roth

1
@Tony 지나치게 커밋되지 않은 경우에만 적용됩니다. 만약 그렇다면 ESX \ ESXi 4는 작은 페이지를 사용하도록 선택하고 TPS가 시작됩니다. 광고 된대로 작동하지만 성능이 저하되지 않으면 서 절대적으로 필요한 경우 초과 커밋을 허용하는 합리적인 접근 방식입니다. kb.vmware.com/selfservice/microsites/…
Helvick

1
@Helvick, win7 또는 w2k8r2를 실행하면 게스트가 공격적으로 사전 처리하기 때문에 TPS가 많이 작동하지 않습니다.
tony roth

23

"성능"에는 여러 가지 측면이 있습니다. n00bs는 OS의 부팅 시간을 측정합니다. 예를 들어 Windows 2012는 실제 HD에서 12 초, SSD에서 1 초로 부팅되기 때문에 정말 좋습니다.
그러나 이런 종류의 측정은 그다지 유용하지 않습니다. 성능은 OS 부팅 시간과 동일하지만 OS는 한 달에 한 번 부팅되므로 최적화하는 것이 의미가 없습니다.

그것은 매일의 사업이기 때문에 "성능"을 구성하는 다음 4 가지 부분을 지적 할 수 있습니다.

  1. CPU로드
    비교할 수 있어야합니다. 즉, 베어 메탈에서 1000ms가 걸리는 작업은 동일한 하드웨어의 유휴 VM 환경에서 1000ms의 프로세스 시간 및 아마도 1050ms의 클럭 시간으로 실행됩니다 (일부 자세한 내용은 나중에). Google은 프로세스 시간과 쿼리 성능 카운터에 대한 MSDN을 제공하며 VM이 CPU 시간을 얼마나 많이 소비하는지 보여줄 수 있습니다.

  2. SQL 성능
    SQL 성능은 IO를 사용하여 SQL 데이터가 저장된 데이터 스토어에 의존합니다. Buffalo 홈 NAS에서 찾을 수있는 1 세대 ISCSI와 DCE 및 실제 구식 FC 환경을 갖춘 ISCSI의 모든 수준에서 300 %의 차이를 보았습니다. FC 대기 시간은 달성 할 수있는 최저 수준이므로 TCP / IP 데이터 센터 향상을위한 FC 프로토콜의 "복사"로 이어지기 때문에 FC는 오늘날에도 여전히 승리합니다. 여기서 IOps와 대기 시간은 중요하지만 서버 프로세스에서 미디어까지의 IO 대역폭-앱이 No-SQL 또는 데이터웨어 하우징인지 또는 ERP 시스템과 같은 중간인지 여부에 따라 다릅니다. Sage KHK for small enterprises, SAP 거대한 사람들을 위해.

  3. 파일 시스템 액세스
    비디오 스트리밍과 같은 일부 응용 프로그램은 보장 된 최소 대역폭에 의존하고, 다른 응용 프로그램은 16 진 편집기에서 큰 파일을 열고 비디오 프로젝트를 가장 좋아하는 영화 제작 프로그램에로드하는 것과 같이 최대 IO 처리량에 의존합니다. VM의 일반적인 상황은 아닙니다 ... IOps는 개발자에게도 중요 할 수 있습니다. 개발 환경은 매우 민감하므로 VM에서 그렇게하는 유혹이 높기 때문에 개발자는 종종 VM을 사용합니다. 큰 프로젝트를 컴파일하는 것은 종종 많은 작은 파일을 읽고, 컴파일러 작업을 수행하고, EXE와 그에 따르는 구성 요소를 빌드하는 것을 의미합니다.

  4. 클라이언트에 대한 네트워크 대기 시간
    여기에서 단어 2010, Openoffice Writer, LaTEX, GSView 등과 같은 WYSIWIG 프로그램의 유용성은 마우스 동작이 클라이언트에서 서버로 얼마나 빨리 전달되는지에 크게 의존합니다. 특히 CAD 응용 프로그램에서는 이것이 중요합니다 ... LAN 문제는 아닙니다. 이것이 중요한 WAN을 통한 원격 액세스입니다.

그러나-수년간의 컨설팅 관점에서 말하면 관리자 암호를 가진 사용자가 있으며 (그리고 종종 BIG 예산과 BIG 포켓 북을 가진 BIG 회사의 직원)이 이에 대해 불평하지만 명확해야합니다. 어떤 성능 구성 요소가 그들에게 중요하고 그들이 사용하는 응용 프로그램의 관점에서 중요합니다.
아마도 메모장이 아니라 엔지니어링을위한 매우 정교한 응용 프로그램 일 것입니다.이 또한 비용이 많이 들며 VMware, HyperV 또는 Xenapp에서 옮겨야하며 예상대로 작동하지 않습니다.

그러나 그들은 순수한 CPU 성능을 위해 만들어지지 않은 블레이드에서 1.5GHz Xeon에서 실행될 수 있다는 점을 염두에 두지 않고 평균적으로 구축되었습니다. .

그리고 우리가 절충과 경제에 대해 이야기 할 때, 그것은 대부분 과잉 헌신으로 이어집니다. 초과 커밋은 CPU를 꽤 잘 처리 할 수있는 리소스 부족으로 이어지지 만 메모리 부족으로 인해 페이징, 코어 라우터에서 IO 부족으로 인해 모든 응답 시간이 증가하고 모든 종류의 스토리지에 대한 트랜잭션 과부하로 인해 모든 유용한 앱이 중지 될 수 있음 너무 빨리 응답하지 않습니다. 여기에는 모니터링이 필요하지만 많은 소프트웨어 공급 업체는 이러한 정보를 제공 할 수 없습니다. 반면에 3 개의 물리적 서버 리소스가있는 호스트는 물리적 서버와 동일한 레이아웃의 가상 머신 8 개를 처리 할 수 ​​있습니다 ...

유휴 시스템의 CPU 트레이드 오프는 실제 시스템보다 성능이 50 % 더 느린 시스템을 야기하는 반면, 고객의 IT 담당자가 VM으로 옮기고 싶어하는 "실제"OS 및 "실제"앱을 설치할 수있는 사람은 없습니다. 상자. 그리고 VM 기술이 순수한 CPU 속도로 거래함으로써 유연성을 제공 할 수 있음을 분명히하기 위해서는 며칠이 걸릴 수도 있습니다 (몇 주일 수도 있지만 확실히 42 회의). 이것은 오늘날 더 큰 VM 환경을 호스팅하는 이러한 블레이드 시스템의 CPU에 내장되어 있습니다. 또한 메모리는 비교할 수 없으며 일부 장단점이 적용됩니다. DDR3 1600 CL10은 DDR2 800 ECC LLR보다 메모리 대역폭이 더 높으며, 인텔 CPU는 AMD CPU와는 다른 방식으로 이로부터 이익을 얻는다는 것을 모두 알고 있습니다. 그러나 생산적인 환경에서는 거의 사용되지 않습니다. 고국의 데이터 센터가 10 %의 가격으로 데이터 센터 서비스를 제공하는 3 세계 국가에서 호스팅되는 화이트 박스 또는 데이터 센터에서 더 많은 금액이 청구될 수 있습니다. Citrx 덕분에 데이터 센터는 최종 사용자와 데이터 센터 사이의 대기 시간이 150ms 미만이면 어디에나있을 수 있습니다.

그리고 가정 사용자 관점 ....

마지막으로, 일부 사람들은 Win7 또는 XP를 버리고 Linux로 바꾸고 싶어합니다. 실제로 Linux와 Windows에서 사용할 수있는 게임이 거의 없기 때문에 게임 문제가 발생합니다. 게임은 3D 가속에 크게 의존합니다. VMWare 6.5 워크 스테이션 및 연결된 무료 플레이어는 DirectX 9를 처리 할 수 ​​있습니다. 즉, VM의 Doom3은 호스트 그래픽 카드에서 전체 화면으로 실행될 수 있습니다. 게임은 대부분 32 비트 앱이므로 3GB를 넘지 않고 CPU를 3 개 이하로 소비합니다 (Crysis에서 확인). 최신 VM 플레이어와 WS는 더 높은 DirectX 버전과 아마도 OpenGL을 처리 할 수 ​​있습니다. VMware 6.5에서 UT와 UT2004를 게임했는데 호스트에는 ATI Radeon 2600 모바일과 T5440 CPU가있었습니다. 1280x800에서 안정적이며 네트워크 게임에서도 재생할 수 있습니다 ....


1
우리는 영원한 질문에 대한 좋은 대답을 좋아합니다. 서버 결함에 오신 것을 환영합니다!
Michael Hampton

9

예. 그러나 그것은 질문이 아닙니다. 차이는 일반적으로 무시할 만합니다 (1 % ~ 5 %).


3
당신을 믿어요 그러나 여전히 : 누군가가 실제로 그것을 측정 한 벤치 마크를 연결할 수 있습니까?
Michal Illich

9
아무도 당신의 질문에 대답 할 수없는 많은 요소에 달려 있습니다. 사용중인 하이퍼 바이저, 서버 사양, 스토리지 및 가장 중요하게 문제가 발생한 시점에 호스트와 함께 진행중인 작업에 따라 다릅니다.
Chopper3

실제로는 그렇지 않습니다. 실제로 많은 작업을 수행하면 물리적 시스템이 공유됩니다. 그러나 하드웨어 가상화로 인해 하이퍼 바이저의 오버 헤드는 현재 일정합니다. 여러 VM을로드하기 시작하면 결과적으로 사용 가능한 결과가 공유되지만 총 서버 수는 여전히 서버보다 약간 적습니다.
TomTom

11
인용이 필요했습니다.
Zoredache

하이퍼 바이저의 오버 헤드는 OS를 얼마나 많이 밝힐 수 있는지에 달려 있으며 이는 반 가상화를 의미하지는 않습니다.
tony roth

8

특정 상황에서는 가상화가 물리적 성능을 능가 할 수 있다고 지적합니다. 하드웨어 에뮬레이션이 특정 LAN 카드 인 경우에도 네트워크 계층은 기가비트 속도로 제한되지 않기 때문에 동일한 서버의 VM은 평균 네트워크 장비를 사용하는 여러 물리 서버의 속도를 넘어서 서로 통신 할 수 있습니다.


2
동일한 서버의 두 VM에서 실행되는 두 개의 소프트웨어는 하나의 베어 메탈 서버의 동일한 OS에서 두 개의 소프트웨어보다 빠르게 통신하지 않습니다.
bokan

1

동일한 테스트를 실행하는 동일한 소프트웨어 (많은 웹 트래픽과 상당한 SQL Server 액세스를 가진 .NET 기반 웹 응용 프로그램)에 대한 테스트 비교를 수행했습니다. 내가 본 것은 다음과 같습니다.

  • 물리적 시스템은 클래스를 인스턴스화하는 데 더 좋습니다 (시스템 수준에서 메모리 할당으로 변환 됨). 물리적 시스템은 메모리 관리 하드웨어를 통해이 작업을 수행하고 VM은 소프트웨어 (부분 하드웨어 지원이있는)를 통해이 작업을 수행하므로 VM에 적합합니다. , 앱은 생성자 (메모리가 할당되고 다른 작업은 수행되지 않음)에서 상당한 시간을 보냈습니다. 물리적 시스템에서는 생성자가 상위 1000에 포함되지 않았습니다.
  • 당신이 방법의 중간에있을 때, 둘은 동등한 것입니다-이것은 아마도 "같은 것"을 보여주는 대부분의 벤치 마크가 구성되는 방법 일 것입니다.
  • 네트워크 컨트롤러에 액세스 할 때 물리적은 VM을 약간 능가합니다. 물리적은 .NET 프로세스와 하드웨어 사이에 많은 부분을 차지하지 않습니다. VM은 각 트랜잭션이 이동해야하는 다른 "항목"을 추가합니다.
  • 실제로 디스크 액세스 (SQL Server가 다른 컴퓨터에 있음)에도 동일한 내용이 적용됩니다. 차이는 매우 작지만 모두 추가하면 눈에.니다. 네트워크 액세스 속도가 느리거나 디스크 액세스 속도가 느리기 때문일 수 있습니다.

다른 사람이 벤치 마크를 구축하여 1 %의 차이 또는 동일하거나 VM이 더 빠른 위치를 어떻게 확인할 수 있는지 쉽게 알 수 있습니다. 프로세스가 VM에서 소프트웨어로 시뮬레이션해야하는 로컬 하드웨어 지원의 이점을 활용하는 부분은 포함하지 마십시오.


이것이 내가 찾던 것입니다. +1
Phil Ricketts

1

특정 물리적 하드웨어에 설치된 운영 체제, 소프트웨어 및 데이터를 동일한 원래 하드웨어의 하이퍼 바이저 내부에 설치된 동일한 운영 체제, 소프트웨어 및 데이터와 비교하려고합니다. 이 비교는 유효하지 않습니다. 왜냐하면 적어도 아무도 처음에는 그렇게하지 않기 때문입니다. 물론 속도가 느려질 수 있습니다. 고맙게도 서버를 가상화하는 가장 일반적인 요점을 완전히 놓친 것입니다.

더 좋은 예는 데이터 센터에서 2 개 이상의 구형 서버를 보는 것입니다. 성능은 좋지만 현재는 오래되었고 새로 고침주기가 시작되는 서버를 찾으십시오. 이 서버는 이미 구형 하드웨어에서 잘 작동하므로 무어의 법칙 덕분에 새로운 것을 얻을 수 있습니다.

그래서 당신은 무엇을합니까? 간단 해. 두 대의 새 서버를 구입하는 대신 하나만 구입 한 다음 이전 서버를 모두 동일한 실제 새 장치로 마이그레이션하십시오. 새 서버 구매를 준비 할 때 이전 서버와로드 바이저의로드를 처리 할 수있는 충분한 용량을 갖도록 계획하십시오. 성장 가능).

요약 : 가상 머신은 대부분의 상황에서 "충분한"성능을 제공하고 "폐기 된"컴퓨팅 성능을 피하기 위해 서버를보다 잘 활용할 수 있도록 도와줍니다.

이제 이것을 조금 더 확장하겠습니다. 이것들은 오래된 서버이기 때문에 아마도 당신을 교체하기 위해 몇 $ 1500 피자 박스 서버를보고 있었을 것입니다. 이 피자 상자 중 하나조차도 여전히 가상의 오래된 기계 두 대의로드를 쉽게 처리 할 수 ​​있지만 실제 하드웨어에 7500 달러 이상을 소비하기로 결정했다고 가정 해 봅시다. 이제 초기 비용이 5 인 스토리지 및 네트워킹 처리 방법에 따라 수십 개의 기존 서버를 쉽게 처리 할 수있는 장치가 있습니다. 또한 하나의 물리적 서버 만 관리하여 분리 할 수 ​​있다는 이점이 있습니다. 하드웨어의 소프트웨어 (예 : 하드웨어 새로 고침에 새로운 Windows 라이센스가 필요하지 않거나 다운 타임을 유발할 가능성이 적음), 전력을 절약하고 하이퍼 바이저가 성능보다 더 나은 정보를 제공 할 수 있습니다. ve는 과거에 있었다. 이 중 두 가지를 얻으십시오. 전체 데이터 센터가 두 대의 시스템으로 다운 된 규모에 따라 또는 두 번째 서버를 핫 스탠바이로 사용하여 더 나은 고 가용성 스토리를 제공하고자 할 수 있습니다.

여기서 요점 은 성능에 관한 것이 아니라는 것입니다. 완벽하게 좋은 프로덕션 서버를 사용하지 않고 동일한 하드웨어로 단독으로 가상화하지는 않습니다. 고가용 성과 같은 통합을 통해 얻을 수있는 비용 절감 및 기타 이점에 대해 자세히 설명합니다. 이러한 이점을 실현한다는 것은 서버를 다른 하드웨어로 옮기는 것을 의미하므로 하이퍼 바이저 처벌에 대한 설명을 포함하여 해당 하드웨어의 크기를 적절히 조정해야합니다. 예, 각 머신이 자체 물리적 장치에있을 때보 다 약간 더 많은 컴퓨팅 성능이 필요할 수 있습니다 (힌트 : 실제로 총 컴퓨팅 성능훨씬 적을 수 있음). 훨씬 저렴하고 에너지 효율적일 것입니다. 유지 보수가 더 쉬움 많은 물리적 서버를 실행하는 것보다 하나의 물리적 서버를 실행하는 것.


2
항상 통합 및 비용 절감에 관한 것은 아닙니다. 하이퍼 바이저는 많은 기능을 갖춘 제품으로, 대부분의 사람들이 가상화하는 이유와 무관하게 비즈니스 가치를 추가 할 수 있습니다. 통합 및 비용 절감은 해당 비즈니스 가치의 일부일 수도 있고 그렇지 않을 수도 있습니다. 스냅 샷, 실시간 마이그레이션, Storage vMotion 및 하드웨어 추상화는 모두 비즈니스 IT 전략의 일부일 수 있습니다.
jgoldschrafe

@jgold 포인트를 획득했습니다. 고 가용성이라는 큰 것도 잊었습니다. 내 방어에서, 나는 마지막 편집에서 하드웨어 철회 (일종의)를 언급했으며 원래 질문의 각도에서 가상화를 탐색하는 사람에게는 통합 / 비용이 실제로 전달해야 할 큰 포인트라고 생각합니다.
Joel Coel

이 질문은 가상화가 왜 유용하지 않은지에 대한 것이 아니라 가상화에 대해 조사하고자하는 완전히 유효한 측면 인 성능 비교에 대해 질문했습니다.
Nick Bedford

0

방금 SSD (OCZ Vertex 2)로 업그레이드했으며 XP VM 개발 환경을 실행합니다. 저는 소프트웨어 개발자입니다. 내가 알았던 한 가지는 프로그램을 시작할 때 (로드하는 데 충분한 시간이 걸리는 것) 가상 CPU의 핵심이 페그 아웃된다는 것입니다. 이것은 IE를로드 할 때도 발생합니다. CPU가 페그 아웃되므로 병목 현상이 SSD가 아닌 CPU라고 가정합니다. 그러나 이상한 것처럼 보입니다. 물리적 컴퓨터에서 동일한 작업을 수행하면 더 빨리로드되고 VMWare가 디스크 액세스에서 CPU를 소비하는 추가 처리 오버 헤드가 있다는 느낌이 들었습니다.

예를 들어, 델파이를 사용하고 일반 HDD가있는 실제 머신에서 콜드 부팅을 시작하는 데 20 초가 걸릴 수 있습니다. SSD를 실행하는 VM에서는 콜드 스타트 ​​후 19 초 안에로드됩니다. 큰 차이는 없지만 SSD가 물리적 시스템에 있으면 더 빨리로드됩니다. 그러나 실제 머신의 CPU 사용량을 확인하지 않았으며 CPU에 병목 현상이 있었을 수도 있습니다.

그러나 VM의 느낌은 디스크 액세스가 VM에 세금을 부과한다는 것입니다.


0

분명히 가상 머신은 실제 머신보다 느립니다. 그러나이 시나리오에있을 때는 요구 사항을 충족시키는 데 가장 적합한 것이 무엇인지 평가해야합니다. 시스템이 하나만 필요하고 속도가 빠르면 하드웨어에 직접 설치하십시오. 반면에 유연성이 필요한 경우 확장 성 (및 기타 모든 가상화 이점 : P)은 VM을 배포합니다. 속도는 느려 지지만 경우에 따라 IMHO는 정당화되고 성능이 크게 저하되지 않습니다.


0

Microsoft는 이와 관련하여 다른 구성으로 BizTalk Server와 SQL Server를 사용하여 벤치 마크 테스트를 수행 한 것으로 보입니다. 아래 링크를 참조하십시오 :

http://msdn.microsoft.com/en-us/library/cc768537(v=BTS.10).aspx


3
답변에 결론을 인용하십시오. 그렇지 않으면 제공된 링크에 대한 SPAM 이상입니다. 감사합니다.
Chris S

HyperV를 사용하는 SQL Server Performacne Virtual to Physical 비율 (합리적으로 현실적으로 보이는 BizTalk : Messaging / Documents processing / Sec 메트릭 사용)은 88 %로 인용됩니다. 좋아 보이지 않습니다.
deadbeef

세상에, 250MB PDF 파일인가요? O_O
David Balažic

-1

이상적인 가상 PC 성능은 다음과 같습니다.

CPU : 호스트의 96-97 %

네트워크 : 호스트의 70-90 %

디스크 : 호스트의 40-70 %


3
그리고 그 숫자는 ....
Jim B

-4

TomTom에 동의하지 않아서 죄송합니다.

나는 주로 Windows XP, Windows Vista 및 현재 Windows Seven 기본 시스템에서 VMware Workstation을 사용하여 우분투뿐만 아니라 다른 Windows 맛을 실행했습니다.

예, 가상화 된 환경은 기본 시스템보다 느리고 5 ~ 100 % 범위에있을 수 있습니다.

주요 문제는 CPU로드가 많지 않지만 물리적 메모리가 부족하다는 것입니다.

유휴 상태 일 때 거의 1.5Gb가 필요하고 CPU의 ~ 10 %를 사용하는 4Gb 시스템에서 Windows Seven 64 Ultimate을 실행한다고 가정 해 보겠습니다. 추가 VMware 계층을 시작하면 비용이 ~ 300Kb이고 CPU 부하가 ~ 20 %까지 증가합니다. 그런 다음 VMware 내에서 가상 시스템을 시작하면 해당 가상 시스템에 대해 정의한 최소 메모리 양 (적절한 시스템에 대해 최소 1GB)을 요청합니다. 그러면 가상 머신이 우분투 인 경우 CPU 부하가 ~ 60 %, 최근 Windows OS의 경우 80 %가 표시됩니다.

이제 해당 가상 머신 내에서 다른 앱을 시작합니다.

해당 가상 머신에 대해 설정 한 메모리 양이 충분하지 않으면 가상화 된 시스템이 교환되기 시작하여 전체 성능과 응답 성이 크게 느려집니다.

해당 가상 머신에 대해 설정 한 메모리 양과 기본 시스템에 필요한 메모리 양의 합이 기본 시스템의 메모리 양보다 큰 경우 스왑하려는 기본 시스템이 느려집니다. 기본 시스템과 가상화 시스템.

따라서 먼저 기본 시스템과 가상화 된 시스템에 필요한 메모리 균형에 따라 다릅니다.

이제는 CPU로드와 거의 동일합니다. 가상화 된 앱에 많은 CPU로드가 필요하고 기본 앱에 많은 CPU로드가 필요한 경우 기본 시스템은 우선 순위를 관리하고 다른 앱간에 CPU 요금의 균형을 유지해야합니다. 가상화 된 시스템은 앱일뿐입니다. 현상은 앱 우선 순위로 속일 수있는 고전적인 CPU로드 문제입니다.

따라서 가상화를 사용해야하는 경우 첫 번째 조언은 기본적으로 또는 가상 컴퓨터 내에서 사용하는 OS에 관계없이 컴퓨터에 많은 메모리를 배치하는 것입니다.

그냥 내 2 센트.

친애하는.


이 구성을 상상해보십시오 : 12GB 메모리, 2 개의 쿼드 코어 프로세서. 1,5GB 메모리와 모든 CPU 성능을 갖춘 단 하나의 가상 머신이 있습니다. 여전히 눈에 띄는 속도 저하가 있습니까?
Michal Illich

3
유휴 상태 일 때 Win7 x64에 1,5GB (또는 CPU 시간)가 어떻게 필요합니까? 내 경험상 384-512MB와 비슷합니다. 나머지는 I / O 캐싱을 위해 예약되어 있으며 다른 곳에서 필요한 경우 릴리스됩니다 ^^
Oskar Duveborn

4
그러나 Windows 가상화와 비교했을 때 약간의 오버 헤드가있는 베어 메탈 하이퍼 바이저가 아닌 워크 스테이션 가상화에 대해 이야기하고 있습니다. Ubuntu 클라우드는 베어 메탈 하이퍼 바이저가 아닐 수도 있지만 Windows reosurces를 거의 사용하지 않습니다. 예를 들어 GUI가없는 Ubuntu Server에서 실행됩니다.
Jon Rhoades

3
-1 : 비교가 매우 불량합니다. VM Workstation은 하이퍼 바이저가 아닙니다. 둘째, 호스트에서 많은 부하를 실행하는 것에 대해 이야기하고 있습니다. 물론 게스트 VM에 영향을 미칩니다.
gravyface

1
@ Oskar> 유휴 상태 일 때 Win7 x64에 1,5GB (또는 CPU 시간)가 어떻게 필요합니까? 더 3백84~5백12메가바이트처럼 내 경험에서이 사진을 살펴보세요 theliberated7dwarfs.as2.com/pictures/png/W7-Mem.png 윈도우 7-64, RAM, 신선한 재부팅 4 기가 바이트, 어떤 응용 프로그램들이받은 없지만 MSFT 필수 보안 및 카페 르 스키! 죄송합니다 : 1.53Gb의 RAM 사용 및 평균 7 %의 CPU로드! @ TomTom & gravyface 1- 초기 질문은 하이퍼 바이저가 아닌 일반 VM 머신에 관한 것이 었습니다! 2- 나의 으스스한 기술 플랫폼은 MSFT와 VMware 모두에게 행운을 가져다줍니다. 당신은 그것을 좋아할지도 모르지만 나는 당신을 비난하지 않을 것입니다;) 친절에 관한
Dopey

-4

내 경험상 가상 머신은 항상 물리적 인 머신보다 훨씬 느립니다.

디스크에 부딪 히고 CPU에 많은 세금을 부과하는 응용 프로그램을 실행할 때만 알 수 있습니다. 가상 컴퓨터에서 많은 데이터베이스와 웹 서버를 실행했으며 최종 사용자와 다른 최종 사용자의 피드백 (예 : 원격 웹 브라우저에서 앱에 액세스)으로 가상 컴퓨터를 사용할 때 상당한 지연이 발생합니다.

물론 올바르게 구성된 가상 머신은 80 % (실제 숫자를 알지 못함) 또는 실제 머신 속도에 도달 할 수 있지만 실제로 애플리케이션이 수행하는 작업과 가상 머신을 깊이 파헤쳐 야합니다. 공장. 따라서 새로운 서버를 구입하고 호스팅하는 VM 구절을 구성하는 데 시간이 얼마나 가치가 있는지에 대한 비용 방정식이라고 생각합니다.

저에게 가상 머신은 성능에 대한 것이 아니라 여러 개의 저 성능 VM을 관리하고 호스팅하기가 더 쉬워졌습니다.


2
당신은 실제로 쓰레기 가상화 기술을 실행하는 것 같습니다. 심각하게;) MS는 Hyper-V 및 SQL Server와의 성능 비교를 수행했으며 베어 메탈 머신에 비해 약 3 %의 오버 헤드가 발생했습니다. 당연히 이것은 하나의 가상 머신 만 실행하거나 성능이 분할된다는 사실을 인정하지만 가상화의 오버 헤드는 실제로 낮습니다. 그리고 여러 개의 저 성능 VM을 호스팅하는 것만이 아닙니다. 또한 유지 관리가 쉬울 수도 있습니다. VM을 새로운 하드 워 어로 쉽게 옮기면 물리적 시스템이 더 복잡 할 수 있습니다.
TomTom

@TomTom. 나는 당신을 믿기를 원하지만 물론 Microsoft는 모든 사람에게 하이퍼 바이저가 매우 빠르다는 것을 알리는 데 관심이 있습니다. Microsoft 가상화 및 VmWare를 사용해 본 회사들로부터 Microsoft가 말하는 것은 "마케팅"일뿐입니다. 실제로 직접 벤치마킹 했습니까? 3 %의 오버 헤드가 발생하면 설정을 알려주십시오.
Zubair

2
저기요, Zubair 나는 바보가 아니다-나는 전에 시험을하고 있었다. 나는 많은 것들을 VM으로 옮기고 요즘 물리적으로 거의 아무것도 실행하지 않았습니다. 나는 스스로 벤치마킹을했다. 당연히 하이퍼 바이저는 까다 롭습니다. 사람들은 많은 서버를 컴퓨터에 넣고 과부하시킵니다. 실제로 IO 영역 (디스크 성능)에있을 가능성이 높습니다. 그러나 모든 것이 하이퍼 바이저에 내재 된 것은 아닙니다. RAM과 동일-예, 많은 것이 필요합니다. 예, 시뮬레이션 된 머신의 효율성을 유지하려면 여전히 많은 양의 RAM이 필요합니다. 그러나 이는 하이퍼 바이저 문제가 아닙니다.
TomTom

2
@TomTom. 이러한 가상 성능과 물리적 성능 테스트에 대한 자세한 내용을 읽을 수있는 링크가 있습니까
Zubair

1
@Zubair-저는 100 % VMWare-man이지만 TomTom과 동의해야하지만 현대적이고 잘 구성된 하드웨어에서 CPU 및 메모리 작업에 대한 성능 저하가 거의 없습니다. 예, 동시 동시 읽기 / 쓰기 IO는 CPU 및 메모리보다 눈에 띄게 영향을 줄 수 있지만 여전히 보드 전체에서 한 자리 백분위 수 손실을 이야기하고 있습니다. 저는 8,000 명이 넘는 회사에서 거의 1,000 개의 ESXi 호스트를 관리하고 있으며 매우 많은 IO 바인딩 응용 프로그램 만 ESXi에 적합하지 않다고 확신합니다.
Chopper3
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.