
나는 이것에 붙어 있습니다.
두 개의 물리적 시스템에 Ubuntu 12.04 서버 64비트를 새로 설치합니다. 하나는 8GB RAM이고 문제가 있는 시스템은 32GB RAM이라는 점을 제외하면 머신은 동일합니다. 두 머신 모두 동일한 사양으로 동시에 구입했습니다. Ubuntu는 24시간 전에 완전히 업데이트되었습니다.
가상 머신을 관리하기 위해 SSH 터널을 통해 X-windows를 통해 virt-manager를 사용하고 있는데, 서버 OS는 X-windows 세션을 전혀 실행하지 않고 내 데스크톱은 실행합니다.
각각 1GB RAM이 할당된 여러 개의 Ubuntu 12.04 서버 64비트 가상 머신을 구축하고 실행했습니다. VM은 기본적으로 모두 동일하게 구성됩니다(MAC 주소 등은 제외).
8GB 머신에는 2개의 VM이 있고 32GB 머신에는 3개의 VM이 있습니다. 모든 가상 머신은 낮은 로드(0.5 미만, 일반적으로 0.01)를 보고하며 활용도가 전혀 높지 않습니다.
8GB 호스트 서버는 0.1 미만(일반적으로 0.01)의 로드를 보고합니다. 32GB 호스트 서버가 10.0보다 큰 지속 로드를 보고합니다. 다시 말하지만, 모든 VM은 0.5 미만의 내부 부하를 보고합니다. 상단의 CPU는 95% 이상 유휴 상태이고 0.0% 대기 상태입니다.
동일하게 구성된 8GB 시스템이 예상되는 낮은 로드를 보고하는 동안 32GB 시스템의 로드가 높은 이유(호스트 유휴 및 게스트 유휴 동안)에 대한 아이디어가 있습니까?
하나의 VM이 시작되면 32GB의 로드가 높아지며, 3xVM을 실행해도 로드가 높아지지 않습니다. 모든 가상 머신을 중지하면 32GB 머신 로드가 감소합니다.
나는 이것을 알아낼 수 없습니다. 32GB 로드가 8GB 로드와 일치할 것으로 예상합니다.
업데이트 #1: Nathan C
top - 16:19:54 up 8 days, 6:01, 1 user, load average: 14.33, 18.23, 18.07
Tasks: 135 total, 1 running, 134 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.5%us, 0.4%sy, 0.0%ni, 98.9%id, 0.0%wa, 0.0%hi, 0.2%si, 0.0%st
Mem: 32938864k total, 29307380k used, 3631484k free, 331324k buffers
Swap: 4182436k total, 0k used, 4182436k free, 25330400k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
8752 libvirt- 20 0 3170m 747m 6932 S 7 2.3 26:27.20 /usr/bin/kvm -S -M pc-1.0 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name r -uuid ...
8720 libvirt- 20 0 3969m 928m 6936 S 3 2.9 76:17.66 /usr/bin/kvm -S -M pc-1.0 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name m -uuid ...
8687 libvirt- 20 0 3315m 1.0g 6936 S 2 3.3 60:33.03 /usr/bin/kvm -S -M pc-1.0 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name d -uuid ...
답변1
그래서 많은 조사 끝에 이제 기계에 어떤 문제가 있는지 발견했습니다. 도움주신 분들 정말 감사드립니다!
도움이 되었던 웹페이지는 다음과 같습니다:http://itscblog.tamu.edu/improve-disk-io-performance-in-kvm/
기본적으로 물리적 호스트에는 SATA 디스크가 있고 가상 머신은 SATA 컨트롤러와 SATA 디스크로 구성되었습니다. 이것이 가상화 하위 시스템이 SATA 패스스루가 아닌 가상 SATA를 제공한다는 의미인지 전혀 몰랐습니다.
해결책은 디스크를 virtio로 전환하는 것이었습니다. 이는 VM이 이제 자신이 가상화 시스템의 일부임을 인식하고 더 나은 성능을 위해 협력한다는 것을 의미합니다. (내 생각엔 그게 무슨 뜻인지 알 것 같다.)
간단히 말해서, 가상 머신의 디스크와 네트워크에는 항상 virtio를 사용하십시오.
이제 호스트는 약 2~3의 행복하고 멋진 로드 평균을 유지하고 있습니다. 이전 20~50보다 훨씬 나아졌습니다.