这篇文章说明了有关如何增加 KVM 来宾 vCPU 的步骤。
有两种方法可以增加 KVM 来宾 vCPU:动态和离线。
让我们看看下面每种方法的步骤。
查看更多教程 https://on itroad.com
离线增加 KVM 来宾 vCPU
该方法需要为Guest VM安排停机时间:
- 关闭访客虚拟机:
[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 ---------------------------------------------------
- 更新所需的 vCPU 数量:
# virsh edit guest_vm
在本例中,我们将 vCPU 从 2 增加到 4:
[root@j-kvm-host opc]# virsh edit kvm-guest
将
<memory unit='KiB'>8392704</memory> <currentMemory unit='KiB'>8392704</currentMemory> <vcpu placement='static'>2</vcpu>
改成:
<memory unit='KiB'>8392704</memory> <currentMemory unit='KiB'>8392704</currentMemory> <vcpu placement='static'>4</vcpu>
- 启动guest VM,查看增加的vCPU是否生效:
[root@j-kvm-host opc]# virsh start kvm-guest
- 验证新的 CPU 资源:
从 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 ...
从 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 ...
在线增加 KVM 来宾 vCPU
- 检查 KVM 主机上当前的 KVM 来宾 vcpu/内存:
[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
- 设置 KVM 来宾的最大 vCPU。
在本示例中,我们将 Guest VM 的 vCPU 最大值设置为 2:
[root@kvm-host]# virsh setvcpus kvm-guest 2 --config --maximum
- 检查最大vCPU设置是否生效。
这是 vCPU XML 格式:
<vcpu placement='static' current='N'>M</vcpu>
其中 N 是当前启用的 CPU 数量,M 是最大 CPU 数量。
[root@kvm-host]# virsh dumpxml kvm-guest | grep -i vcpu <vcpu placement='static' current='1'>2</vcpu>
- 使用 virsh 命令将 vCPU 从 1 增加到 2:
[root@kvm-host]# virsh setvcpus kvm-guest 2
- 检查 vCPU 添加是否完成:
从 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)
从 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
- 如果要使此更改持久化,请保存 VM 配置。
[root@kvm-host]# virsh setvcpus kvm-guest 2 --config
日期:2020-09-17 00:16:28 来源:oir作者:oir