Alta carga do host KVM do Ubuntu 12.04 com convidados ociosos do Ubuntu 12.04

Alta carga do host KVM do Ubuntu 12.04 com convidados ociosos do Ubuntu 12.04

Estou preso com este.

Instalação limpa do servidor Ubuntu 12.04 de 64 bits em duas máquinas físicas. As máquinas são idênticas, exceto que uma tem 8 GB de RAM e a máquina com problema tem 32 GB de RAM. Ambas as máquinas foram adquiridas com especificações idênticas ao mesmo tempo. Ubuntu totalmente atualizado há 24 horas.

Estou usando o virt-manager através do X-windows sobre o túnel SSH para gerenciar as máquinas virtuais, o sistema operacional do servidor não executa sessões do X-windows, meu desktop sim.

Construí e executei várias máquinas virtuais de 64 bits do servidor Ubuntu 12.04, cada uma com 1 GB de RAM alocado. As VMs são basicamente configuradas da mesma forma (perdoando endereços MAC, etc.).

A máquina de 8 GB possui 2xVMs e a máquina de 32GB possui 3x VMs. Todas as máquinas virtuais relatam carga baixa (menos de 0,5, normalmente 0,01) e não são muito utilizadas.

O servidor host de 8 GB está relatando uma carga inferior a 0,1, normalmente 0,01. O servidor host de 32 GB está relatando uma carga sustentada superior a 10,0. Novamente, todas as VMs relatam carga interna inferior a 0,5. A CPU no topo está 95%+ ociosa, 0,0% de espera.

Idéias sobre por que a máquina de 32 GB tem carga alta (enquanto o host está ocioso e os convidados estão ociosos), enquanto a máquina de 8 GB configurada de forma idêntica está relatando a carga baixa esperada?

A carga de 32 GB aumenta com uma VM iniciada; a execução de 3xVMs não aumenta a carga. Parar todas as máquinas virtuais faz com que a carga da máquina de 32 GB diminua.

Eu não consigo entender isso. Espero que a carga de 32 GB corresponda à carga de 8 GB.

ATUALIZAÇÃO #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 ...

Responder1

Então, depois de muita investigação, descobri o que havia de errado com as máquinas. Muito obrigado a quem ajudou!

Uma página da web que foi útil está aqui:http://itscblog.tamu.edu/improve-disk-io-performance-in-kvm/

Basicamente, meus hosts físicos possuem discos SATA e as máquinas virtuais foram configuradas com controladores SATA e discos SATA. Eu não tinha ideia de que isso significava que o subsistema de virtualização apresentaria um SATA virtual e não uma passagem SATA.

A solução foi mudar para virtio para discos. Isto significava que as VMs agora sabiam que fazem parte de um sistema de virtualização e cooperariam para obter um melhor desempenho. (acho que é isso que significa).

Resumindo, sempre use virtio para discos e redes em suas máquinas virtuais.

Os anfitriões estão agora com uma média de carga feliz e legal de cerca de 2-3. Muito melhor do que o 20-50 que era anteriormente.

informação relacionada