KVM 建立好的虚拟机也可以调整预设的内存大小,本文记录修改过程。
简介
假设当前已经存在 KVM 虚拟机 foobar
修改内存大小需要动用 virsh 命令。
基本步骤:
- 关闭虚拟机
- 调整虚拟机配置参数
- 重启虚拟机
- 调整使用的内存大小
- 验证是否成功
virsh 修改虚拟机内存
查看内存大小
输出结果:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| $ virsh dominfo foobar Id: 2 Name: foobar UUID: d344441b-aeb3-4e6c-916d-c22edee5d234 OS Type: hvm State: running CPU(s): 2 Max memory: 2097152 KiB Used memory: 2097152 KiB Persistent: yes Autostart: enable Managed save: no Security model: apparmor Security DOI: 0
|
我需要将内存改成 3g,即 3145728 KB
关闭虚拟机
输出结果:
1
| Domain foobar is being shutdown
|
修改虚拟机配置信息
通过修改配置文件来调整参数
修改内容
1 2 3 4 5 6 7 8
| ...... <name>foobar</name> <uuid>d344441b-aeb3-4e6c-916d-c22edee5d234</uuid> <memory unit='KiB'>3145728</memory> <currentMemory unit='KiB'>3145728</currentMemory> <vcpu placement='static'>2</vcpu> <os> ......
|
启动虚拟机
我使用了 Virtual Machine Manager 重启了虚拟机,总之就是用各种方式启动虚拟机
查看当前内存
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| $ virsh dominfo foobarId: 4 Name: foobar UUID: d344441b-aeb3-4e6c-916d-c22edee5d234 OS Type: hvm State: running CPU(s): 2 CPU time: 104.7s Max memory: 3145728 KiB Used memory: 3145728 KiB Persistent: yes Autostart: enable Managed save: no Security model: apparmor Security DOI: 0 Security label: libvirt-d344441b-aeb3-4e6c-916d-c22edee5d234 (enforcing)
|
设置内存大小
如果 Max memory 和 Used memory 一样大则不需要使用该命令,否则可以设置 Used memory 至 Max memory
1
| virsh setmem foobar 3145728
|
同理可以修改 KVM 虚拟机的 cpu 核数。
参考资料
文章链接:
https://www.zywvvd.com/notes/system/linux/kvm/kvm-setmom/kvm-setmom/