惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
博客园 - Franky
大猫的无限游戏
大猫的无限游戏
博客园 - 三生石上(FineUI控件)
量子位
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
S
SegmentFault 最新的问题
Apple Machine Learning Research
Apple Machine Learning Research
爱范儿
爱范儿
V
Visual Studio Blog
雷峰网
雷峰网
T
Tailwind CSS Blog
宝玉的分享
宝玉的分享
Blog — PlanetScale
Blog — PlanetScale
有赞技术团队
有赞技术团队
博客园 - 叶小钗
Microsoft Azure Blog
Microsoft Azure Blog
T
The Blog of Author Tim Ferriss
U
Unit 42
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
小众软件
小众软件
阮一峰的网络日志
阮一峰的网络日志
Y
Y Combinator Blog

又见苍岚

COLMAP PatchMatch Stereo 算法详解 事件驱动的状态机框架:从理论到工程实践 Git 在国内网络环境下无法 Push 的排查与修复 —— 配置 Clash 代理 分段五次多项式插值原理详解 路径插值方法深度对比研究 Claude Code 使用指南 OpenClaw 记忆管理与技能创建指南 CBS(Conflict-Based Search)算法详解 A* 算法及其变种详解 OpenClaw 配置多 Agents Windows Powershell 无法加载文件,因为在此系统上禁止运行脚本问题的解决方案 MaxClaw 安装流程 大模型 AI 名词介绍 AList 网盘聚合工具简介 Protobuf 简介与测试 Claude Code 简介以及 GLM 4.7 模型接入 Github 歌词下载工具 163MusicLyrics Python __getattr__ 懒加载 Python TypedDict 机器人仿真平台 Gazebo 安装记录 机器人仿真平台 Gazebo 简介 多机器人路径规划问题(Multi-Agent Path Finding, MAPF)简介 Python exifread 读取修改过的 jpeg 信息错误问题修复 3D 坐标系变换的理解 3D 旋转矩阵基本概念 MongoDB Compass 介绍 Python 环境管理工具 uv Flutter 开发指南 Snipaste 安装下载与黑屏问题解决方案 全局路径规划算法记录
KVM 虚拟机内存调整
Yiwei Zhang · 2024-09-04 · via 又见苍岚

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>
......

启动虚拟机

1
virsh start foobar

我使用了 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/