KVM虚拟机迁移
近期因涉及到物理机的切换,需要将旧的物理服务器上的虚拟机迁移到新的虚拟机上,在这将对过程做下记录。
1.实验环境
旧物理服务器
- 操作系统
CentOS7.5
- kvm版本
- 根 据 库 编 译 :
libvirt 4.5.0
- 使 用 库 :
libvirt 4.5.0
- 使 用 的 API:
QEMU 4.5.0
- 运 行 管 理 程 序 :
QEMU 2.0.0
- 根 据 库 编 译 :
- 操作系统
新物理服务器
操作系统
CentOS7.9
kvm版本
根 据 库 编 译 :
libvirt 4.5.0
使 用 库 :
libvirt 4.5.0
使 用 的 API:
QEMU 4.5.0
运 行 管 理 程 序 :
QEMU 2.0.0
2.KVM虚拟机静态迁移
2.1 确定虚拟机关闭状态
[root@server-01 ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
1 kingdee-mssql 关闭
2.2 迁移虚拟机
- 查看该虚拟机配置文件的磁盘文件
[root@server-01 ~]# virsh domblklist kingdee-mssql
目标 源
------------------------------------------------
vda /var/lib/libvirt/images/kingdee-mssql-c.qcow2
vdb /var/lib/libvirt/images/kingdee-mssql-d.img
2.3 导入虚拟机配置文件
[root@server-01 ~]# virsh dumpxml kingdee-mssql > /opt/kingdee-mssql.xml
[root@server-01 ~]# ll /opt
总用量 8
-rw-r--r-- 1 root root 5573 12月 18 10:23 kingdee-mssql.xml
2.4 拷贝配置文件到新物理主机上
[root@server-01 ~]# scp /opt/kingdee-mssql.xml 172.16.50.2:/etc/libvirt/qemu/
2.5 查看虚拟机磁盘配置文件并拷贝到目标虚拟主机
[root@server-01 ~]# ll /var/lib/libvirt/images/
-rw-------. 1 qemu qemu 107390828544 12月 18 10:24 kingdee-mssql-c.qcow2
-rw-r--r--. 1 qemu qemu 1073741824000 12月 18 10:25 kingdee-mssql-d.img
[root@server-01 ~]# scp kingdee-mssql-c.qcow2 172.16.50.2:/var/lib/libvirt/images/
[root@server-01 ~]# scp kingdee-mssql-d.img 172.16.50.2:/var/lib/libvirt/images/
2.6 目标虚拟机主机配置
2.6.1 查看目标虚拟主机环境
[root@server-02 ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
16 WebVirtMgr running
2.6.2 定义注册虚拟主机
[root@server-02 ~]# cd /var/lib/libvirt/images/
[root@server-02 ~]# virsh define /etc/libvirt/qemu/kingdee-mssql.xml
2.6.3 启动虚拟主机并确认
[root@server-02 ~]# virsh list --all
[root@server-02 ~]# virsh start kingdee-mssql
[root@server-02 ~]# virsh console kingdee-mssql
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!