Como usar setvcpus da linha de comando libvirt?

1

Estou usando o libvirt com o KVM / QEMU. Eu encontrei um ótimo PPA, uvtool ( link ), que gerencia imagens e metadados em um pool de armazenamento de volume. Eu posso criar rapidamente novos convidados da VM a partir da linha de comando. Isso facilita o trabalho com scripts de shell para criar / destruir usando o uvt-kvm (o wrapper do uvtool) e iniciar / parar usando o virsh (do pacote libvirt).

Por algum motivo, os convidados têm apenas uma cpu / core e eu preciso definir o número na linha de comando. Eu encontrei referências à opção setvcpu do virsh, mas não há exemplos de como usá-lo. Aqui está o que eu tentei com as mensagens de erro:

Inicie o convidado existente com 2 CPUs:

tahoar@pttools0:~$ virsh start test-host setvcpus --count 2
error: command 'start' doesn't support option --count

Inicie o convidado existente com os padrões:

tahoar@pttools0:~$ virsh start test-host
Domain test-host started

Defina a CPU ao executar o convidado:

tahoar@pttools0:~$ virsh setvcpus test-host --count 2
error: invalid argument: requested vcpus is greater than max allowable vcpus for the domain: 2 > 1

Obrigado por qualquer ajuda.

    
por tahoar 02.04.2014 / 04:42

2 respostas

0

Ao criar VMs com uvt-kvm create , você pode usar a opção --cpu cores para definir o número de CPUs na VM.

    
por Robie Basak 14.04.2015 / 15:40
0

Para que o setvpcus funcione, você precisa ter vcpus "livres" para a VM já configurada. Um exemplo de xml config extract onde a contagem de cpu é 4 e máxima 16

<vcpu placement='static' current='4'>16</vcpu>

Eu só testei isso no CentOS 6, mas deve ser o mesmo no Ubuntu. Mais algumas informações aqui:

link

    
por Kristofer 04.08.2014 / 16:42