SKG 渠道中台借助 SAE + 大禹打造云原生 DevOPS,提效 60%
admin
2023-08-23 07:46:13
0

项目背景

未来穿戴健康科技股份有限公司(SKG)是一家专注为个人与家庭提供智能可穿戴健康产品的高新技术企业,专业从事 SKG 品牌可穿戴健康产品和便携式健康产品的研发、设计、生产及销售。

随着市场需求的迅速变化,SKG 的 IT 系统也逐渐面临着库存不准确、线上线下渠道无法协同、部署架构不灵活、IT 响应速度过慢等问题,为了能适配销售拓展、提高效率、加强规模化运营,SKG 同阿里云达成战略合作,打造基于线上线下打通,并覆盖全渠道应用场景的渠道中台项目。

本次渠道中台建设面向 SKG 线上、线下、礼品等渠道的营销管理,打通经销商、导购、后端 SAP 多端业务数据,同时整合面向C端会员数据和渠道零售终端销售数据,以全新的互联网架构云化系统能力支撑业务快速发展。

基于底层渠道中台构建的营销运营管理平台、经销商门户、导购终端小程序,需要有多端触达能力,同时满足不同端的个性化业务诉求和访问特点,要求中台有灵活的扩展定制能力、以及适配不同渠道流量需求的弹性能力。

现状问题&分析:

在渠道中台建设之前、SKG 主要是租用 IDC 机房部署应用,也有业务跑在云上,整体是 IDC 机房+ECS 自建应用配套RDS等云产品的混合云架构。整套系统架构需要手工维护的地方比较多,比如:应用发布、开源产品搭建接入、云服务集成、集群维护等基本都是单点管理、手工操作。老系统交付过程中和转维后痛点有:

敏捷协同、DevOps等的成熟度低:过去项目迭代缺少全生命周期管控,对问题和任务进度的跟进主要靠线下沟通、缺少在线化追踪工具;DevOps 流程缺少自动化的工具支撑,如业务应用的发布上线,基本都是人肉发布,发布耗时长、流程低效、且容易产生线上安全故障。

应用上线部署繁琐: 上线需进行资源评估、应用服务器购买、安装配套软件初始化等操作流程较长;此外还需要搭配集群监控、发布&调度脚本服务治理、配置管理、日志备份等能力,都需要单独部署配套组件或系统。

自行实施容器化存在上手成本:开发对 K8s 等容器管理平台底层细节不熟悉、相对比较黑盒,出现问题排查进度较慢。

弹性伸缩不方便:业务侧有一定的峰谷,而在低谷期资源利用率很低;扩容需要重新走一套上线流程、且扩容后不容易下机器; 后续中台上线之后、预计会拆出更多的微服务应用、但这些应用因承接的业务场景不同流量不均匀,需要有更灵活的弹性策略。

后期运维成本高:不单需要维护应用本身、还需要维护整套基础设施及对应的配套系统;需要投入较多的额外人力

技术选型&对比:

基于以上痛点以及其他中台项目的实施经验,项目组在渠道中台项目前期做技术选型、架构设计时,一开始就否决了在 ECS 或 K8s 上直接部署应用的方案,希望有一个省事的“容器托管平台”。尽量减少运维成本、屏蔽底层细节,对开发上手友好、且能较大化提高部署发布效率,具体来说,主要希望达到以下几个目标:

  1. 希望有统一的管理平台进行在线化交付,全生命周期管控,以此来提高项目实施效率,该平台需具备敏捷协同、DevOps、质量保障等能力,尤其是具备CI/CD流水线自动化部署至选型的容器托管平台的能力,用于保障项目交付质量、提升项目交付效率、同时降低交付成本。
  2. 项目采用基于Spring Cloud的微服务架构、需要容器平台能无缝兼容
  3. 希望平台能屏蔽底层ECS和K8s的运维工作,开发大部分工作可以在控制台完成,不需要投太多精力在运维上面,可以专注在业务功能开发上
  4. 有一定的弹性伸缩能力、扩缩容比较方便、能够定制性的做一些资源优化
  5. 微服务应用的配套设施要完备:如灰度发布、流量控制、远程调式、监控等等,能够方便的集成

基于以上的一些诉求,我们推荐了基于 SAE(Serverless 应用引擎)的无服务器化容器平台方案、并做了一个两者的对比(如下表格):


ECS或K8s直接部署

使用SAE后

应用服务器购置

单独选配ECS、需要一堆规格选择、网络&操作系统选择&配置、监控组件安装等

无需单独购买ECS等IaaS层设施;直接选定CPU&内存规格及一些简单的网络配置即可

应用创建&部署

需做集群规划、应用初始化、编写应用部署脚本、灰度发布脚本等工作;镜像需要登录服务器直接操作

打包镜像或上传JAR包WAR包可直接在控制台部署、集成灰度发布能力;无需编写脚本或登录服务器

弹性伸缩

服务器购置、创建应用&部署等流程需要重新走一遍;机器加入集群或者剔除集群都需要运维操作;效率不高,无法应对突发流量的弹性扩容需求,只能提前准备;资源利用率不高

可实现快速弹性伸缩能力、扩缩容可在控制台直接操作生效;同时支持按照多维度策略的自动扩缩容能力、能够应对突发流量的弹性需求;扩缩容时可随意调整所需的CPU&内容资源,实现精细化控制、资源利用率高

无损上下线

需要额外集成、自己写相关脚本

控制台可集成

限流降级

需自己搭建开源工具或购买云服务自行接入

可通过集成AHAS在控制台直接操作、但需额外购买AHAS服务

监控

自行搭建监控组件&插件、单独运维

已集成基础监控和应用监控能力

配置中心管理

基于开源自建或购买云服务自行做集成

已集成Nacos注册中心、同时做了一层封装方便使用

集群后期运维

使用ECS或K8s部署、需要专人做集群运维、如操作系统升级、容器管理、网络维护、服务器更换等一系列操作

基本免运维、无需专门配运维可由开发在控制台直接操作

相关内容