KVM动态迁移
动态迁移(Live Migration):也叫在线迁移(Online Migration)。就是在保证虚拟机上服务正常运行的同时,将一个虚拟机系统从一个物理主机移动到另一个物理主机的过程。该过程不会对最终用户造成明 显的影响,从而使得管理员能够在不影响用户正常使用的情况下,对物理服务器进行离线维修或者升级。与静态迁移不同的是,为了保证迁移过程中虚拟机服务的可 用,迁移过程仅有非常短暂的停机时间。迁移的前面阶段,服务在源主机的虚拟机上运行,当迁移进行到一定阶段,目的主机已经具备了运行虚拟机系统的必须资 源,经过一个非常短暂的切换,源主机将控制权转移到目的主机,虚拟机系统在目的主机上继续运行。对于虚拟机服务本身而言,由于切换的时间非常短暂,用户感 觉不到服务的中断,因而迁移过程对用户是透明的。动态迁移适用于对虚拟机服务可用性要求很高的场合。有关kvm虚拟化请点击查看。kvm
案例试试步骤如下:
(1) 设置一台源主机)与一台目的主机;
(2) 两台主机的kvm连接NFS共享存储;
(3) 在源主机的kvm中新建虚拟机并安装系统;
(4) 两台主机连接并实现迁移
实验拓扑图如下:
类型 | 地址 | 作用 |
---|---|---|
源主机 | 192.168.30.31 | 安装centos7系统挂载共享存储 |
目的主机 | 192.168.30.32 | 挂载共享存储,与源主机连接 |
NFS | 192.168.30.30 | 提供共享存储 |
第一步:搭建NFS服务器
[root@lin3030 ~]#yum install nfs-utils
[root@lin3030 ~]#vi /etc/exports
/opt/kvmshare 192.168.30.31(rw,sync,no_root_squash)
/opt/kvmshare 192.168.30.32(rw,sync,no_root_squash)
#no_root_squash参数一定要加,不降权,即共享端和挂载端两边的root权限相同
[root@lin3030 ~]#mkdir /opt/kvmshare
[root@lin3030 ~]#systemctl start rpcbind //先启动
[root@lin3030 ~]#systemctl start nfs //后启动
[root@lin3030 ~]#netstat -anpu | grep rpcbind //UDP 111端口在监听
搭建完成 将镜像文件传输至共享文件夹目录下,备用!
第二步:
设置源主机的kvm并安装系统
下面安装必要工具插件:
yum install -y \
qemu-kvm.x86_64 \ //安装KVM模块
qemu-kvm-tools.x86_64 \ //安装KVM调试工具,可不安装
python-virtinst.noarch \ //python组件,记录创建VM是的xml组件
qemu-img.x86_64 \ //qemu组件,创建磁盘、启动虚拟机等
bridge-utils.x86_64 \ //网路支持工具
libvirt \ //虚拟机管理工具
virt-manager \ //图形界面管理工具
openssh-askpass //图形界面口令组件
----验证当前主机是否满足KVM的运行条件----
cat /proc/cpuinfo | egrep -o "vmx|smv" intel CPU过滤vmx AMD CPU过滤smv
modprobe kvm
lsmod | grep kvm
第三步:创建桥接网卡
以下是创建桥接网卡:
vi /etc/sysconfig/network-scripts/ifcfg-ens33 //在末尾新增一行,同时要把网卡的IP相关参数去掉
vi /etc/sysconfig/network-scripts/ifcfg-br0
[root@lin3030 ~]# systemctl restart network
目的主机的工具插件和网卡也需安装、修改
第四步:配置存储
打开终端
virt-manager
双击QEMU 点存储
第五步新建虚拟机:
之后点击完成
目标主机也要有网络存储方式相同
第六步迁移
1、添加目标主机的连接
之后输入对方账号密码
右键 选择迁移
迁移完成后发现已经在目标主机上运行
去另一台查看是否成功迁移
小结
可以看到基于数据块的动态迁移,使虚拟机的资源配置更加灵活。由于切换的时间非常短暂,用户感 觉不到服务的中断,因而迁移过程对用户是透明的。
原文地址:http://blog.51cto.com/9075724/2350048