基石Apollo国际化整合及配置上线规范治理

背景

随着公司站点的增多和国际化业务的发展,Apollo配置平台也呈现出多国家、多环境部署、各环境配置孤立操作、配置上下线无规范流程的情况。基于当前的情况,主要的痛点问题如下:

国际化apollo未与主营apollo统一, 导致国际化Apollo生产配置可以随意变更,风险极大;用户在使用过程中需要同时打开67个平台进行操作,效率极低。

由于缺乏配置上线流程规范,用户在各环境之间随意增加和删除配置,导致各环境配置差异大;研发、测试人员协作过程中极易出现漏配置,协作成本高;配置不经过测试环境直接上生产,导致无法测试回归,极易出现生产事故。

规范治理

国际化apollo接入基石统一管理

针对当前国际、主营使用规范不统一,操作平台多,环境多,效率低,风险大的问题。主要的解决思路是将国际化apollo接入基石进行统一管理,如何进行统一管理,思路如下:

数据现状分析

国家及环境数据映射

业务 / 环境测试环境预发环境生产环境主营是是是印尼是

印尼MF

菲律宾是

主营测试站点和国际化测试站点使用同一套测试环境数据

主营预发为单独部署的服务;国际化中使用生产环境的UAT集群作为预发环境,无独立预发服务

主营和国际化的生产服务全部为单独的一套部署

设计要点:

测试环境站点数据,通过各国家域名后缀进行区分和筛选

设计(国家、环境)与网关环境的映射关系,网关环境对应真实的Apollo实例

在前端的公共请求中根据(国家 + 环境 -> 【网关环境】进行接口地址拼接后,通过生产内网网关平台进行数据转发到对应的apollo部署服务

对功能进行整体梳理后,改造点主要分为基本配置功能改造,对比同步功能改造,审批功能改造

后续有新国家接入时,能通过自动化配置的方式接入基石

国家、环境 Apollo实例的对应映射关系如下:

国际化整体改造架构

基本功能架构改造

获取单一环境的数据功能通过网关映射转发的方式实现

对比同步功能改造

对比功能中涉及到同时获取两个环境的数据做对比,加入到基石后端做调度

审批功能改造

审批后的回调需要调到不同国家的apollo实例,通过拼接bpm的回调地址来进行分发

整体实现效果展示

系统层面规范配置上下线

针对目前Apollo缺乏上线规范,协作成本高,上线漏配置,配置不经过测试直接上生产,各环境配置差异大的问题。我们决定与业务中台团队合作,按目前在中台推行的配置上下线规范,系统层面落地来提升配置上线效率和及规范性。

业务中台推行的配置上线规范如下
设计要点

配置上线、下线流程以工单的形式来保证和约束

关闭UAT、预发、生产配置添加和删除入口,只能通过工单来进行上下线

将配置同步和发布能力结合到工单中,各环境通过同步和发布实现完整的配置上、下线流程,提升效率

动态检测配置的存在(fat\uat\pre\pro),根据存在的配置灵活编排工单中的上、下线流程

配合发布卡点,校验工单上线状态,已经增加工单到期提醒,防止工单漏上线

实现架构
实现效果

配置上线申请页面:用户在测试环境增加配置后,即可发起配置上线工单,申请页面具体动态检测配置能力

配置上线同步页面:同步页面能对比环境的配置差异,用户灵活选择需要同步的key

配置上线发布页面:发布页面能对key进行审批、发布上线,编排进流程中,提升用户上线效率

总结

通过对Apollo的国际化治理及配置上下线规范的推广和落地,基石平台已完成对于主营和国际化的apollo配置统一管理,并且已经具备自动化快速完成新国家的接入和适配能力;各站apollo配置上下线规范已覆盖所有站点,从目前的数据和用户反馈中,极大提升了配置上下线的效率及规范性。

  • 22
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值