本文最后更新于:2024年9月4日 下午

KVM 建立好的虚拟机也可以调整预设的内存大小,本文记录修改过程。

简介

假设当前已经存在 KVM 虚拟机 foobar

修改内存大小需要动用 virsh 命令。

基本步骤:

  1. 关闭虚拟机
  2. 调整虚拟机配置参数
  3. 重启虚拟机
  4. 调整使用的内存大小
  5. 验证是否成功

virsh 修改虚拟机内存

查看内存大小

1
virsh dominfo foobar

输出结果:

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
virsh shutdown foobar

输出结果:

1
Domain foobar is being shutdown

修改虚拟机配置信息

通过修改配置文件来调整参数

1
virsh edit foobar

修改内容

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 foobar

Id: 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/


“觉得不错的话,给点打赏吧 ୧(๑•̀⌄•́๑)૭”

微信二维码

微信支付

支付宝二维码

支付宝支付

KVM 虚拟机内存调整
https://www.zywvvd.com/notes/system/linux/kvm/kvm-setmom/kvm-setmom/
作者
Yiwei Zhang
发布于
2024年9月4日
许可协议