基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

【MVP时间】线上峰会,一键收藏

《基于阿里云原生服务构建迁移即服务》精彩直播

查看上篇文章,点击这里。

四、利用阿里云原生服务构建迁移平台

随着业务发展,向阿里云迁移的需求也越来越多,如果按照原来的方式,那么用户需要先进行下载、部署,再去迁移,造成了很多时间的浪费,也不够敏捷。这时候,也对我们的工具提出了更高要求,需要演进成为SaaS版本。阿里云的原生服务帮助我们进行了快速上云,并且在不增加人员的情况下,完成了运维和运营的需求。那么,我们是如何一步步利用阿里云的原生服务来构建我们的迁移平台(SaaS)呢?

(一)需求变化

从单机版本到SaaS版本,在部署方式等需求上均发生了变化,具体如下图所示。

基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

(二)需要改造的内容

从单机版本演进到SaaS版本,在各方面需要改造的内容主要包括如下:

  • 增加模块:对原有用户模块进行改造,抽象成多租户管理和运营管理两个新模块;
  • 单向通讯:源端在和控制端进行通讯时,采用的是双向通讯,需要修改为单向通讯;
  • UE提升:在云平台代理服务部署上需要让用户无感知;
  • CI流程:去RPM化,能够支持单机版本,SaaS版本的打包、部署;
  • 部署和运维:平台具备高可靠、扩展性、容易运维;
  • 运营需求:在线客服、机器人、工单系统等运营功能。

(三)架构变化

从单机版本到SaaS,架构的变化如下图所示。整个部署方式全面迁移到了K8s上,既可以保证模块的可靠,也保证了模块的可扩展性。

基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

(四)阿里云部署架构

下图是迁移平台在阿里云的部署架构,主要使用的是阿里云的容器服务,还使用到了镜像仓库、日志服务等等。除此之外,还用到了阿里云的云客服功能来帮助回答一些常见的问题,降低了运维的成本。

基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

(五)如何选择阿里云Kubernetes?

在选择K8s服务的时候,我们对比了规格和价格两个维度,综合考虑选择了托管版本,性价比最高,参考下图所示例子。对于费用,建议用户可以先去尝试按量付费的方式,等业务稳定之后再转为包年包月的方式。

基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

(六)使用函数计算进行License自动审批

在SaaS版本中,函数计算主要用于License的发放、审批,我们利用了APP Trigger做了一个API接口,服务端直接进行调用即可。然而在单机版本中没有网络,很难做到在线的激活,所以我们做了一个二维码扫描的小程序,用户填写信息提交之后后台会接收到用户提交的消息,钉钉进行审批之后会进行License的发放,具体流程如下图所示。

基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

(七)持久化集成

SaaS版本进行了持久化集成,其具体流程如下图所示。

基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

(八)利用云原生服务进行运维管理

如下图所示,我们现在利用阿里云原生服务进行运维和运营的管理,大大降低了运维和运营的时间成本、人力成本。

基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

(九)使用Zookeeper解决分布式任务

如下图所示,在SaaS版本中,我们用Zookeeper解决了分布式任务的问题。思路一方式对现有架构的改动比较大,另外就是当任务量极其大的时候也会出现瓶颈,而思路二引入Zookeeper帮助我们解决了并发性的问题。

基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

(十)数据安全性

数据安全是用户非常关心的一点。如下图所示,我们的SaaS端只会控制用户控制流的信息,用户的数据流是直接从源端到用户租户下的数据接收代理服务器上,这样子用户的数据不会经过我们的SaaS端,保障了用户的数据安全。

基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

五、未来展望

可以预见的是云原生的服务对未来的IT行业格局会有非常大的影响。对于我们自身,未来我们的目标是做迁移和容灾的SaaS工具集。如下图所示,我们希望通过对自身模块的不断扩充,能够更好的帮助用户完成迁移和容灾的工作,为业务赋能。

基于阿里云原生服务构建迁移即服务(下)——阿里云 MVP孙琦

关键词:阿里云、云原生服务、迁移服务、SaaS

《基于阿里云原生服务构建迁移即服务》精彩直播

查看上篇文章,点击这里。

上一篇:企业级数据库最佳选择!阿里云云数据库SQL Server 2019新版本重磅发布 !


下一篇:Elasticsearch7.X 安装(CentOS7)