还剩16页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
虚拟机迁移技术漫谈怎样在虚拟机和物理机以及虚拟机和虚拟机之间改/迁移系统序言系统的迁移是指把源主机上的操作系统和应用程序移动到目的主机,并且可以在目的J主机上正常运行在没有虚拟机欧I时代,物理机之间的迁移依托的是系统备份和恢复技术在源主机上实时备份操作系统和应用程序的状态,然后把存储介质连接到目的主机上,最终在目的主机上恢复系统伴随虚拟机技术的发展,系统的迁移愈加灵活和多样化本系列文章全面简介了虚拟机迁移日勺三种方式P2V、V2V和V2P,及他们在内核虚拟机KVM上的实现措施,提成五个部分第一部分,简介虚拟机迁移时多种措施和对应日勺迁移工具,并且着重分析Linux平台上开源的J虚拟化工具KVM和XEN实时迁移中的I的内存预拷贝技术;第二部分简介KVM虚拟机之间的V2V迁移技术,包括离线迁移和在线迁移;第三部分简介基于VMware或XEN日勺虚拟机怎样迁移到基于KVM的虚拟机;第四部分简介物理机到虚拟机迁移P2V和虚拟机到物理机迁移V2P在KVM虚拟机上的实现;第五部分简介和虚拟机迁移亲密有关的虚拟机克隆、快照和备份技术回页首图
5.状态信息的I复制
6.然后,将存储从源系统上解锁,并锁定在目时系统上启动目日勺服务器,并与存储资源和网络资源相连接图
6.停止源服务器,启动目的服务器Virtual-to-Physical虚拟机到物理机的J迁移V2P指把一种操作系统、应用程序和数据从一种虚拟机中迁移到物理机的主硬盘上,是P2V时逆操作它可以同步迁移虚拟机系统到一台或多台物理机上尽管虚拟化日勺基本需求是整合物理机到虚拟机中,但这并不是虚拟化日勺唯一的I应用例如有时虚拟机上日勺应用程序的问题需要在物理机上验证,以排除虚拟环境带来的影响此外,配置新的工作站是件令IT管理者头痛的事情,但虚拟化的应用可以协助他处理这个难题先配置好虚拟机,然后运用硬盘克隆工具复制数据至工作站硬件,例如赛门铁克的I SaveRestore Ghost不过这种克隆措施有两个局限一种镜像只能运用在同种硬件配置的机器上;要想保留配置的修改,只能重做新的镜像V2P时迁移可以通过确定目的的物理环境来手动完毕,如把一种特定的硬盘加载到虚拟系统中,然后在虚拟环境中安装操作系统、应用程序和数据,最终手动修改系统配置和驱动程序这是一种乏味且不确定的过程,尤其是在新的环境比旧时环境包括更多大量不一样的I硬件的状况下为了简化操作,我们可以运用专门的迁移工具以自动的方式来完毕部分或所有迁移工作目前支持V2P转换时工具有PlateSpin Migrate和EMC HomeBase使用这样的工具使得V2P转换过程更简易,并且比使用第三方磁盘镜像工具更快捷V2P迁移措施V2P时不确定性导致自动化工具不多,目前重要有如下几种处理方案・VMware官方推荐欧J是使用Ghost+sysprep来实现半自动化的I迁移・基于备份和恢复操作系统的处理方案这个方案运用了现成的系统备份恢复工具,没有体现虚拟机和物理机口勺差异,类似于P2P Physical-to-Physical物理机到物理机迁移注意备份工具可以恢复系统到异构硬件平台上・开源工具的处理方案适合Linux/Unix系统,使用开源工具和脚本,手动迁移系统这个方案难度较大,适合有经验的管理员回页首Linux系统在虚拟机迁移中的技术难点一般我们期望虚拟机的迁移可以所有自动化或者部分自动化完毕,但实际上Linux系统在P2V和V2V时迁移中也许碰到某些困难本节列举了Linux迁移中需要注意的地方a.磁盘分区名被硬编码当我们做磁盘虚拟化时,也许会使用不一样类型的虚拟磁盘设备,这将会导致磁盘名字的变化例如Xen虚拟机中的半虚拟化设备使用/dev/xvda而原则的Linux半虚拟化设备使用/dev/vda准备迁移的Linux系统中存在对/dev/hd*和/dev/sd*磁盘分区名分散的J关联,例如在/etc/fstab文献,启动初始化文献系统ramfs和某些解析磁盘设备的开机启动脚本文献中V2V迁移工具需要在整个磁盘上查找并修改这些关联有一种简朴的措施来防止这种状况Linux系统上主流日勺文献系统和互换分区类型可以使用Lables或UUID作为分区名迁移时这些信息是被重点保护的,系统应当小心使用这些信息,一定不要使用设备作为分区名此外,LVM分区名和设备无关,在迁移中也不受影响b.网络硬件设备的变化当系统迁移时,网络设备很也许产生变化例如虚拟网络设备和物理网络设备的转化或者不一样类型的网络设备之间的转变不过是他们日勺MAC地址没有变化MAC地址是IEEE分派给物理设备制造商日勺,两个物理设备不会有相似的I MAC地址;然而虚拟网络设备也许出现这种状况因此在做虚拟机迁移时,你必须记录每一种网络设备日勺MAC地址,保证MAC地址和网络设备的对应关系c.内核不支持某些虚拟设备某些Linux发行版没有virtio虚拟设备日勺驱动,也许是由于Linux发行版早于虚拟设备公布了;或者虚拟设备的驱动是闭源的;或者是在系统编译时去掉了因止匕有时我们此外需要一种完全不一样的内核(例如Xen初期日勺版本就是这样的)无论怎样,在客户机上安装一种新的内核并且使之可以启动是一种很大的冒险,最佳防止这样做d.Xwindow需要重新配置与磁盘、网络设备同样,系统迁移后显示设备也会变化理想的状况是Xwindow会自动处理这个的变化,探测所有的显示设备并且使用它发现日勺第一种设备不过这不意味着所有的Linux发行版都会以这种方式工作e.网络环境的I变化静态IP地址和静态DNS解析在虚拟机迁移中是一种麻烦的I事情尽管不是必须的,不过最佳配置系统从DHCP服务器自动获得所有的网络配置信息f.CPU日勺扩展指令集发生变化迁移后的系统中,新的虚拟CPU或主板和旧欧I会有某些不一样CPU欧I扩展指令集如SSE,Vectors,NX也许被加入或去掉CPU的I型号和制造商信息也许被变化因此,假如你想要优化虚拟系统上的软件,这也许是挥霍时间并且导致系统瓦解最佳是使用通用的软件,让程序在每次启动的时候检查运行环境和与否需要优化实际上,实时迁移的状况比这个还要复杂,由于处理器也许在程序的运行的I过程中被变化目前为止还没有一种方案能很好的处理这个问题如你所见,P2V和V2V最大欧I问题在于硬件的变化Linux发行版自身应当可以处理所有口勺硬件变化在系统启动的时候去检查所有口勺硬件,操作系统内核识别新的设备并寻找新的驱动处理它们,所有应用软件都不要和硬件绑定,设计一种很好的模式来应对忽然的环境变化回页首目前流行的虚拟机软件的迁移特性简介P2V迁移工具虚拟机所展现出来日勺虚拟硬件一般与原始服务器上的物理硬件不一样P2V迁移工具是这样处理这个问题的I•VMware vCenter Converter支持从诸如物理机、VMware和Microsoft虚拟机格式以及某些第三方磁盘映像格式欧I源进行转换他替代了旧时迁移工具VMware WorkstationImporter和VMware P2V AssistantVMware0vCenterConverter可以支持和识别大多数服务器硬件类型VMware vCenterConverter提供如下两种克隆机制热克隆(实时迁移)和冷克隆(使用BootCD的克隆)使用热克隆时,VMware vCenterConverter直接与源物理机上运行欧I操作系统通信,因此没有直接日勺硬件级别依赖性;使用冷克隆时,VMware vCenterConverterBootCD提供一种可支持最新硬件日勺Windows PE引导环境,因此可以识别大多数物理服务器系统硬件目前只支持基于Microsoft Windows肚I物理机迁移•XenConvert是XenServer物理机到虚拟机的I迁移工具不仅可以迁移Window物理机到XenServer管理的J虚拟机,并且可以导入VMware虚拟机VMDK格式和0VF包•Virtual MachineManager2023:提供基于任务日勺向导,将自动执行大部分转换过程,以此来简化P2V转换由于可通过编写脚本来完毕P2V转换过程,因此可以通过Windows PowerShell命令行进行大规模P2V转换VMM2023同步支持联机转换和脱机转换•Symantec Ghost制作镜像文献和把镜像文献恢复到虚拟机用来把需要迁移的服务器的硬盘通过网络做成镜像文献,然后通过网络把镜像文献恢复到虚拟机•Virt-p2vRedHat区I开源迁移工具V2V迁移工具支持V2V迁移是虚拟机的管理工具的重要功能,因此多种虚拟化软件都提供了实现V2V迁移的模块或工具V2V在线迁移大大的I减少了虚拟机的迁移区I停机时间这使动态迁移成了顾客在需要不间断工作时迁移虚拟机日勺首选一般的在线迁移方案,是虚拟机使用共享存储,迁移时只拷贝虚拟机的I内存原理参见前面的小节“v2V内存迁移技术”VMware VMotionVMware的J在线迁移是由VMotion这个组件实现□勺Vmotion□勺实时处理方案日勺特点是有其自己日勺Cluster FileSystem:VMFS,此外也支持NFSVmotion把整个虚拟机包括其完整状态封装在几种文献中,寄存在SAN/NAS等共享存储中迁移的过程是把内存和运行状态通过高速网从源复制到目日勺Citrix XenMotionXenMotion是XenServer日勺一项功能,可以将正在运行的I虚拟机从一台XenServer主机上迁移到此外一台,而不带有停机的I危险这就意味着在整个迁移过程中,被移动的虚拟机在任意时刻都可以访问XenMotion的重要目的I是在某台服务器进行计划维修时,使终端顾客察觉不到应用程序出现过极短暂时中断,令整个服务过程正常顺畅Microsoft Hyper-V微软日勺Hyper-V从
2.0开始支持了动态迁移技术运用Hyper-V动态迁移,在不中断任何服务或者不容许停机日勺前提下,将一种运行中的虚拟机从一种Hyper-V物理主机移动到此外一种上面,通过预复制迁移的虚拟机中的内存到目的主机管理员或者脚本在启动动态迁移的时候控制选择本次迁移的目的计算机,客户使用被迁移系统时是不会感觉到迁移在进行的QEMU-KVM/Libvirt内核虚拟机KVM技术的I原创企业Qumranet在2023年被RedHat收购后来,得到了全面迅速的I发展在2023年公布日勺Redhat EnterpriseLinux
5.4全面支持了KVM虚拟机,其中已经包括了离线迁移和在线迁移的技术2023年公布的]Redhat EnterpriseLinux
5.5和Suse LinuxEnterprise Server11Service Pack1中集成了图形化於I KVM虚拟机管理工具virt-manager,使虚拟机的J迁移愈加直观和方面在本系列文章的下一篇中将详细简介怎样迁移KVM虚拟机回页首自动化迁移日勺未来目前许多企业都已将包括CPU、内存、I/O、存储、网络在内的J数据中心设备进行了虚拟化,怎样更好管理和运用这些虚拟附和物理的I资源,已经成为数据中心异构虚拟化时期急需处理的问题P2V迁移工具使物理资源虚拟化、数据中心转移愈加简朴;V2V迁移工具使虚拟资源到达最优化配置;而V2P迁移工具可以迅速布署虚拟机到物理机在不远的J未来,P2V/V2P/V2V工具都会失去原有的意义,所有功能的实现都集成到一种智能化、自动化、自治化数据中心的优化系统中去高度自动化的监测模块将24小时扫描整个数据中心,寻找过载和闲赋的虚拟机;规划模块根据监测汇报和搜集的I信息选择最佳的迁移工具进行资源优化,迁移过程将在应用程序正常运行的状况下自动执行那时,整个环境就像液体同样可以自由流动,负载不停地在各服务器上保持着均衡,虚拟环境与物理环境对顾客将再无差异虚拟化和云计算云计算就是以服务的形式提供计算资源云计算背后最重要的概念之一就是可伸缩性,而实现它的关键则是虚拟化虚拟化在一台共享计算机上汇集多个操作系统和应用程序,以便更好地运用服务器虚拟化还容许在线迁移,因此,当一种服务器超载时,可以将其中一种操作系统以及它日勺应用程序迁移到一种新的I、不繁忙的服务器上在云中,可以在多种操作系统和应用程序之间共享虚拟化服务器,从而减少服务器的数量更少的服务器意味着需要更少的空间(减少数据中心占用的空间)和更少用于制冷日勺电力(减少碳污染)IBM认为,虚拟化是未来云计算架构的关键构成模块,而衡量一家IT企业的“云”能力日勺关键也正是其虚拟化实行能力虚拟化技术正在普及,也许不用太久,我们每天都会与虚拟机打交道回页首小结本文简介了虚拟机迁移的多种措施及工具,分析了内存预拷贝技术的原理,还列举了虚拟机迁移中应当注意的问题不仅对于系统管理员全面理解迁移措施和方略,进行虚拟机迁移规划有参照意义;并且对于虚拟机的开发和测试人员也有指导意义本系列背面的文章中,将详细简介在KVM虚拟机上,怎样操作和实现系统迁移参照资料学习•参考developerWorks上日勺Linux虚拟化技术”专栏,理解有关Linux上的I虚拟化技术和软件•参照“VMare Vmlion”产品主页,理解关于VMtion的功能特性•参照“Cirix XenMotion”产品主页,理解有关XenMotion的J功能特性•参照“KVM Migrationwiki页面,理解有关KVM Migration的内容•在developerWorks Linux专区寻找为Linux开发人员(包括Linux新手入门)准备的更多参照资料,查阅我们最受欢迎的文章和教程•在developerWorks上查阅所有Linux技巧和Linux教程虚拟机迁移简介为何要迁移服务器迁移服务器可认为顾客节省管理资金、维护费用和升级费用此前的x86服务器,体积比较“庞大”;而目前的服务器,体积已经比此前小了许多,迁移技术使得顾客可以用一台服务器来同步替代此前的许多台服务器,这样就节省了顾客大量的机房空间此外,虚拟机中的服务器有着统一的“虚拟硬件资源”,不像此前的I服务器有着许多不一样的硬件资源(如主板芯片组不一样,网卡不一样,硬盘,RAID卡,显卡不一样)迁移后的服务器,不仅可以在一种统一的I界面中进行管理,并且通过某些虚拟机软件,如VMware提供的高可用性工具,在这些服务器由于多种故障停机时,可以自动切换到网络中此外相似的虚拟服务器中,从而到达不中断业务的目的总之,迁移的J优势在于简化系统维护管理,提高系统负载均衡,增强系统错误容忍度和优化系统电源管理虚拟机迁移的性能指标一种优秀欧I迁移工具,目的是最小化整体迁移的I时间和停机时间,并且将迁移对于被迁移主机上运行服务的性能导致的影响降至最低当然,这几种因素互相影响,实行者需要根据迁移针对的应用的需求在其中进行衡量,选用合适时工具软件虚拟机迁移日勺性能指标包括如下三个方面
1.整体迁移时间从源主机开始迁移到迁移结束的时间
2.停机时间迁移过程中,源主机、目的I主机同步不可用及I时间讨论•欢迎力口入My developerWorks中文小区作者简介郭晋兵,软件工程师,目前在IBM中国软件开发中心从事KVM虚拟机有关软件的开发测试工作吴超凤,软件工程师,目前在IBM中国软件开发中心从事KVM虚拟机有关软件的I开发测试工作
3.对应用程序的性能影响迁移对于被迁移主机上运行服务性能的的影响程度回页首虚拟机迁移的分类及原理物理机到虚拟机的I迁移Physical-to-VirtualP2V指迁移物理服务器上的操作系统及其上的应用软件和数据到VMM VirtualMachineMonitor管理0tl虚拟服务器中这种迁移方式,重要是使用多种工具软件,把物理服务器上的系统状态和数据“镜像”到VMM提供的虚拟机中,并且在虚拟机中“替代”物理服务器的存储硬件与网卡驱动程序只要在虚拟服务器中安装好对应的驱动程序并且设置与本来服务器相似的地址如TCP/IP地址等,在重启虚拟机服务器后,虚拟服务器即可以替代物理服务器进行工作P2V迁移措施・手动迁移手动完毕所有迁移操作,需要对物理机系统和虚拟机环境非常理解i.关闭原有的物理机上的I服务和操作系统,并且从其他媒质上启动一种新欧I系统例如从LiveCD上启动一种新欧I光盘系统大部分的发行版都会带有LiveCDoii.把物理机系统的磁盘做成虚拟机镜像文献,如有多种磁盘则需要做多种镜像,并且拷贝镜像到虚拟主机上iii.为虚拟机创立虚拟设备,加载镜像文献iv.启动虚拟机,调整系统设置,并启动服务・半自动迁移运用专业工具辅助P2V的迁移,把某些手动环节进行自动化例如将物理机日勺磁盘数据转换成虚拟机格式,这历来是相称耗时日勺工作,你可以选择专业的I工具来完毕这个环节这里有大量的I工具可以使用,如RedHat日勺开源工具virt-p2v,Microsoft VirtualServer MigrationToolkit等・P2V热迁移迁移中防止宕机大部分P2V工具也有一种很大的I限制在整个迁移过程中,物理机不可用在运行关键任务的环境或有SLA服务水平协议的地方,这种工具不可选幸运时是伴随P2V技术欧I发展,VMware vCenterConverter和Microsoft Hyper-V已经可以提供热迁移功能,防止宕机目前,P2V热迁移仅在Windows物理服务器可用,未来将添加对Linux日勺支持虚拟机到虚拟机的I迁移Virtual-to-VirtualV2V迁移是在虚拟机之间移动操作系统和数据,照顾主机级别的I差异和处理不一样日勺虚拟硬件虚拟机从一种物理机上的VMM迁移到另一种物理机日勺VMM,这两个VMM的类型可以相似,也可以不一样如VMware迁移到KVM,KVM迁移到KVMo可以通过多种方式将虚拟机从一种VM Host系统移动到另一种VM Host系统V2V离线迁移离线迁移offline migration也叫做常规迁移、静态迁移在迁移之前将虚拟机暂停,假如共享存储,则只拷贝系统状态至目的主机,最终在目的主机重建虚拟机状态,恢复执行假如使用当地存储,则需要同步拷贝虚拟机镜像和状态到目口勺主机到这种方式日勺迁移过程需要显示的停止虚拟机的运行从顾客角度看,有明确的一段服务不可用日勺时间这种迁移方式简朴易行,合用于对服务可用性规定不严格的场所V2V在线迁移在线迁移online migration又称为实时迁移live migration是指在保证虚拟机o上服务正常运行的同步,虚拟机在不一样的I物理主机之间进行迁移,其逻辑环节与离线迁移几乎完全一致不一样的是,为了保证迁移过程中虚拟机服务日勺可用,迁移过程仅有非常短暂的停机时间迁移的前面阶段,服务在源主机运行,当迁移进行到一定阶段,目的主机已经具有了运行系统的必须资源,通过一种非常短暂的切换,源主机将控制权转移到目的主机,服务在目的主机上继续运行对于服务自身而言,由于切换的时间非常短暂,顾客感觉不到服务的中断,因而迁移过程对顾客是透明的在线迁移合用于对服务可用性规定很高的I场景目前主流口勺在线迁移工具,如VMware口勺VMotion,XEN口勺xenMotion,都规定物理机之间采用SAN storagearea network,NAS network-attached storage之类的集中式共享外存设备,因而在迁移时只需要考虑操作系统内存执行状态的迁移,从而获得很好的迁移性能此外,在某些没有使用共享存储的场所,可以使用存储块在线迁移技术来实现V2V的虚拟机在线迁移相比较基于共享存储的在线迁移,数据块在线迁移的需要同步迁移虚拟机磁盘镜像和系统内存状态,迁移性能上打了折扣不过他使得在采用分散式当地存储的环境下,仍然可以运用迁移技术转移计算机环境,并且保证迁移过程中操作系统服务的可用性,扩展了虚拟机在线迁移时应用范围V2V在线迁移技术消除了软硬件有关性,是进行软硬件系统升级,维护等管理操作的有力工具V2V内存迁移技术对于VM的I内存状态欧I迁移,XEN和KVM都采用了主流时的预拷贝pre-copy时方略迁移开始之后,源主机VM仍在运行,目的主机VM尚未启动迁移通过一种循环,将源主机VM的内存数据发送至目的主机VM循环第一轮发送所有内存页数据,接下来的每一轮循环发O送上一轮预拷贝过程中被VM写过的J脏页内存dirty pageso直届时机成熟,预拷贝循环结束,进入停机拷贝阶段,源主机被挂起,不再有内存更新最终一轮循环中的脏页被传播至目的主机VM预拷贝机制极大时减少了停机拷贝阶段需要传播的内存数据量,从而将停机时间大O大缩小然而,对于更新速度非常快日勺内存部分,每次循环过程都会变脏,需要反复pre-copy,同步也导致循环次数非常多,迁移的I时间变长针对这种状况,KVM虚拟机建立了三个原则集中原则,一种循环内日勺dirty pages不大于等于50;不扩散原则,一种循环内传播的I dirty pages少于新产生股I;有限循环原则,循环次数必须少于30o在实现上,就是采用了如下措施・有限循环循环次数和效果受到控制,对每轮pre-copy日勺效果进行计算,若pre-copy对于减少不一致内存数量的效果不明显,或者循环次数超过了上限,循环将中断,进入停机拷贝阶段•在被迁移VM欧I内核设置一种内存访问欧I监控模块在内存pre-copy过程中,VM的一种进程在一种被调度运行的期间,被限制最多执行40次内存写操作这个措施直接限制了pre-copy过程中内存变脏时速度,其代价是对VM上的进程运行进行了一定的限制KVM的预拷贝在线迁移过程详解
1.系统验证目的服务器的存储器和网络设置与否对日勺,并预保留目的服务器虚拟机的资源图
1.源服务器和目的服务器简图
2.当虚拟机还在源服务器上运转时,第一种循环内将所有内存镜像复制到目的I服务器上在这个过程中,KVM仍然会监视内存的任何变化图
2.内存镜像复制示意图
3.后来日勺循环中,检查上一种循环中内存与否发生了变化假如发生了变化,那么VMM会将发生变化的I内存页即dirty pages重新复制到目日勺服务器中,并覆盖掉先前的内存页在这个阶段,VMM仍然会继续监视内存口勺变化状况图工进行有变化的内存复制
4.VMM会持续这样的内存复制循环伴随循环次数日勺增长,所需要复制的dirtypages就会明显减少,而复制所花费的I时间就会逐渐变短,那么内存就有也许没有足够的时间发生变化最终,当源服务器与目的|服务器之间的差异到达一定原则时,内存复制操作才会结束,同步暂停源系统图
4.所需复制的数据在减少
5.在源系统和目的系统都停机日勺状况下,将最终一种循环日勺dirty-pages和源系统设备日勺工作状态复制到目日勺服务器。
个人认证
优秀文档
获得点赞 0