源宿主机IP 172.16.0.2,主机名为 compute01;
目的宿主机IP 172.16.0.3,主机名为compute02;
操作系统都是CentOS6.8
需要迁移的虚拟机名为 instance-1,磁盘采用qcow2文件存储,有两块磁盘,分别为/data/instance-1.vda 20G,/data/instance-1.vdb 500GB。
1. 在两台宿主机上的/etc/hosts加入以下两行:
172.16.0.2 compute01 172.16.0.3 compute02 |
迁移中必须使用主机名通信,使用IP地址会报错
2. 配置libvirt,并重启服务(在目的宿主机配置):
[root@compute02 ~]# cat /etc/libvirt/libvirtd.conf |egrep -v ^#|tr -s '\n' listen_tls = 0 listen_tcp = 1 tcp_port = "16509" mdns_adv = 0 auth_unix_ro = "none" auth_unix_rw = "none" autp_tcp = "none" [root@compute02 ~]# service libvirtd restart |
在compute01上使用命令virsh -c qemu+ssh://root@compute02/system,然后根据提示输入compute02的root密码,如果能连接到compute02的libvirt,说明配置成功.
3. 在目的宿主机创建2个空的qcow2文件,路径、文件名以及大小必须与原虚拟机一致:
[root@compute02 ~]# cd /data [root@compute02 data]# qemu-image create -f qcow2 -o preallocation=metadata instance-1.vda 20G [root@compute02 data]# qemu-image create -f qcow2 -o preallocation=metadata instance-1.vdb 500G |
在compute01上执行以下命令,虚拟机就开始迁移了:
[root@compute01 ~]# virsh migrate --live --copy-storage-all --persistent –unsafe instance-1 qemu+ssh://root@compute02/system |
迁移的时间与虚拟机磁盘数据多少以及负载高低有关,可以在compute02上查看迁移进度:
[root@compute02 ~]# tail -f /var/log/libvirt/qemu/instance-1.log char device redirected to /dev/pts/9 Receiving block device images Completed 1 % |
正常情况下,迁移过程不会对虚拟机有影响。迁移完成后,需要把compute01上的旧虚拟机删除,然后在compute02上把虚拟机设置为autostart。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。