Questo post illustra i passaggi su come aumentare la vCPU guest KVM. Esistono due metodi per aumentare le vCPU guest KVM:al volo e offline. Vediamo i passaggi per ciascuno dei metodi di seguito.
Aumenta le vCPU guest KVM online
1. Controllare la vcpu/memoria guest KVM corrente sull'host KVM:
[root@kvm-host]# virsh dumpxml kvm-guest | grep vcpu <vcpu placement='static'>1</vcpu>
[root@kvm-host]# virsh dominfo kvm-guest Id: - Name: kvm-guest UUID: 8f6fc48c-a6f4-429d-b77e-88a4b8d3d961 OS Type: hvm State: shut off CPU(s): 1 Max memory: 8392704 KiB Used memory: 8392704 KiB Persistent: yes Autostart: disable Managed save: no Security model: selinux Security DOI: 0
2. Impostare le vCPU massime per il guest KVM. In questo esempio, impostiamo il valore massimo di vCPU della VM guest su 2:
[root@kvm-host]# virsh setvcpus kvm-guest 2 --config --maximum
3. Verificare se l'impostazione massima della vCPU ha effetto. Ecco il formato XML della vCPU:
<vcpu placement='static' current='N'>M</vcpu>
Dove N è il numero di CPU attualmente abilitato e M è il numero massimo di CPU.
[root@kvm-host]# virsh dumpxml kvm-guest | grep -i vcpu <vcpu placement='static' current='1'>2</vcpu>
4. Aumenta la vCPU da 1 a 2 usando il comando virsh:
[root@kvm-host]# virsh setvcpus kvm-guest 2
5. Verifica se l'aggiunta della vCPU è stata completata:
Dall'host KVM:
[root@kvm-host]# virsh dominfo kvm-guest Id: 11 Name: kvm-guest UUID: 8f6fc48c-a6f4-429d-b77e-88a4b8d3d961 OS Type: hvm State: running CPU(s): 2 CPU time: 13.9s Max memory: 8392704 KiB Used memory: 8392704 KiB Persistent: yes Autostart: disable Managed save: no Security model: selinux Security DOI: 0 Security label: system_u:system_r:svirt_t:s0:c191,c578 (enforcing)
Da ospite KVM:
[root@localhost ~]# tail -f /var/log/messages checking TSC synchronization [CPU#0 -> CPU#1]: Measured 143005979072 cycles TSC warp between CPUs, turning off TSC clock. Please try to boot with tscsync Marking TSC unstable due to check_tsc_sync_source failed kvm-clock: cpu 1, msr 0:28314b81, secondary cpu clock
[root@localhost ~]# lscpu Architecture: x86_64 CPU op-mode(s): 64-bit CPU(s): 2 Thread(s) per core: 1 Core(s) per socket: 1 CPU socket(s): 2
6. Salva la configurazione della VM se vuoi rendere persistenti queste modifiche.
[root@kvm-host]# virsh setvcpus kvm-guest 2 --config
Aumenta le vCPU guest KVM offline
Questo metodo deve organizzare i tempi di inattività per la macchina virtuale guest:
1. Spegnere la macchina virtuale guest:
[root@kvm-host]# virsh list Id Name State ---------------------------------------------------- 10 kvm-guest running
[root@kvm-host]# virsh destroy 10 Domain 10 destroyed
[root@kvm-host]# virsh list Id Name State ----------------------------------------------------
2. Aggiorna il numero richiesto di vCPU:
# virsh edit guest_vm
In questo esempio, aumentiamo la vCPU da 2 a 4:
[root@j-kvm-host opc]# virsh edit kvm-guest
Da:
<memory unit='KiB'>8392704</memory> <currentMemory unit='KiB'>8392704</currentMemory> <vcpu placement='static'>2</vcpu>
A:
<memory unit='KiB'>8392704</memory> <currentMemory unit='KiB'>8392704</currentMemory> <vcpu placement='static'>4</vcpu>
3. Avvia la VM guest e controlla se l'aumento della vCPU ha effetto:
[root@j-kvm-host opc]# virsh start kvm-guest
4. Verifica le nuove risorse della CPU:
Dall'host KVM:
[root@kvm-host]# virsh dominfo kvm-guest Id: 12 Name: kvm-guest UUID: 8f6fc48c-a6f4-429d-b77e-88a4b8d3d961 OS Type: hvm State: running CPU(s): 4 ...
Da ospite KVM:
[root@localhost ~]# lscpu Architecture: x86_64 CPU op-mode(s): 64-bit CPU(s): 4 Thread(s) per core: 1 Core(s) per socket: 1 CPU socket(s): 4 NUMA node(s): 1 Vendor ID: GenuineIntel ...Come aumentare le risorse di memoria guest KVM