虚拟机迁移
静态迁移是指在虚拟机关闭或暂停的情况下,将源宿主机上虚拟机的磁盘文件和配置文件拷贝到目标宿主机上。这种方式需要显式的停止虚拟机运行,对服务可用性要求高的需求不合适。
动态迁移无需拷贝虚拟机配置文件和磁盘文件,但是需要迁移的主机之间有相同的目录结构放置虚拟机磁盘文件,可以通过多种方式实现,本例采用基于共享存储动态迁移,通过NFS(Network File System网络文件系统)来实现。
源宿主机:Ubuntu16.04操作系统,下文中以“节点1”表示,NFS挂载目录/home/kvm。
目标宿主机:Ubuntu16.04操作系统,下文中以“节点2”表示,NFS挂载目录/home/kvm。
基于QEMU的动态迁移虚拟机镜像文件为ubuntu14.04.img。 NFS服务器:Ubuntu16.04操作系统,服务目录为/mnt/nfs/。
1、NFS服务器配置
(1) KVM虚拟机动态迁移无需拷贝虚拟机配置文件和磁盘文件,但是需要迁移的
主机之间有相同的目录结构放置虚拟机磁盘文件(本例为“/home/kvm”目录),这里的动态迁移是基于共享存储动态迁移,通过NFS来实现,需要QEMU 0.12.2以上版本支持。可以使用“qemu-img --help|grep version”来查看安装的QEMU的版本号。
(2) 在VMware中将宿主机克隆,“经管”----“克隆”。源宿主机为节点1,克
隆的机器作为目标宿主机,为节点2。克隆步骤如下:
1 / 8
2 / 8
(3) 修改节点2中的IP地址(修改为和你的节点1同一网段的IP)。只需修改
IP即可,其他不用改动,命令如下:
root@ubuntu:~# vim /etc/network/interfaces
修改完毕后,重启网络
root@ubuntu:~# /etc/init.d/networking restart
[ ok ] Restarting networking (via systemctl): networking.service.
(4) 在节点2上安装NFS服务器。使用命令“sudo apt-get install
nfs-kernel-server nfs-common”下载安装NFS,kernel-server相当于server端,common是client端,如图所示:
3 / 8
安装NFS
(5) 在节点2上配置NFS服务器,将NFS服务器上的“/mnt/nfs”目录设为服务
目录。首先使用命令“sudo mkdir /mnt/nfs”创建该目录,然后使用命令“sudo chmod 777 /mnt/nfs”修改该目录权限,修改后在“/mnt”目录使用“ls -l”命令查看,如图所示。
创建nfs目录并修改其权限
(6) 在节点2上,使用vim打开修改“/etc/exports”文件添加共享目录,在该
文件最后添加“/mnt/nfs *(rw,sync,no_subtree_check,no_root_squash)”一行即可。/mnt/nfs表示要设置的共享目录,*表示允许所有的网段访问,也可以使用具体的IP。rw表示挂载此目录的客户端对该共享目录具有读写权限。sync表示资料同步写入内存和硬盘。no_root_squash:root用户具有对根目录的完全经管访问权限。no_subtree_check:不检查父目录的权限。修改完毕后保存退出。
在exports中添加共享目录
(7) 在节点2上,“/etc/exports”文件修改后,使用命令“sudo exportfs –r”
刷新。然后启动NFS服务,命令如下: sudo /etc/init.d/rpcbind restart
sudo /etc/init.d/nfs-kernel-server restart
4 / 8
相关推荐: