修改 Proxmox 6 VE 虚拟机的 VM ID

KVM 的虚拟化环境里, 只有 domain name 这一说, domain ID 是会随着每次重启, ID 会改变的。

Proxmox 创建虚拟机如果不指定 ID,这个 ID 会自动递增,而且这个 ID 在一个集群里是唯一的,是一直绑定虚拟机的。为了方便管理,类似网络环境的 DHCP IP Pool 的管理,我们会对某一段 ID 做一个特定的用途,加以区分。例如 100-199 是基础架构类的, 200-299 是模版,300-399 是数据库层, 400-499 是应用层, 500-599 是测试机, 600-699 是Windows 客户机。

如果不小心分配错了 VM ID,没有按照我们自定义的规则,需要修改 VM ID,怎么办呢?

在虚拟机已经关闭的情况下, ssh 登录进入集群内的任意一个节点,例如 pve-01,把 VM ID 111 修改为 211:
# cd /etc/pve/nodes/pve-01/qemu-server
# mv 111.conf 211.conf
# vim 211.conf
把里面的虚拟机磁盘映像路径修改掉,同时去真实的物理路径,把磁盘映像的文件名修改掉
假定磁盘 NFS Pool 的顶层路径为: /mnt/pve/vmpool/images,那么就是:
# mkdir 211
# mv 111/vm-111-disk-0.qcow2 211/vm-211-disk-0.qcow2
就可以

作者: 甬洁网络

--移动互联网&物联网技术提供商