UOS服务器操作系统KVM虚拟机迁移
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
一、概念
1、静态迁移
静态迁移也叫做冷迁移虚拟机关机状态下将虚拟机磁盘镜像文件和配置文件复制到另一台宿主机上整个迁移过程系统出于关闭状态 当然也无法提供服务。该场景只能应用于可以停机的系统环境下
2、动态迁移
动态迁移也叫做热迁移指的是将正在运行的虚拟机迁移到另一台宿主机上迁移期间整个系统应出于运行状态 业务系统仍可以提供服务网络连接会有秒级的中断。该场景适用于对业务可用性要求比较高的系统。
二、静态迁移
1、环境信息
主机地址 | 主机名 | 角色 |
---|---|---|
10.12.17.10 | src | 宿主机源主机 |
10.12.17.20 | des | 宿主机目标主机 |
2、关闭虚拟机
在宿主机源主机上关闭虚拟机
virsh shutdown 1050a #关闭主机
virsh destroy 1050a #强制关闭
3、虚拟机磁盘文件
1列出虚拟机磁盘文件
在宿主机源主机查看虚拟机的磁盘文件
[root@src ~]# virsh domblklist 1050a
目标 源
------------------------------------------------
vda /data/1050a.qcow2
hda -
2将虚拟机磁盘文件复制到另一台宿主机
将源主机上的虚拟机磁盘文件复制到目标主机上
scp /data/1050a.qcow2 root@des:/data/1050a.qcow2
4、虚拟机配置信息
1导出虚拟机配置信息
在源主机上导出虚拟机配置信息
virsh dumpxml 1050a >1050a.xml
2将虚拟机配置文件复制到另一台宿主机
将源主机上的虚拟机配置文件复制到目标主机上
scp 1050a.xml root@host2:/data/
5、定义虚拟机信息
在目标主机上定义生成虚拟机信息
virsh define /data/1050a.xml
注意磁盘文件存放的位置如果目标主机与源主机存放位置不同则需要更改磁盘文件的配置信息
6、启动测试
在目标主机上查看并启动虚拟机
[root@des ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
- 1050a 关闭
[root@des ~]# virsh start 1050a
域 1050a 已开始
三、动态迁移
1、添加hosts解析
在源主机与目的主机分别添加hosts解析
[root@src ~]# cat /etc/hosts
10.12.17.10 src
10.12.17.20 des
2、搭建NFS文件共享服务
1安装
yum install nfs-utils
2配置NFS共享目录
注意共享目录需要配置为虚拟机磁盘文件所在目录 目的是将源主机上的虚拟机磁盘文件共享的目标主机上
vim /etc/exports
/data 10.12.17.0/24(rw,no_root_squash,sync)
3启动服务
systemctl restart nfs-server.service
4检查共享配置
[root@src ~]# showmount -e 10.12.17.10
Export list for src:
/data 10.12.17.0/24
5挂载nfs
在目标主机上挂载nfs共享目录
mount -t nfs -o vers=3,nolock,proto=tcp 10.12.17.60:/data /data
3、开始迁移
virh migrate --live 1050a --unsafe --verbose qemu+ssh://10.12.17.20/system
root@10.12.17.20's password: #在此输入目标主机的密码
迁移: [100 %]
1迁移命令说明
- virsh migrate 迁移命令固定格式
- live 热迁移 1050a 虚拟机的名称
- unsafe 不进行安全审查
- verbose 迁移过程以百分比显示
- qemu+ssh://$ip/system 配置目标主机
4、查看虚拟机状态
在目标主机上查看虚拟机状态已经迁移完成
[root@des ~]# virsh list
Id Name State
----------------------------------------------------
3 1050a running