




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、KVM虚拟机迁移技术研究姓名:陈冲学号:1415925640班级:云计算四班目录一、虚拟机迁移技术31. 简介32.KVM虚拟机迁移原理33.虚拟机迁移过程中的控制流3二、虚拟机静态迁移41.虚拟机静态迁移简介42. 静态迁移53.目标虚拟主机(node2)启动客户虚拟机6三、虚拟机动态迁移71.简介72. 虚拟化平台架构83.配置实实验环境84. node1节点挂载NFS85. node2节点挂载NFS96. 虚拟机迁移9四、NFS文件共享技术101.NFS简介102.NFS服务器搭建113. NFS客户端搭建12一、虚拟机迁移技术1. 简介系统的迁移是指把源主机上的操作系统和应用程序移动到
2、目的主机,并且能够在目的主机上正常运行。在没有虚拟机的时代,物理机之间的迁移依靠的是系统备份和恢复技术。在源主机上实时备份操作系统和应用程序的状态,然后把存储介质连接到目标主机上,最后在目标主机上恢复系统。随着虚拟机技术的发展,系统的迁移更加灵活和多样化。虚拟机迁移技术为服务器虚拟化提供了便捷的方法。而目前流行的虚拟化工具如 VMware,Xen,HyperV,KVM 都提供了各自的迁移组件。尽管商业的虚拟软件功能比较强大,但是开源虚拟机如 Linux 内核虚拟机 KVM 和 XEN 发展迅速,迁移技术日趋完善。虚拟机迁移有三种方式,分别是P2V、V2V 和 V2P,不同的方式又存在许多不同的
3、解决方案。而本文是在v2v这种方式的基础上完成KVM虚拟机的迁移。2.KVM虚拟机迁移原理虚拟机迁移过程中数据的传输(磁盘镜像和内存数据)通常有两种常用的数据传输方式: - 基于hypervisor的传输机制,即通过host之间连接来进行数据传输 - 基于libvirtd的传输机制,即两个libvirtd进程之间的数据传输(1)基于hypervisor的数据传输这种传输方式具有最低的overload,因为传输的是裸数据,不支持数据的加密。另外,因为依赖于hypervisor的网络,所以需要对hypervisor networks进行一些特定的配置,比如打开某些端口。(2)基
4、于libvirtd的数据传输这种传输方式支持加密,是通过libvirt内建的RPC协议来进行数据的传输的,但是缺点是除了传输裸数据外,还需要传输一些额外的数据,这对镜像尺寸很大的虚拟机来说是个大问题。优点是由于不依赖与hypervisor network,所以不需要hypervisor对network做过多的配置,仅仅打开某个指定的port即可。3.虚拟机迁移过程中的控制流(1)带有管理端的直接迁移这种迁移方式是由一个管理客户端发起,管理客户端完全控制整个迁移流程,所以它必须能够且有权限访问源主机和目的主机上libvirtd的权限,因为外加一个管理客户端,所以不需要源libvirtd和目的li
5、bvirtd之间进行直接的交流,只需要按照管理客户端的指示来办事就好了。(2)带有管理端的点对点的迁移这种迁移方式下,管理客户端至于源libvirtd交互,然后源libvirtd完全控制整个迁移过程。优点是,即使管理客户端挂掉了,迁移还是能正常完成的。二、虚拟机静态迁移1.虚拟机静态迁移简介静态迁移也叫做常规迁移、离线迁移(Offline Migration)。就是在虚拟机关机或暂停的情况下从一台物理机迁移到另一台物理机。因为虚拟机的文件系统建立在虚拟机镜像上面,所以在虚拟机关机的情况下,只需要简单的迁移虚拟机镜像和相应的配置文件到另外一台物理主机上;如果需要保存虚拟机迁移之前的状态,在迁移之
6、前将虚拟机暂停,然后拷贝状态至目的主机,最后在目的主机重建虚拟机状态,恢复执行。这种方式的迁移过程需要显式的停止虚拟机的运行。从用户角度看,有明确的一段停机时间,虚拟机上的服务不可用。这种迁移方式简单易行,适用于对服务可用性要求不严格的场合。2. 静态迁移(1)确定虚拟机关闭状态(2)准备迁移vm2虚拟机,查看该虚拟机配置的磁盘文件(3)导入虚拟机配置文件(4)拷贝配置文件到目标虚拟主机上。scp是Linux下的远程拷贝命令,首先需要安装ssh服务:# apt-get install apt-get install openssh-server启动服务拷贝配置文件在目标机器(node2)查看文
7、件是否拷贝成功在拷贝的时候可能出现以下问题:原因:scp是基于ssh的拷贝服务,ssh在没有密钥登录的情况下,禁用了密码登录,故出现如上错误。解决办法:修改目标机器配置文件:vi /etc/ssh/sshd_config将其中的PermitRootLogin no修改为yesPubkeyAuthentication yes修改为noAuthorizedKeysFile .ssh/authorized_keys前面加上#屏蔽掉,PasswordAuthentication no修改为yes保存配置文件,重启ssh服务即可。(5) 拷贝虚拟磁盘文件(6) 拷贝镜像文件3.目标虚拟主机(node2)
8、启动客户虚拟机上面已经将虚拟机磁盘文件与配置文件都已经复制到目标虚拟主机上了,下面开始配置、启动虚拟机。(1)查看目标虚拟主机环境(2) 定义并注册虚拟机vm2(3) 开启虚拟机vm2可能会出现上面的错误,解决办法如下:重新启动(4) 使用vnc连接虚拟机看到这个界面,说明虚拟机已经迁移成功。三、虚拟机动态迁移1.简介动态迁移就是在保证虚拟机上服务正常运行的同时,将一个虚拟机系统从一个物理主机移动到另一个物理主机的过程。该过程不会对最终用户造成明 显的影响,从而使得管理员能够在不影响用户正常使用的情况下,对物理服务器进行离线维修或者升级。与静态迁移不同的是,为了保证迁移过程中虚拟机服务的可用,
9、迁移过程仅有非常短暂的停机时间。迁移的前面阶段,服务在源主机的虚拟机上运行,当迁移进行到一定阶段,目的主机已经具备了运行虚拟机系统的必须资 源,经过一个非常短暂的切换,源主机将控制权转移到目的主机,虚拟机系统在目的主机上继续运行。对于虚拟机服务本身而言,由于切换的时间非常短暂,用户感觉不到服务的中断,因而迁移过程对用户是透明的。动态迁移适用于对虚拟机服务可用性要求很高的场合。本文采用的是虚拟主机到虚拟主机的动态迁移,以便了解虚拟机动态迁移过程。相比KVM虚拟机静态迁移中需要拷贝虚拟机虚拟磁盘文件,KVM虚拟机动态迁移无需拷贝虚拟磁盘文件,但是需要迁移到的虚拟主机之间需要有相同的目录结构的虚拟机
10、磁盘文件,本文这部分内容通过NFS来实现,当然也可以采用GFS2集群文件系统来实现,本文的动态迁移是基于共享存储动态迁移。KVM动态迁移目前有两种,一种是基于共享存储的动态迁移,一种是基于基于数据块的动态迁移,需要qemu-kvm-0.12.2以上版本支持。2. 虚拟化平台架构虚拟机动态迁移架构图实验环境:一台物理主机、三台虚拟主机3.配置实实验环境在本地主机上安装ubuntu14.04虚拟机,配置所需要的实验环境,并使用克隆技术,创建另外两台虚拟主机。虚拟主机node1桥接IP地址:192.168.26.151虚拟主机node2桥接IP地址:192.168.26.152虚拟主机node3 (
11、需要NFS配置,详细配置会在文章末尾介绍)桥接IP地址:192.168.26.1534. node1节点挂载NFS(1) 查看NFS服务器(node3)分享目录(2) 挂载NFS目录# mount -t nfs 192.168.26.153:/home/demo/Documents /var/lib/libvirt/images/ -o rw5. node2节点挂载NFS(1)查看NFS服务器(node3)分享目录(2)挂载NFS目录# mount -t nfs 192.168.26.153:/home/demo/Documents /var/lib/libvirt/images/ -o rw
12、6. 虚拟机迁移(1) 查看节点1状态(传输前)(2) 传输文件(需保证node1和node2有相同的文件结构)# virsh migrate -live -verbose vm3 qemu+ssh:/192.168.26.152/system tcp:/192.168.26.152 -unsafe传输后node1节点状态发现虚拟客户机vm3已经关闭。(3) 查看node2节点node3节点一直在ping要迁移的虚拟机,基本没有断线情况,说明动态迁移虚拟机对客户机的影响不大。(4) 使用vnc打开迁移的客户机可以看到登录界面,说明虚拟客户机迁移成功。四、NFS文件共享技术1.NFS简介NFS
13、是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。NFS在文件传送或信息传送过程中依赖于RPC协议。RPC,远程过程调用 (Remote Procedure Call) 是能使客户端执行其他系统中
14、程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,但NFS却能让我们通过网络进行资料的分享,这是因为NFS使用了一些其它的传输协议。而这些传输协议用到这个RPC功能的。可以说NFS本身就是使用RPC的一个程序。或者说NFS也是一个RPC SERVER。所以只要用到NFS的地方都要启动RPC服务,不论是NFS SERVER或者NFS CLIENT。这样SERVER和CLIENT才能通过RPC来实现PROGRAM PORT的对应。可以这么理解RPC和NFS的关系:NFS是一个文件系统,而RPC是负责负责信息的传输。NFS分服务器和客户机,当使用远端文件时只要用mount命令就可把远端NF
15、S服务器上的文件系统挂载在本地文件系统之下,操作远程文件与操作本地文件没有不同。NFS服务器所共享文件或目录记录在/etc/exports文件中。 嵌入式Linux开发中,会经常使用NFS,目标系统通常作为NFS客户机使用,Linux主机作为NFS服务器。在目标系统上通过NFS,将服务器的NFS共享目录挂载到本地,可以直接运行服务器上的文件。在调试系统驱动模块以及应用程序,NFS都是十分必要的,并且Linux还支持NFS根文件系统,能直接从远程NFS root启动系统,这对嵌入式Linux根文件系统裁剪和集成也是
16、十分有必要的。2.NFS服务器搭建(1)搭建环境服务器主机系统:ubuntu14.04桌面版桥接IP地址:192.168.26.153(2) 安装必要软件# apt-get install nfs-kernel-server nfs-common portmap(3) 配置挂载目录和权限打开/etc/exports文件,在文件末尾添加下面一行代码 :/home/demo/Documents:与nfs服务客户端共享的目录。*:允许所有的网段访问,也可以使用具体的IP。rw:挂接此目录的客户端对该共享目录具有读写权限。sync:资料同步写入内存和硬盘。no_root_squash:root用户具有对根目录的完全管理访问权限。no_subtree_check:不检查父目录的权限。设置共享目录权限#
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 四川省成都市石室成飞中学2024-2025学年高一下学期3月月考 数学试题【含答案】
- 四川省南充市营山县城区片区学校2025年小升初易错点数学检测卷含解析
- 江苏省徐州市铜山县2025年数学五下期末预测试题含答案
- 西北师范大学《安装工程概论》2023-2024学年第二学期期末试卷
- 辽宁税务高等专科学校《敦煌历史与文化》2023-2024学年第二学期期末试卷
- 辽宁省沈阳市实验北重点名校2024-2025学年初三下学期中考适应性考试(二)英语试题含答案
- 无锡科技职业学院《神经与精神病学》2023-2024学年第一学期期末试卷
- 六盘水幼儿师范高等专科学校《高级统计分析方法(二)》2023-2024学年第二学期期末试卷
- 丽江师范高等专科学校《食品安全检验2》2023-2024学年第二学期期末试卷
- 内蒙古机电职业技术学院《建筑设备工程》2023-2024学年第二学期期末试卷
- 常用的饲料加工设备图形符号
- GB∕T 28575-2020 YE3系列(IP55)三相异步电动机技术条件(机座号63~355)
- 《通过感官来发现》PPT
- DB34T1589-2020 《民用建筑外门窗工程技术标准》
- 施工临时便桥、便道安全要求内容
- 40篇短文搞定高考英语3500词(共42页)
- 轮式挖掘机的驱动桥壳工艺设计1
- 事业单位工作人员奖励审批表--实用
- 主体结构施工方案(清江路站最新修改6-16)
- 钢管扣件进场验收记录
- 电解铝整流系统整流方案及整流元件与快熔的选择
评论
0/150
提交评论