背景
客户要将业务从自建的虚拟化数据中心迁徙至UCloud,心愿可能将多年前的VMware体系换到私有云体系。其中:
- 客户心愿上云过程不影响到现有业务;
- 去除机房托管的过保设施,缩小不必要的收入;
- 缩小资源的保护人力和运维压力;
另外,心愿迁徙过程不要太长,不要影响市场推广等工作及业务翻新。
一、迁徙评估
通过可行性剖析,至多存在以下挑战:
- 客户的操作系统类型较多且版本老旧,其中大多是windows Server版本。
- 业务零碎无奈重建,起因是软件没有部署领导文档及源码,或找不到能够重新部署的人员。
- 数据迁徙量较大,其中数据库及备份数据较大。
- 客户应用的商业软件版本过老、未购买受权等起因,导致客户无奈或不想重建业务零碎,例如购买的第三方商业版全套系统软件,如SAP、ERP等。
基于以上起因,无奈应用现成的工具,因为迁徙工具对支流操作系统(CentOS、Ubuntu)反对较好,然而比拟老的零碎,因为新的硬件驱动不足厂商反对起因,导致无奈应用。
因而,只能通过镜像形式迁徙。
二、迁徙计划
基于上,整体迁徙思路,根本是2个方向:
- 公网传输
前置条件是:
- 公网带宽足够大,且不影响现有生产业务;
- 数据敏感性不高,容许公网传输;
- 数据量不太大,最好不超过10T级;
2、线下磁盘拷贝
对于数据量太大、公网带宽不够大、因平安因素不不便公网传输等,是公网在线传输做不到的,能够体现线下磁盘拷贝的劣势。
这里应用U闪盘(能够了解为aws的snowball、阿里的闪电立方)来做镜像的传输。次要有以下劣势:
- 数据安全性高、空间大:做了raid5的大容量空间,对于数据的安全性有保障。
- 传输速度快:接口反对USB3.0,速度最大反对500MB/s,存储介质读写速度在150MB/s左右。
- 可挂载物理服务器:托管区物理机与私有云区内网互通,且与私有云US3服务内网连通,如需将大量机房外的数据拷贝到机房内,可通过这种形式进行数据传输。
为了简化步骤,缩小两头态等待时间,且为了缩短单个迁徙过程工夫,采纳异步操作,缩小同步操作带来的等待时间。
在此例中,因为数据太大,为放慢迁徙速度,因而抉择了计划2,线下磁盘迁徙形式。
三、迁徙详情
迁徙流程图如下:
首先须要:
- 敞开Guest零碎的Windows组策略;
- 卸载Guest零碎的VMWARE-Tool工具;
- 敞开防病毒软件;
- 敞开虚拟机。
上述流程中需提前创立物理云服务器,通过U闪盘进行系统盘和数据盘镜像的传输,将存储好数据的U闪盘挂载到物理云服务器,同时在物理云主机内实现系统盘镜像的格局转换和驱动的注入过程。
在物理云主机内通过外部API,创立长期直达机器,并创立具备系统盘属性的云盘,把挂载的U闪盘当作本地盘,通过qemu-nbd,将U闪盘的系统盘和数据盘别离近程挂载到创立的中转折的两块云盘上(系统盘与数据盘)。
将长期创立的中转折绑定的两块云盘卸载下来,通过系统盘创立云主机(该过程须要外部API来实现),将另一块磁盘当作数据盘挂载,实现对云主机系统盘数据盘的迁徙。
3.1IDC中VMware环境筹备
1.vSphere客户端连贯vCenter服务器
装置vsphere客户端,近程连贯到IDC中VMware的治理节点vCenter,其将对应克隆出的镜像传输到U闪盘中保留。
2.导出镜像
对于关机离线的零碎,能够间接导出OVF或者VMDK格局的镜像;对于未能离线导出的零碎,可进行镜像克隆,克隆后的格局为VMDK。
3.2直达服务器环境筹备
①装置KVM虚拟化环境
装置CentOS 7操作系统,并确保反对开启硬件虚拟化性能;确保磁盘空间不少于迁徙数据量。装置KVM虚拟化,执行命令如下:
# yum install qemu-kvm qemu-key-tools libvirt qemu-img# yum install virt-*# modprobe kvm# modprobe kvm_intel# systemctl start libvirtd# systemctl enable libvirtd.service
②装置virt-v2v
思考到兼容云服务商的兼容性问题(例如IO及网络的减速,零碎的高内核版本),针对老旧的零碎,如:Windows 2000,Windows Server 2003,Windows Server 2008等,须要用virt-v2v转换。
对于IO减速,通过virt-v2v主动注入VirtIO驱动来解决,能够把虚拟机从一个虚构平台导入到另外一个虚构平台,应用 virt-v2v 命令将其它虚拟机监控程序(hypervisor)上运行的虚拟机进行转换,从而能够在 Red Hat Enterprise Virtualization 或由 libvirt 治理的 KVM 上运行。以后,virt-v2v 能够转换在 Xen、KVM 和 VMware ESX / ESX(i) 上运行的 Red Hat Enterprise Linux 虚拟机和 Windows 虚拟机。在须要的状况下,virt-v2v 会在被转换的虚拟机上启用准虚拟化(VirtIO)驱动。
virt-v2v将内部的虚拟化平台上的虚拟机转化到能够运行的KVM平台上。它能够读取运行在VMware、Xen、Hyper-V和其余虚拟机管理程序上的Windows和Linux的虚拟机,并将其转换为KVM的libvirt,OpenStack,oVirt,红帽虚拟化(RHV)等几种形式。
# yum install virt-v2v
③宿主机上安装VirtIO驱动
Virtio驱动程序是KVM虚拟机的半虚拟化设施驱动程序,半虚拟化驱动程序可进步机器性能,缩小I / O提早并将吞吐量进步到靠近裸机程度。装置Windows的VirtIO驱动如下:
# yum install libguestfs-winsupport libguestfs-tools# wget https://fedorapeople.org/groups/virt/VirtIO-win/VirtIO-win.repo-O /etc/yum.repos.d/VirtIO-win.repo# yum install VirtIO-win
④装置ntfs-3g,用于挂载U闪盘
NTFS-3G反对在Linux, FreeBSD, Mac OS X, NetBSD, Haiku等操作系统下读写NTFS格局的分区。除了齐全的文件属主和拜访权限,它反对所有合乎POSIX规范的磁盘操作。目标是为那些用户须要与NTFS牢靠互通的硬件平台和操作系统提供可信赖的、功能丰富的高性能计划。
# yum install epel-release# yum install ntfs*
⑤编译装置NDB
装置NBD可被用来进行近程存储和备份,NBD的驱动程序在本地客户端模仿了一个块设施,比方一个磁盘或者是一块磁盘分区,但理论提供物理反对的却是通过网络连接的近程服务器。
3.3镜像格局转换与VirtIO驱动注入
转换磁盘文件并注入VirtIO驱动程序,执行命令如下:
# export LIBGUESTFS_BACKEND=direct# virt-v2v -i vmx server2003.vmx -of qcow2 -o qemu -os ./// 注:执行命令virt-v2v -i vmx “vmx文件名” –of qcow2 –o qemu –os “转换后磁盘文件寄存门路”,默认是把系统盘与数据盘都进行转换,为了节俭转换工夫,能够批改vmx文件只进行系统盘的转换。
3.4通过API创立直达系统盘及数据盘
通过API创立新的云盘,作为用来开启云主机的系统盘,以及用来导入数据的数据盘(_其中零碎属性的磁盘为外部API_)。新创建的两块云盘均为长期中转盘,用来存储导入镜像的零碎以及数据。
具体的API可参考:https://github.com/ucloud
3.5近程挂载云盘与磁盘拷贝
为缩小迁徙耗时的流程,将U闪盘的系统盘和数据盘以网络的模式间接挂载到新创建的VM上,而后将U闪盘内的数据与长期中转折创立的云盘实现内网的磁盘数据拷贝。鉴于磁盘IO和网络带宽的限度,上述计划可省去公网传输和对象存储存储镜像的直达过程。
具体过程如下:应用qemu-nbd的近程磁盘挂载,将U闪盘的数据盘,间接挂载到云盘上。而后将云盘卸载,挂载到对应的客户机器下来。
①在物理云服务器上将U闪盘的磁盘镜像挂载到nbd的特定端口
# qemu-nbd -r -t -v -f qcow2 -p 5000 web-sdc.qcow2// 注:5000为端口号,web-sdc为数据盘镜像。
②在直达机上安装qemu-img,将近程的数据盘镜像挂载到新创建的云硬盘。
# qemu-img convert nbd://10.23.xx.xx:5000 /dev/vdc// 注:10.23.xx.xx为物理服务器内网IP地址,/dev/vdc为新创建的云盘。
3.6创立云主机并挂载数据盘
对于曾经同步过数据的系统盘与数据盘,通过API对系统盘进行云主机的创立;对于云数据盘,须要先将中转折上的云盘进行卸载,而后挂载到须要开启的指标云主机上,从而达到云主机的创立与数据盘的挂载性能。UCloud有自动化的脚本及程序来实现以上过程。
四、教训
通过本次迁徙,确认能够反对和限度因素如下,供参考。
4.1反对
对于VMware,此迁徙反对以下环境:
- 反对vSphere、ESXI。
- 支持系统盘和数据盘迁徙。
- 反对操作系统RHEL 3-7,Centos 3-7,Ubuntu 10.04,12.04,14.04,16.04以上,Windows XP-Windows 10/ Windows Server2016。
4.2限度
- VMWARE Workstation创立的主机迁徙存在失败危险。
- Windows 7 和Windows Server 2008 R2须要开启反对SHA-2证书。
- 须要敞开操作系统迁徙,不反对在线热迁。
- 须要卸载防病毒软件。
- 须要卸载虚拟化平台工具。
本文来自UCloud华南架构核心,如有相干需要或业务征询,欢送私信分割或评论区留言!