实时迁移 (live migration)是指在保证虚拟机上服务正常运行的同时,虚拟机在不同的物理主机之间进行迁移,其逻辑步骤与离线迁移几乎完全一致。不同的是,为了保证迁移过程中虚拟机服务的可用,迁移过程仅有非常短暂的停机时间。迁移的前面阶段,服务在源主机运行,当迁移进行到一定阶段,目的主机已经具备了运行系统的必须资源,经过一个非常短暂的切换,源主机将控制权转移到目的主机,服务在目的主机上继续运行。对于服务本身而言,由于切换的时间非常短暂,用户感觉不到服务的中断,因而迁移过程对用户是透明的。在线迁移适用于对服务可用性要求很高的场景。
实验环境:
192.168.1.190 | XenServer1 |
192.168.1.91 | XenServer2 |
192.168.1.202 | ISCSI服务器 |
配置ISCSI服务器;
yum install scsi-target-utils -y
编辑配置文件/etc/tgt/targets.conf
<target iqn.2014-09.com.tuchao:chap1>
backing-store /dev/sdb
initiator-address 192.168.1.0/24
</target>
重启tgt服务;
/etc/init.d/tgtd restart
XenServer1与XenServer2保证相同配置,XenServer的配置在上篇文章有详细讲到。这里就不重复了。
我们这里要准备GFS2集群文件系统,两个节点安装所需要的程序包:
yum install rgmanager cman -y
yum install gfs2-utils -y
yum install iscsi-initiator-utils -y
安装libvirt,配置网络桥接;
yum install libvirt -y
service libvirtd start
virsh iface-bridge eth0 xenbr0
来到192.168.1.190安装配置高可用
创建一个集群
ccs_tool create gcluster
命令执行成功后,会在/etc/cluster目录下生成一个cluster.conf的文件。
添加节点
ccs_tool addnode -n 1 192.168.1.190
ccs_tool addnode -n 2 192.168.1.91
将配置文件同步到192.168.1.91
scp /etc/cluster/cluster.conf 192.168.1.91:/etc/cluster
两个节点同时启动cman;再启动rgmanager
配置登录ISCSI-Server
iscsiadm -m discovery -t sendtargets -p 192.168.1.202
iscsiadm -m node -T iqn.2014-09.com.tuchao:chap1 -p 192.168.1.202:3260 -l
对共享的iSCSI磁盘分区格式化,然后每个节点重启系统。
格式化/dev/sdc1为gfs2文件系统
命令帮助:
mkfs.gfs2
-J //指定日志区域大小
-j //日志区域个数
-p //指定锁协议
-t //指定锁表名称
mkfs.gfs2 -j 2 -p lock_dlm -t gcluster:sdc1 /dev/sdc1
修改fstab
UUID="b2a73a0e-37e7-511f-f44c-b0274e763a62" /store gfs2 defaults 0 0
启动服务
service cman start
service rgmanager start
service gfs2 start
迁移环境准备完毕
配置迁移功能,修改配置文件/etc/xen/xend-config.sxp;
修改以下关键几项:
(xend-relocation-server yes)
(xend-relocation-port 8002)
(xend-relocation-ssl no)
(xend-address '0.0.0.0')
(xend-relocation-address '0.0.0.0')
(xend-relocation-hosts-allow '')
将配置文件同步到节点二,之后两个节点重启xend服务。
scp /etc/xen/xend-config.sxp 192.168.1.91:/etc/xen/
/etc/init.d/xend restart
来到节点一将虚拟机配置文件同步到节点二,这时虚拟机的磁盘镜像文件是放在/store上的;
scp test1 192.168.1.91:/etc/xen/
启动虚拟机实例
xm create test1
我们连上虚拟机,在上面运行一个ping程序,然后执行迁移。
xm migrate test1 192.168.1.91
我们来到节点二查看
总结一下:
需要一个共享存储,用来放在虚拟机实例的磁盘镜像文件,两个节点必须挂载到同一个名称路径。
需要将虚拟机实例的配置文件,同步到另一个节点的相同位置。
两个节点需要修改/etc/xen/xend-config.sxp配置文件,启动xend服务。
本篇结束,感谢大家阅读,哪里有遗漏还请大家多多指点!