云迁移方案
- 格式:docx
- 大小:641.64 KB
- 文档页数:9
华云迁移方案
1概述
对于使用华云平台的用户而言,会面临多种需要业务迁移的场景,可以分为三种情况:用户进行华云部署,需要将业务从原有云平台迁移到华云平台,原有的业务可能使用物理机承载,也有可能使用了第三方的云平台;用户在使用华云的过程中,需要将虚机从一台物理机迁移到另外一台物理机,也就是在华云系统内进行虚机的迁移;第三种情况是用户配置了伸缩策略,华云监控引擎根据资源的使用情况在集群内进行自动迁移。下面按照虚拟机到虚拟机(V2V)迁移、物理机到虚拟机(P2V)迁移两种使用模式来描述华云的迁移实施方案。
2 V2V迁移
2.1华云内部迁移
典型的华云部署构架如图1所示,云区域1为承载kvm类型虚机的集群,云区域2为承载xen类型虚机的集群,云区域3承载了ESXI类型的虚机。
图1 华云典型构架
以图1的部署构架为例,云区域1和云区域2内部的虚机迁移通过华云内置的迁移功能就能够完成,其它形式的迁移,比如异构(云区域1 和云区域2 )区域间的迁移,以及云区域3 内部的迁移需借助第三方工具来执行。
2.1.1云区域内部迁移
对于kvm或xen类型的云区域内部迁移,通过华云内置的迁移功能完成,分为两个步骤执行:步骤1,如图2所示,在资源管理界面中选择需要迁移的虚机(这里是centos1
),点击迁移,弹出迁移界面,如图3所示。
图2 迁移目标选择
步骤2,在弹出的迁移界面中选择迁移的目的地,这里选择node4,点击保存,出现迁移状态,如图4所示。图中会显示迁移的总体进度,并且展示当前所处的迁移状态,迁移过程中有虚机磁盘迁移、虚机状态迁移、虚机网络迁移三个状态。迁移完成后,在物理节点node4中可以看到被迁移的虚机,如图5所示。
图3 迁移目的地选择
图4 迁移状态
图5 迁移结果
对于vmware的ESXI虚拟机需要借助于客户端vsphere的vmotion功能来完成,如需要要将主机172.30.5.3上的虚机WS03-01迁移到另一台主机172.30.5.2执行如下的操作:
1)启动WS03-01虚拟机,用鼠标右键单击,从弹出的快捷菜单中(或者从"清单"菜单选择"虚拟机→迁移")选择"迁移",如图6所示。
图6 vsphere启动迁移
2)在"选择迁移类型"页中,选择"更改主机",如图7所示。
图7 更改主机
3)显示"选择目标"页,选择另一台VMware ESXI Server主机。在"VMotion优先级"页中,选择"为VMotion最优性能预留CPU",如图8所示。
图8 更改主机
4)在迁移的过程中,正在迁移的虚拟机仍然在运行。在"近期任务"中显示了迁移的进度,如图9所示。
图9 迁移进度
5)在迁移完成后,迁移的虚拟机会在另一台VMware ESX Server主机运行。华云会实时检测vmware的虚机位置,在操作页面上进行相应的位置调整。
2.1.2跨云区域迁移
同构云区域之间的迁移方和和区域内迁移的方法一致,异构云区域之间的迁移由于虚拟化的机制不一致,需要进行手动迁移。在华云中各云区域使用统一的模板,vmware、kvm、xen可以共享模板,因此迁移的思路是从需要迁移的实例生成系统模板,从系统模板在指定的云区域中生成实例,最后使用上述华云同构迁移的步骤将实例迁移到指定物理机。下面描述迁移场景的详细步骤。
1)制作模板。华云提供命令从运行的实例生成系统模板,其中mubucket 是存储镜像的桶名称,可以由用户定义,i-12c4af6a是需要迁移的虚
机id。
euca-bundle-instance -b mybucket i-12c4af6a 2)启动跳板虚机,从上述生成的模板在指定的云区域启动虚机,其中zonename为迁移目标云区域名,modelname为从实例生成的模板名。
euca-runinstances -z zonename modelname
3)云区域内部虚机迁移。使用内部迁移的步骤将虚机迁移到指定物理机。
2.2外部系统迁移
外部系统是指不在华云管控范围之内的云系统,市场上主流的云系统有vmware、citrix、kvm(xen),迁移的思路是从相应实例生成华云模板,之后从华云模板在相应的云区域中启动实例。下面分别描述这些系统的迁移方案。
2.2.1从citrix迁移到华云
citrix可以将实例导出到xva文件,在wva文件中包含了实例的文件块,将这些文件块合并成华云的模板文件可以实现citrix到华云的实例迁移。主要流程如下:
1)在xenserver上停止需要迁移的虚机
2)导出xva文件: xe vm-export vm=$UUID filename=$NFS_SHARE/"$VMNAME".xva,其中UUID
是虚机的辨识码,VMNAME是xva的文件名。
3)释放xva文件,会得到一系列chunk-*.gz 文件,这是虚拟机的磁盘映像。
整个虚拟机磁盘被划分成1000000000大小的块,每个块存到一个文件中,文件名则从000000000开始顺序递增。每个文件都用gzip进行了压缩,需要
解压。
tar –xf "$VMNAME".xva
gzip –d chunk-*.gz
4)合并磁盘映象。将所有的映像文件合并到一个img文件中。
dd if=/dev/zero of=/temp/example.img bs=1M count=$disklen
dd if=chunk-* of=/temp/ example.img bs=1M seek=$startpos
其中disklen是指合并后磁盘的长度,startpos指chunk文件块在磁盘映
像中的起始位置。
5)在华云系统中注册此img文件为模板,在指定的云区域中启动虚机。这样就完成了从citrix xenserver到华云的实例迁移