为什么要迁移?
由于阿里云后期比腾讯云贵,而阿里云的成本又高,每年都要消耗几百万。于是换成腾讯云成本降低了百分之80.
于是为了钱,开始了数据迁移,我在工作的4年里,一共参与了两次数据迁移,都是云服务器的数据迁移。这里对迁移做一些总结。第一次迁移主要是数据迁移,只是大数据的内容,大概花了1个月。第二次涉及到了所有服务的代码迁移,由于存在部分toB,所以业务较多,大概有700多个,有的代码,人都不在了,导致迁移延期,迁移总共花了半年。后续全部将服务做成镜像,配上启动的参数ip,用K8S管理,以后移植非常快。
主要是缩减成本,避免高峰资源问题,采用动态扩展,这样就不用买很贵的服务器,而只在特定时刻的计算量猛增时,进行动态服务器性能扩容。
对于不常用的资源,分步部署,除掉僵尸进程和挂了的项目,将常用的核心业务需求量大的业务,部署在性能高,可靠的节点上。将使用的非常少的项目,或者备份的资源业务,不使用高可用,不用多台节点,避免资源浪费。总结就是,应业务而进行资源规划,缩减成本。
建议:最好将服务全部打成镜像,并且将所有的ip配置,引用的数据库配置,使用外部,docker.yml进行全局控制。业务采用容器化,便于迁移,通过k8s统一管理,或者将k8s升级为rancher进行管理。
迁移方案
迁移分为两种,数据迁移和业务迁移。
迁移的限制,保证客户的业务始终是正常的,不影响线上服务。
业务迁移
1、首要解决的,将服务由原来的阿里,转移到腾讯
(后端配置完成后,并且测试,然后由前端在晚上修改,将接口地址改为迁移后的平台)
2、支持数据请求,将腾讯的后端接口,其实请求的是阿里的数据库
(此时,数据库没有迁移,腾讯的后端配置走的还是阿里的数据库)
数据迁移
3、创建服务,数据迁移的同步脚本或者任务,实时导入阿里的数据到腾讯
4、数据迁移完成后,配置数据库为腾讯
后续docker打包统一,使用模板文件,便于迁移
容器迁移方案(推荐)
要求,你的服务全都是容器镜像
如MYSQL
1.容器化部署
2.将mysql数据目录copy到服务端目录下 /var/lib/mysql
3.docker run时,使用-v指向mysql
先迁移数据
在迁移服务文章来源:https://www.toymoban.com/news/detail-787651.html
只用copy指定的配置文件(或数据目录),然后docker通过-v进行绑定,就能完成服务和数据的迁移文章来源地址https://www.toymoban.com/news/detail-787651.html
到了这里,关于数据迁移方案-云迁移的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!