标签:driver mode 完全 第三方 上传 gen export 流程 公司邮箱
豆子最近在忙着做服务器的迁移,大概有20多个站点的服务器都需要迁移到AWS上去。说说自己的心得和一点浅见。几年前我最开始使用的传统的迁移方式是VM Import/Export, 这个简单的说就是上传虚拟机文件到S3 bucket上,然后通过Import的命令转换成AMI镜像,最后通过镜像生成EC2实例。这个确实工作,就是宕机时间太长了,没有一天的时间别想弄完;
后来呢,很多第三方的备份软件都支持还原到EC2上面,豆子用过cloudsberry和VEEAM, 这个就稍微轻松一下了,当然宕机时间还是取决于还原的速度有多快;
再后来呢,AWS又推出了 Server Migration Service。这个服务可以把整个虚拟机做过快照,然后一股脑同步到AWS上去。通过计划任务,可以每隔几个小时就同步一次。第一次同步类似full backup,可能要1-2天才能完成,后面的类似 incremental backup,仅仅同步修改的部分,可能几个小时就行了。这样子一来,一个服务器迁移的宕机时间可以缩短到2-3个小时就能完成。
豆子一直以来都是习惯使用AWS SMS的服务。 这两天,因为一个Hyper-V宿主机遭受了病毒***,快照的功能有些问题,导致AWS SMS 服务同步出现了异常。豆子和AWS的技术客服在电话上闲扯了2个小时,客服建议我使用一个新的解决方案 CloudEdure。CloudEdure是 AWS旗下的公司,提供免费的服务器迁移服务。 CloudEdure和 SMS 不同之处在于,他需要在VM上安装agent,这个agent是一个轻量级的服务,他会持续不断地把数据同步到AWS上,这样一来,同步服务取决于虚拟机上Agent,而不是宿主机的快照功能了。和SMS比起来,CloudEdure的同步几乎是实时的,这样一个迁移的宕机时间完全可以缩短到30-60 分钟之内。
下面看看实际操作情况如何:
简单的测试了一下,配置很容易,登录 CloudEdure的官网,用公司邮箱注册,创建一个新的项目,就可以开始操作了。比如说同步到哪里,默认的实例大小等等
在Hyper-V的虚拟机里面下载安装对应的agent,值得一提的是,默认情况下,Hyper-V会配置secure boot,虚拟机操作系统本身也会对未知的驱动签名进行验证。这两个东西必须关掉!
关掉 Secure Boot
然后进入VM,执行下面命令 ( 也可以开机的时候按住 Fn+F8,选择 disable driver signature enforcement )
bcdedit /set testsigning on
然后服务器就自动开始同步了!
第一次同步完成之后,他会自动变成 Continuous Data Replication。 作为一个测试,我直接拷贝了2G的数据到我的测试服务器上,基本上1分钟之后,Agent代理就检查到新的更新,开始同步新的内容,几分钟之后,新的同步就完成。对比起 SMS 同步至少滞后1个小时, CloudEdure的数据同步更新几乎是实时更新。每次更新他都会在EC2上创建一个还原点(快照)
更新完成了, 在我们最终迁移之前,我们还需要执行一次Test Mode, 他会从最新的EC2快照上根据我们的Blueprint设置 生成对应的EC2实例,自动检测无误之后会自动删除。 Test 成功之后,我们可以执行最后的cutover。cutover的流程基本和Test Mode类似。
我们可以在Job Progress 里面查看迁移的日志,每个对应的操作在AWS Console也可以实时地看见变化
在上面的测试中,我失败了一次,这是因为我随手选择了一个C1.medium的实例类型,但是这个类型在我所在的AZ里面居然不支持!导致迁移失败,浪费了20分钟。因此选择的实例一定要仔细小心。
标签:driver mode 完全 第三方 上传 gen export 流程 公司邮箱
原文地址:https://blog.51cto.com/beanxyz/2559873