基于行业业务上云的研究探索
日期:2023年11月08日 阅:35
一、研究背景
近年来,公有云技术逐渐成熟,越来越多的应用已从私有机房,搬迁到云环境进行部署。同时公有云提供商也针对不同的应用环境,提供了相关的迁移技术和对应方案。本文基于行业业务应用自身的特点,针对私有环境部署应用上云的技术路线,进行包括厂商选择、业务上云、迁移研究、部署研究、迁移过程和研究总结等几方面的探讨。
二、厂商选择
目前云厂商有阿里云、华为云、腾讯云、天翼云、百度智能云、移动云、金山云、京东云、联通云、青云和七牛云等。各家云厂商都提供了计算、容器、存储、安全、中间件、数据库和大数据计算相关的云计算资源可供选择。随着大语言模型应用的兴起,对人工智能与机器学习相关的计算环境的需求也逐渐增强。根据上云的实际需求,以及对云资源的评估,首先要进行云厂商的选择。
云厂商选择可以根据市场排名、产品优惠或者客户选择等多种方式确定,实际执行过程中还会有其他各种因素。这里不做详细研究,把研究重点放在软件迁移部分。
三、业务上云
业务依赖于具体的应用开展,应用依赖于底层的数据和运行环境。所以业务上云,从底而上就涉及运行环境上云、数据上云和应用上云。
1、运行环境
从本地机房物理设备迁移到云环境云服务器。实际操作过程中,物理设备会留给其他本地系统利旧。迁移的仅是物理设备上的操作系统。为上层应用系统、中间件和数据库提供运行环境。
2、数据迁移
从本地机房运行环境迁移到云环境。涉及到基于文件系统存储的文件,基于数据库存储的结构化数据,以及其他类型的数据存储。
3、应用迁移
从本地机房运行环境迁移到云环境。涉及到应用相关的后台服务接口以及前台页面。
4、业务迁移
在环境、数据、应用迁移到云环境验证,经过验证测试可以投入使用后,通知业务方将日常工作或业务迁移到新环境。
四、迁移研究
对业务上云进行细化研究,结合云厂商提供的服务,细化迁移方案研究:
建议方案整体设计为:基于云服务器ECS搭建的操作系统环境,在云上复现本地应用环境运行堆栈。暂不考虑云厂商提供的云数据库、容器环境、缓存服务以及对象存储。
1、计算存储
对于计算存储环境的迁移,可以考虑的方案有很多,比如:基于物理机迁移的P2V迁移方案(P2V即物理到虚机的迁移),基于虚拟机迁移的V2V迁移方案(V2V即虚机到虚机的迁移),基于ECS新建(ECS即云服务器)的方案等。本次研究选择ECS新建,申请与本地环境配置一致的ECS云服务器,在云服务器之上搭建应用、数据环境。
2、操作系统
云厂商提供多种操作系统,在选购ECS云服务器时,建议操作系统尽可能选择与本地机房环境一致的版本,或者更高兼容版本。基于选定版本的操作系统,部署应用运行的容器环境。
3、数据库和中间件
云厂商提供了各种增强型的云数据库、数据仓库、对象存储、文件存储以及其他类型的存储。研究认为为了迁移简化,暂不使用云厂商的产品。基于本地机房原有的容器环境,直接在ECS容器环境中,搭建基于容器的数据库和中间件环境。
4、应用软件
应用软件不针对云环境进行改造,直接平移到云服务器ECS容器环境中,基于云服务器对外提供服务。需要使用云厂商的公网地址服务以及公网流量服务。
五、部署研究
以目前微服务架构为例,基于容器环境的微服务部署架构的迁移,会涉及如下图所示的部署架构的迁移:
1、操作系统
微服务架构中所有服务的部署,均基于CentOS操作系统之上的容器环境。基于购买的ECS云服务器自行部署Docker环境。
2、自动部署
从负载均衡(Nginx)到微服务网关(Gateway)以及应用接口(API),从缓存(Cache)到文件存储(FS)以及数据库(DB)的部署,都基于自动化部署软件Ansible及其Playbook相关辅助脚本,这样可以复用本地环境的自动化部署脚本。
六、迁移过程
最后研究整体的迁移过程。如下图所示:
1、前期准备
(1)目标ECS容器服务器部署。
(2)堡垒机环境准备。
(3)第三方工具准备(压缩工具、SSH客户端、网盘客户端等)。
2、操作步骤
如上图,黑色虚线左侧是生产环境的CentOS服务器和基于Windows系统的堡垒机,黑色虚线右侧是某云环境部署的ECS服务器和基于Windows系统的堡垒机。操作主要基于两个环境的Windows堡垒机进行。
(1)堡垒机一的操作
①通过SSH客户端工具连接到CentOS系统,关闭应用系统、数据库、缓存、中间件等容器服务。
②对数据库容器挂载的数据目录进行压缩。
③将压缩后的数据目录包传输到堡垒机一。
④将数据目录包传输到网盘。
⑤等待数据包上传完毕。
(2)堡垒机二的操作
⑥从网盘下载数据包。
⑦将数据包传输到ECS服务器。
⑧解压数据包到容器挂载目录。
⑨校验挂载目录文件内容。
⑩使用自动化部署脚本部署应用环境。
3、后续操作
使用数据库客户端工具,连接到对应数据库,查看数据库中数据表的数据。
进行业务切换,验证数据完整性。
七、研究总结
1、如采用上述迁移方法,本次迁移特点研究总结如下:
(1)不依赖于具体云厂商的系统工具。
(2)迁移过程不产生额外的计费(网络流量除外)。
(3)源端和目标端环境高度保持一致(配置文件除外)。
(4)实现数据库级别的整体迁移。
(5)自主可控,可以自动化部署。
(6)不需要目标端直接访问源端。
2、针对行业业务上云,未来研究方向
针对行业业务上云未来的研究方向,建议基于上图下半部分云厂商提供的服务,对业务系统进行适配改造,深度集成和使用云厂商提供的弹性计算方案、数据存储方案、高性能网络方案和数据安全方案等,进行可行性探讨研究。
来源:建投数据科技股份有限公司